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

正文內(nèi)容

溫度監(jiān)控系統(tǒng)設計的設計論文-閱讀頁

2025-07-13 20:35本頁面
  

【正文】 ……………………MOV SCON,50H 初始化串口設為方式1MOV TMOD,20H 利用定時器1為波特率發(fā)生器并設為模式2MOV PCON,XXH 設置SMOD值MOV TH1,XXH 設置定時器初始值SETB TR1 啟動定時器1………………………………………………………………………………②等待接收PC機發(fā)來的信號幀并按通信協(xié)議作出相應響應。這個可能性在1/256, 通過停止位的判斷可將這個可能性再降低1/256。(2)校驗字將整幀信號進行異或校驗則使誤收的可能很小。本通信所用協(xié)議具有糾錯功能,這體現(xiàn)在當PC 發(fā)送或接收數(shù)據(jù)時,當所接收的應答信號出現(xiàn)失誤時,將重新發(fā)送或接收此幀數(shù)據(jù),直至接收到了正確的應答,具體在程序中最多允許連續(xù)出錯三次,超過后則放棄通信。如果在不考慮錯誤發(fā)生的情況下,PC 機每發(fā)送一幀數(shù)據(jù)時需要附加12 個字節(jié),其中8 個字節(jié)用于發(fā)送4 個字節(jié)用于應答PC 機。如:按每幀傳送32個字節(jié)計算的話,其發(fā)送和接收的效率為為忽略PC和PIC16F877A單片機的處理時間計算。在本通信協(xié)議中,不會出現(xiàn)某信號幀已到達但PC或PIC16F877A單片機還未開始準備接收的現(xiàn)象。 7 Protel99設計原理圖(1)使用Protel進行電路板設計的第一步便是設計原理圖,原理圖決定了整個電路的基本功能,也是接下來生成網(wǎng)絡表和設計印刷電路板的基礎。 FileNew改文件名-改保存路徑-OK ② 進入設計庫文件中的文件夾Document。FileNewSchematic DocumentOk改文件名FileNewPCB DocumentOk改文件名④ 打開原理圖文件。DesignAdd/Remove Library 瀏覽所需零件庫-AddOk⑥ 放置電路所需的各種元件,圖件,網(wǎng)絡標號等元器件。 Placepart⑧ 編輯和調(diào)整。右鍵-Properies….DesignationPartFootrint Save⑨ 打印或建立報表。這一步主要設定自動布參數(shù)、自動布線參數(shù)、板面參數(shù)等。在禁止布線層上,沿設計的PCB邊畫邊框線,即指定自動布局的范圍。同時,在上層板面(即元器件面)沿禁止布線層的邊框圖線放置銅線,這是PCB板最后成型所必須的。布局的好壞直接影響PCB板的電氣性能和布局的功能,是PCB板設計過程中最費時、最繁瑣的。盡管系統(tǒng)提供了自動布局的功能,但是一般而言都需要手工調(diào)整。移動元器件是最好打開網(wǎng)絡連接顯示,這樣就能觀察到相鄰元器件連線的疏 密。布局時要求相互間連線多的元器件應該就近放置;相互間可能造成干擾的元器件應遠離:功率器件應考慮散熱空間。布線就是在元器件引腳之間放置覆銅連線的過程,這一過程可以通過手工完成,也可以自動進行。在進行自動布線之前,設計人員必須先設計好布線參數(shù),定義布線規(guī)則。檢查的結(jié)果輸出在報告文件*.rep中,PCB軟件將出錯處在PCB圖上顯示出來,為檢查、修改提供方便。為了使設計的PCB板美觀,并且安裝焊接元器件方便,應將元器件的名稱。大小合適且字符不想重疊。⑧ 印刷板電路設計完成以后,整個電路板的設計項目就基本完成。調(diào)用網(wǎng)絡表Load Netlist添加元件庫 Add/Remove規(guī)劃電路板新建印制板圖NewPCB 設置絲印字元件布局走線手工制板熱轉(zhuǎn)印法光印法等打印,輸出報表存盤Save電路板成品交給印制板 8 硬件電路板的制作本設計中需要有2個繼電器控制外圍溫度調(diào)節(jié)系統(tǒng),2個LED用來提示串口數(shù)據(jù)指示,還有一個PIC16F877A單片機,一個Max232電平轉(zhuǎn)換器,一個有源晶體振蕩器及其外圍電阻電容等。Protel是一個很好用的電子制作工具,它還可以進行仿真。在畫原理圖后,選擇將元件自動編號,然后根據(jù)需要更改部分元件的編號。在ERC檢查無誤后,便可以開始封裝了。 完整的PCB圖另外,可變電阻在原理圖中的引腳編號和PCB庫中的引腳編號有點出入(可在原理圖中雙擊元件,選上HIDDEN PINS,則可以觀察到元件的引腳編號),可以在PCB庫中將該元件的引腳標號改成與原理圖相對應的標號。在禁止布線層中畫一個邊框和電路板大小一樣的矩形,然后開始導入網(wǎng)絡表,在導入網(wǎng)絡表沒有錯誤后,便開始正式布局了。布局完成后,先設置好安全間距為10mil,布線層選擇底層,線寬選擇25 mil,并將焊盤外徑改為40mil,內(nèi)徑改為20mil(部分點要根據(jù)需要改小或改大)。布線不能單靠自動布線,特別是在本設計中有眾多芯片,所以采用根據(jù)原理圖對整個電路進行手動布線。布好PCB圖,檢查無誤后,就將PCB圖打印到轉(zhuǎn)印紙上,然后熨到電路板上,腐蝕,打孔。腐蝕時,用三氯化鐵加適量的開水配成三氯化鐵溶液進行腐蝕,這樣腐蝕會比較快,腐蝕完后用天那水把電路板清洗,接著便開始打孔(),打完孔后,用萬用表測量電路線路是否連通,然后先涂上松香溶液(酒精+松香),這樣焊接速度會比較快,還能防氧化,然后將其放在一邊晾干。然后就可以開始焊接了。檢測完畢后,硬件電路板裝配便完成了。比如在合理布線,檢查裝配無誤的情況下,如果還出現(xiàn)電路無輸出的情況,那么可以肯定是原理圖錯誤,這時就要回到原理圖進行檢查。從整體來說這是一個復雜的過程,要細心謹慎,沉著冷靜,反復檢查,直到找到原因為止。在畫原理圖、PCB布線、安裝和調(diào)試過程中不可避免地遇到各種問題,這要求保持沉著冷靜,聯(lián)系書本理論知識積極地思考,實在解決不了可以請教同學或指導老師。經(jīng)過四年學習的積累,在已經(jīng)掌握相關專業(yè)方面知識及其它各方面知識的情況下,我認真嚴肅的完成了我的畢業(yè)設計。我在這個過程中深刻的感受到了做畢業(yè)設計的意義所在,和我一樣真正投入了身心去做的人也一定會有同樣的感觸。通過做本課題,我了解并掌握了傳感器的基本理論知識,更深入的掌握單片機的開發(fā)應用和PC編程控制。 謝 辭在本次畢業(yè)設計中,我得到了指導老師陳紫強的熱心指導。幫助解決畢業(yè)設計中遇到的許多問題。同時,他還提供給我們專門的各種設備及場所,在調(diào)試過程中能夠有充足的時間。在此,我向身邊關心我的同學致以誠摯的謝意!另外,系里的領導和老師也給了我們必要的指導,我也向系和年級的領導們表示衷心的感謝!最后感謝學院對我這幾年的培養(yǎng)。 TRISC=0X80。 TRISD=0X00。 RD0=0。 TRISE=0X00。unsigned int delay。extern unsigned char temph。//***************************void main(){//初始化 INIT()。delay0。 temph=0x35。 do { asm(clrwdt)。 RC0=0。 }while(1)。 unsigned char adre[2]。extern unsigned int delay。unsigned int y。unsigned char a。unsigned char temph。extern unsigned char i。 ADCON1=0X84。 ADGO=1。delay0。 while(ADIF==0) { asm(clrwdt)。 ADIF=0。 [1]=ADRESH。amp。 for( y=0x204。=+0x07) { temp++。 if(temp==0x2a) temp=0x30。 if(temp==0x4a) temp=0x50。 if(temp==0x6a) temp=0x70。 if(temp==0x8a) temp=0x90。 } } TXPC(temp)。 RXDATAS()。amp。 else if(rxbuf[0]==0x20) { templ=rxbuf[1]。 } if(receive==0xff) { RC1=1。 } } if(temp=templ) { if(a!=0xff) RD0=1。 } else if(temp=temph) { if(a!=0xff) RD1=1。 } else if((temp=templ)amp。(temp=temph)) { a=0。 RD1=0。delay0。}include //*************************unsigned char txbuf[5]。extern unsigned int delay。unsigned char rx_lo_buf。//*************************void TXPC(unsigned char byte)//9600b/s{ RC6 = 0。s_uart_buf46。 if(byteamp。 else RC6=0。s_uart_buf35。 if(byteamp。 else RC6=0。s_uart_buf35。 if(byteamp。 else RC6=0。s_uart_buf35。 if(byteamp。 else RC6=0。s_uart_buf35。 if(byteamp。 else RC6=0。s_uart_buf35。 if(byteamp。 else RC6=0。s_uart_buf35。 if(byteamp。 else RC6=0。s_uart_buf35。 if(byteamp。 else RC6=0。s_uart_buf35。 RC6=1。s_uart_buf45。}//*************************************************unsigned char RXPC(void)//9600b/s{ rx_lo_buf=0。 }//receive start bit for(s_uart_buf=0。s_uart_buf++)continue。s_uart_buf17。 if(RC7)rx_lo_buf=rx_lo_buf|0x01。s_uart_buf35。 if(RC7)rx_lo_buf=rx_lo_buf|0x02。s_uart_buf35。 if(RC7)rx_lo_buf=rx_lo_buf|0x04。s_uart_buf35。 if(RC7)rx_lo_buf=rx_lo_buf|0x08。s_uart_buf35。 if(RC7)rx_lo_buf=rx_lo_buf|0x10。s_uart_buf35。 if(RC7)rx_lo_buf=rx_lo_buf|0x20。s_uart_buf35。 if(RC7)rx_lo_buf=rx_lo_buf|0x40。s_uart_buf35。 if(RC7)rx_lo_buf=rx_lo_buf|0x80。s_uart_buf35。//receive stop bit for(s_uart_buf=0。s_uart_buf++)asm(nop)。}void RXDATAS(){//開始接收數(shù)據(jù) for(i=0。i++) rxbuf[i]=0。i0。 if(RC7==0) break。delay0。 if(RC7==0) break。 } for(i=0。i++) { rxbuf[i]=RXPC()。 }rxend: asm(clrwdt)
點擊復制文檔內(nèi)容
語文相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1