freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

華南理工大學(xué)電梯設(shè)計(jì)大賽論文集匯編-文庫(kù)吧

2025-04-04 03:08 本頁(yè)面


【正文】 該芯片音質(zhì)好,電壓范圍寬,應(yīng)用靈活。要想使電梯系統(tǒng)的各個(gè)部分聯(lián)系起來(lái),并協(xié)調(diào)穩(wěn)定地工作,就必須使用快速可靠的通信方式。本系統(tǒng)采用兩線串行接口TWI實(shí)現(xiàn)各單片機(jī)之間的通信,采用AVR單片機(jī)的通用同步和異步串行接收器和轉(zhuǎn)發(fā)器(USART)實(shí)現(xiàn)測(cè)重模塊與后臺(tái)監(jiān)控單片機(jī)的數(shù)據(jù)通信。TWI通信協(xié)議支持多主機(jī)仲裁,只需將個(gè)單片機(jī)的PC0和PC1口相連,硬件結(jié)構(gòu)十分簡(jiǎn)單。通用同步和異步串行接收器和轉(zhuǎn)發(fā)器(USART) 是一個(gè)高度靈活的串行通訊設(shè)備,其獨(dú)立的串行接收和發(fā)送寄存器支持全雙工操作。 我們采用兩個(gè)二極管的或方式連接。 系統(tǒng)采用C語(yǔ)言編程實(shí)現(xiàn)各項(xiàng)功能。C語(yǔ)言本身帶有各種函數(shù)庫(kù),算術(shù)運(yùn)算能力較強(qiáng),而本系統(tǒng)的軟件設(shè)計(jì)中運(yùn)算有較多且比較復(fù)雜,利用C語(yǔ)言編程的優(yōu)勢(shì)完全可以體現(xiàn)出來(lái)。程序是在Windows XP環(huán)境下采用ICCAVR軟件編寫(xiě),結(jié)合AVR Studio4以及Proteus軟件進(jìn)行仿真測(cè)試。電梯響應(yīng)呼叫的順序應(yīng)遵循:同向優(yōu)先,其次就近。本程序遵循上述原則,將上行和下行方向須到達(dá)的層數(shù)存儲(chǔ)在up和down兩個(gè)uchar型變量的前六位,通過(guò)對(duì)這兩個(gè)變量的掃描獲知電梯需要到達(dá)的下一目標(biāo)層。例如,第五層有向上的呼叫請(qǐng)求,則將up的第二位置0,當(dāng)在上行過(guò)程中發(fā)現(xiàn)up的第5位為0,則控制電梯移動(dòng)到五層,并將up第5位置1。程序運(yùn)行時(shí),通過(guò)數(shù)碼管顯示當(dāng)前的層數(shù),進(jìn)行對(duì)行列式鍵盤(pán)的掃描,獲取按鍵信息并按照上述方法計(jì)算目標(biāo)層。運(yùn)行過(guò)程中,會(huì)即時(shí)地將目前電梯的位置寫(xiě)入單片機(jī)的EEPROM中,若出現(xiàn)短時(shí)掉電,則可從EEPROM中讀取當(dāng)前層數(shù)。流程圖如下:主函數(shù)流程初始化設(shè)正向?yàn)槌跏挤较蜻M(jìn)入按鍵處理階段得到目標(biāo)樓層有鍵按下?檢測(cè)按鍵主機(jī)調(diào)用驅(qū)動(dòng)板控制電機(jī)到達(dá)目的地 數(shù)碼管顯示當(dāng)前層各部分自動(dòng)復(fù)位開(kāi)始計(jì)算下一目標(biāo)層子函數(shù)為本算法的核心,(原創(chuàng)版)流程圖如下:I=a(當(dāng)前層數(shù)功能鍵YI==aUp[i]為當(dāng)前目標(biāo)Up[i]?Dowm[i]為當(dāng)前目標(biāo)4. 系統(tǒng)測(cè)試及實(shí)現(xiàn)功能經(jīng)過(guò)測(cè)試,本系統(tǒng)很好地完成了題目中所涉及到的基本功能及擴(kuò)展功能,具體如下:基本功能:1. 當(dāng)某層有呼叫并有呼叫信號(hào)顯示時(shí),轎廂模型作相應(yīng)的運(yùn)動(dòng),并準(zhǔn)確平層,平層的位置誤差163。4mm。2. 平均每層運(yùn)行時(shí)間不超過(guò)4秒,平層結(jié)束時(shí)給出提示信號(hào)。3. 當(dāng)有多層呼叫時(shí),轎廂模型將按說(shuō)明中的電梯模型運(yùn)行規(guī)則作相應(yīng)的運(yùn)動(dòng),并依次在呼叫的樓層停留3~8秒;4. 增設(shè)模擬轎廂內(nèi)表示乘客欲到達(dá)層數(shù)的按鈕,轎廂模型將按照電梯模型運(yùn)行規(guī)則作相應(yīng)的運(yùn)動(dòng)5. 短時(shí)停電操作。轎廂運(yùn)行時(shí),將模型停電10秒后再重新送電,電梯應(yīng)運(yùn)行到最近樓層(期間不接收所有樓層呼叫),到達(dá)平層位置后,重新接收樓層呼叫并可正常運(yùn)行。6. 能顯示轎廂模型當(dāng)前到達(dá)的樓層編號(hào)。擴(kuò)展功能:1. 增設(shè)可以延長(zhǎng)和縮短轎廂樓層停留時(shí)間的按鈕(用于延長(zhǎng)或縮短開(kāi)門(mén)時(shí)間),同時(shí)還可以通過(guò)后臺(tái)修改等待時(shí)間。2. 停電時(shí)緊急操作。當(dāng)市電電網(wǎng)停電時(shí),用備用電源將電梯運(yùn)行到最近樓層待機(jī)并開(kāi)門(mén)。當(dāng)市電電網(wǎng)重新送電后,切除備用電源,使用市電,電梯恢復(fù)正常運(yùn)行。3. 播放語(yǔ)音提示,報(bào)告樓層、電梯運(yùn)行方向、問(wèn)好等。4. 在電梯運(yùn)行及待機(jī)過(guò)程中,采取其他措施起到有效的節(jié)能作用。本系統(tǒng)電梯在靜止待機(jī)達(dá)一定時(shí)間后,會(huì)自動(dòng)關(guān)閉轎廂內(nèi)的照明燈具,以達(dá)到節(jié)能的效果,若有新的請(qǐng)求則照明燈自動(dòng)重啟。5. 采用適當(dāng)?shù)娜藱C(jī)界面,使界面與用戶的交互性良好,操作簡(jiǎn)易,運(yùn)行迅速,適合各類(lèi)人群。本系統(tǒng)加入語(yǔ)音命令,使得操作方便快捷,適合多種人群。經(jīng)過(guò)這將近一個(gè)月的比賽,我們確實(shí)學(xué)到了不少東西,有了新的提升,特小結(jié)如下:(1) 進(jìn)一步鞏固了使用Visual C++進(jìn)行邏輯仿真的方法,使得整個(gè)硬件調(diào)試過(guò)程得以順利完成,同時(shí),我們也注意到了Visual C++與AVR的編譯器還是有些區(qū)別,一些原來(lái)在Visual C++上運(yùn)行正確的卻在硬件調(diào)試中出現(xiàn)了錯(cuò)誤,這提醒我們?cè)谶M(jìn)行設(shè)計(jì)的時(shí)候應(yīng)做到嚴(yán)謹(jǐn)問(wèn)題、考慮的全面性、注意更多的細(xì)節(jié),以避免不必要的錯(cuò)誤。(2) 我們小組成員彼此之間建立了深厚的友誼,團(tuán)隊(duì)意思有所增強(qiáng)。在這不到一個(gè)月的時(shí)間,我們?nèi)煌瑢W(xué)較好地分工,除了獨(dú)立完成了自己負(fù)責(zé)的部分,還共同將軟件、模型、硬件等模塊的整合,同時(shí),對(duì)于不熟悉的模塊一起討論、比較方案及調(diào)試,形成了較好的默契,使得電梯模型得以順利完成。(3) 其實(shí)比賽工程最艱難的不是技術(shù)方面的問(wèn)題,而是我們能否堅(jiān)持下去。臨近期末,大家都開(kāi)始著手準(zhǔn)備期末考,而我們還需在空余時(shí)間投入比賽。尤其是做到一半的時(shí)候,出現(xiàn)的問(wèn)題比較多,我們動(dòng)搖了,不知道這值不值得我們付出。最終,我們還是克服了困難堅(jiān)持下來(lái)。我想,無(wú)論是做什么事,最難的同時(shí)也是最重要的就是堅(jiān)持。(4) 經(jīng)過(guò)參加此次比賽,培養(yǎng)了我們對(duì)電子設(shè)計(jì)和制作的興趣。用單片機(jī)和用可編程邏輯器件編著的程序結(jié)合可以使電路和設(shè)計(jì)非常簡(jiǎn)單;系統(tǒng)的功能也比較穩(wěn)定且容易控制;軟硬件的結(jié)合無(wú)疑是這幾年并且是今后相當(dāng)長(zhǎng)一段時(shí)間內(nèi)的主流,對(duì)于今后的電子設(shè)計(jì)與制作的發(fā)展前景,我們充滿信心。附錄附錄1各部分原理圖以及PCB圖1. 主控制器邏輯電路原理圖2. 電機(jī)控制及驅(qū)動(dòng)電路原理圖3. 485接口通信電路4. 按鍵接口板電路5. 電機(jī)驅(qū)動(dòng)H橋電路附錄2部分程序清單include include //include define uchar unsigned chardefine uint unsigned int define mclk 8000000//8M202。177。214。211。pragma interrupt_handler uart_rx:12define amount 3 define act_flag inbox[0]amp。BIT(5) uchar keys_L。 uchar keys_H。 unsigned char send[amount]。/ unsigned char inbox[amount]。// unsigned char flag=0。// unsigned char flag1=0。// unsigned char rn=0。 uchar temp1。// uchar temp。 uchar arm_layer。 uchar current_layer。//189。211。202。213。202。253。190。221。188。196。180。230。198。247。 uchar frst_send1=0b00000101。// sb5 sb4 sb3 sb2 sb1 sb0 // 181。216。214。 181。216。214。 202。199。241。208。232。210。170。182。175。247。 180。uchar frst_send2=0b00000110。USART_INIT(){ UCSRB=0x00。 UCSRA=0x00。 //191。 UCSRC=(1URSEL)|(0UPM0)|(3UCSZ0)。 UBRRL=0x19。//178。 UCSRB|=(1RXEN)|(1RXCIE)。 SREG|=BIT(7)。 }void uart_send(){ unsigned char n。 UCSRB|=(1TXEN)。 DDRD|=BIT(1)。 for(n=0。namount。n++) { while(!(UCSRAamp。(BIT(UDRE)))) 。//181。200。180。253。162。203。205。187。186。179。229。188。196。180。230。198。247。207。208。180。204。172。 UDR=send[n]。 while(!(UCSRAamp。(BIT(TXC))))。//181。200。180。253。162。203。205。205。234。 UCSRA|=BIT(TXC)。 //206。170。200。177。163。189。211。202。213。187。196。199。177。223。196。220。203。179。192。170。180。230。205。234。177。207。163。172。213。226。192。239。188。211。181。227。209。211。202。177。 。//200。253。184。246。214。186。197。163。172。200。253。184。246。191。213。178。217。247。 } UCSRBamp。=~(1TXEN)。//162。203。205。186。243。180。204。172。187。214。184。180。 DDRDamp。=~BIT(1)。}void uart_rx(){ UCSRBamp。=~BIT(RXCIE)。 temp1=UDR。//UDR178。187。196。220。177。187。214。216。184。180。182。193。193。189。180。206。 if(rn!=0||(temp1amp。0X0F)==0X03)//212。182。168。208。210。233。163。186。184。248。214。247。187。181。196。181。218。210。187。184。246。214。189。218。202。253。190。221。177。216。208。235。202。199。X3163。187。 { inbox[rn]=temp1。//210。242。206。170。162。203。205。210。187。214。161。202。253。190。221。211。208。200。244。184。201。184。246。214。189。218。163。172。210。170。198。244。182。175。214。208。182。207。188。184。180。206。 //203。249。210。212。177。216。208。235。200。177。163。189。211。202。213。185。216。177。213。181。189。191。170。198。244。181。196。202。177。188。228。208。161。211。218。162。203。205。214。189。218。188。228。184。244。202。177。188。228。 rn=rn+1。 if(rn==3)//210。212。213。226。209。249。181。196。189。202。189。192。180。180。230。197。202。253。190。221。 211。208。206。163。207。213。163。161。 { rn=0。 flag=1。 } //188。217。200。231。196。179。184。246。202。253。190。221。182。170。202。167。163。172。190。205。187。225。179。214。208。248。180。237。206。187。163。172。196。209。210。212。181。247。213。187。216。192。180。 } UCSRB|=BIT(RXCIE)。}void delay(unsigned int ums){ unsigned int i,j。 for(i=0。iums。i++) { for(j=0。j1411。j++)。 }}void system_init() //{ delay(100)。}void to_machine1()///184。1186。197。180。211。187。205。168。208。197。163。172。210。170。199。243。187。216。184。180。176。180。188。252。208。197。207。162。{ //frst_send1|=0x05。//184。248。1186。197。187。163。168。176。180。188。252。187。162。208。197。207。162。163。169。 send[0]=frst_send1。 send[1]=keys_L。 send[2]=keys_H。//195。191。180。206。181。247。211。195。162。203。205。186。175。202。253。182。188。202。199。162。203。205。200。253。180。206。 163。172。195。191。180。206。210。187。184。246。214。189。218。 200。253。184。246。214。189。218。 while(!flag)//181。200。180。253。180。211。187。187。216。211。166。 { uart_send()。 delay(1)。 } }void to_machine2(){ send[0]=frst_send2。 se
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1