機電課程設計基于單片機的溫巡回檢測儀設計_第1頁
機電課程設計基于單片機的溫巡回檢測儀設計_第2頁
機電課程設計基于單片機的溫巡回檢測儀設計_第3頁
機電課程設計基于單片機的溫巡回檢測儀設計_第4頁
機電課程設計基于單片機的溫巡回檢測儀設計_第5頁
已閱讀5頁,還剩29頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、機電控制課程設計說明書溫度巡回檢測儀學院: 機械與動力工程學院指導教師: 苗玉彬 完成日期:2009 年 6 月 20 日目錄一、 課題背景及設計目的3二、 設計任務及要求4三、設計方案分析與確定51. 主控制模塊62 鍵盤模塊83溫度顯示模塊94溫度檢測模塊105A/D轉換模塊126 時鐘模塊.137. 電源.13四、 硬件設計.13五、 軟件設計及流程圖.141地址分配142 主程序流程圖153A/D轉換程序164 溫度顯示程序185鍵盤掃描程序206時鐘程序22六、 元件列表.24七、設計心得24八、 參考文獻269、 小組成員分工. .26十、 系統(tǒng)程序.271、 課題背景及設計目的1

2、 課題背景 單片機是目前應用最為廣泛的控制器之一,不僅功能齊全,而且與PLC、SPLC等工程控制器相比較,有體積小、價格便宜的優(yōu)勢。因此無論對于專業(yè)技術人才還是初學者來說,都是一種理想的工作學習器件。而溫度巡回檢測儀正是以單片機為核心的一個溫度檢測系統(tǒng),它作為一種溫度儀表應用十分廣泛,也可用于其他一些物理量的測量?,F(xiàn)今大多儀表采用工業(yè)儀表專用芯片,全集成化設置,使儀表的精確度、穩(wěn)定性及抗干擾等性能顯著提高。有的采用單片機設計,設計時采用了智能算法,可對溫度,濕度,壓力,溫濕度進行檢測高精度的巡回檢測,同時儀表可安裝RS485/232通訊模塊,通過通訊模塊連接到電腦,PLC及微型打印機,是一種高

3、精密的高集成化的巡回檢測儀,同時可以實現(xiàn)溫度,濕度等物理量的上下限報警,或做精度要求不高的回差控制。有的儀表還能實現(xiàn)巡回檢測報警的功能,它可與各類傳感器,變送器配合使用,實現(xiàn)溫度,壓力,液位,流量等物理量的測量,顯示和公共報警。其巡檢方式有手動或自動巡檢,按鍵切換,操作方便;顯示方式有單排數(shù)碼管顯示,雙排數(shù)碼管顯示;可配接熱電偶、熱電阻等傳感器。2 設計目的 我們之所以選擇溫度巡回檢測這個題目,是因為它把單片機的各項基本功能都涵蓋了,從數(shù)據(jù)采樣、信號轉換到單片機計算分析,再到通過數(shù)碼管輸出,整個過程集中體現(xiàn)了單片機的特點短小精悍。個人認為對于單片機的初學者來說,如果能夠把這個題目做好,應當是一

4、個質的飛躍,所以我們小組同心協(xié)力,共同完成這項課程設計。二、設計任務及要求1、設計任務本設計要求學生設計一個以8031單片機為核心的8路溫度的溫度巡回檢測儀,并用AEDK51T仿真器調(diào)試、開發(fā)該系統(tǒng)的硬件和軟件。2、設計要求溫度巡回檢測儀的具體設計要求如下:* 系統(tǒng)開機未按任何鍵時,LED顯示實時時鐘(時、分、秒);* 系統(tǒng)能與各種熱電阻、熱電偶相配用;* 8點溫度通道,可由用戶根據(jù)需要選擇其中的幾個通道進行檢測;* 要求每點溫度采樣8次,經(jīng)算術平均濾波后,送到LED顯示,溫度顯示格式為:通道號 溫度值。3、設計提示用8031單片機組成溫度巡回檢測儀應有以下幾個部分:* 由于此系統(tǒng)可根據(jù)用戶需

5、要對18點的溫度進行檢測,故系統(tǒng)必須配備簡易鍵盤和顯示器,以便用戶輸入需要檢測溫度的通道號,并顯示被測溫度值。* 由于該系統(tǒng)接收的信號是溫度傳感器的輸出信號,而這些信號通常不是05V的信號,因此信號首先經(jīng)過前置放大器放大,經(jīng)過A/D轉換后才可由單片機對數(shù)字量信號進行處理,最終由LED顯示溫度值。系統(tǒng)的硬件結構如圖4所示:圖43、 設計方案分析與確定通過對設計的分析可知,以8031為核心的溫度檢測系統(tǒng)分為六大模塊主控制模塊、鍵盤模塊、溫度顯示模塊、溫度檢測模塊、A/D轉換模塊和時鐘模塊。 整體硬件結構如下:80C31EPROM2764A/D轉換器8255A接口芯片顯示輸出鍵盤輸入(1)主控制模塊

6、由于系統(tǒng)控制方案簡單,數(shù)據(jù)量也不大,考慮到電路的簡單和成本等因素,因此選用80C31單片機作為主控芯片,采用單片機最小系統(tǒng)。其主要參數(shù)及特點有:與MCS-51產(chǎn)品兼容,片內(nèi)RAM 128B,2個16位定時器/計數(shù)器,1個全雙工串行口,4個并行I/O口,5個中斷源,提供2個中斷優(yōu)先級,1個振蕩電路,21個特殊寄存器。特點是體積小、重量輕、價格低廉、功耗??;可靠性高、抗干擾能力強;控制功能強、運算速度快;硬件通用化、應用靈活化;應用系統(tǒng)的研制周期短。 由于8031 芯片不含片內(nèi)ROM ,需外擴程序存儲器,考慮到功能的擴展,選擇2764(8K*8)。由于8031單片機沒有片內(nèi)程序存儲器,因此 管腳總

7、是接低電平。2764是8K8位的EPROM,單一+5 V供電,工作電流為75 mA,維持電流為35 mA,讀出時間最大為250 ns,DIP28封裝。2764有13條(A0A12)地址線,數(shù)據(jù)輸出線D0D7, 為片選線, 為數(shù)據(jù)輸出允許線, 為編程脈沖輸入端,VPP為編程電源,VCC為工作電源。單片機擴展片外存儲器時,地址是由P0和P2口提供的。2764的13條地址線(A0A12)中,低8位A0A7通過鎖存器74LS373與P0口連接。P2口本身有鎖存功能,高5位A8A12直接與P2口的P2.0P2.4連接。74LS373是帶三態(tài)緩沖輸出的8D鎖存器,由于單片機的三總線結構中,數(shù)據(jù)線與地址線的

8、低8位共用P0口,因此必須用地址鎖存器將地址信號和數(shù)據(jù)信號區(qū)分開。74LS373的鎖存控制端G直接與單片機的鎖存控制信號ALE相連,在ALE的下降沿鎖存低8位地址。采用內(nèi)部時鐘方式,外部石英晶體,兩電容接在放大器的反饋回路中構成自激振蕩器,晶振頻率選擇6MHz。C1,C2=30pF。 8031復位Reset功能,采用脈沖復位方式。 使用通用接口芯片8255A擴展I/O接口,連接鍵盤,顯示器。D0-D7連接到8031的PO口地址總線,由單片機P2.6連接 進行片選 。和8031采用同一個復位電路。(2) 鍵盤模塊有八個按鍵:按鍵名稱功能MODE 選擇時間模式或溫度模式UP 向上調(diào)節(jié)通道DOWN

9、向下調(diào)節(jié)通道P/S pause/start 用于定格讀數(shù)C/O close/open 打開或關閉通道顯示CIRCUIT 巡回檢測8個通道DETECT 定點檢測選定通道IN0 默認檢測通道IN0 硬件接法如下圖其中,F(xiàn)1 F2 F3 F4 F5 F6 F7 F8 對應 UPDOWN MODE C/O P/S CIRCUIT DETECT IN0以8255A作為鍵盤接口,PB口接鍵盤,鍵盤地址:BFFEH。(3) 溫度顯示模塊顯示模塊采用兩個4位LED顯示數(shù)碼管,共陰極接法。由于LED顯示電路較多選用動態(tài)掃描方式,為了實現(xiàn)LED顯示器的動態(tài)掃描,除了要給顯示器提供段(字型代碼)的輸入之外,還要對顯

10、示器加位的控制,即段控和位控。所以需要用I/O口輸出6條段控線;位控線由挑選的8255A的PA0-PA5進行輸出,段控線接8255A的PC口。段控口地址BFFDH,位控口地址BFFCH。為提高顯示亮度,通常加74LS05進行段控輸出驅動,與七段數(shù)碼管的段碼驅動輸入端相連,由于位控線的驅動電流較大,八段全亮需4060mA,所以用三極管9012進行提高驅動能力,其集電極接到七段數(shù)碼管的位碼驅動輸入端,三極管的發(fā)射極接地,將8255A的PA0PA5分別與一個2k的電阻相連接到三極管的基極,用于驅動數(shù)碼管。(4) 溫度檢測模塊考慮到電壓遠距離傳輸?shù)膿p失問題,我們采用恒流工作調(diào)理電路,鉑電阻選用標稱值為

11、100的RT100作為溫度傳感器,其物理、化學性能在高溫和氧化性介質中非常穩(wěn)定,在-259.34C630.74C溫域內(nèi),可作為溫度標準。U8、U9和U10采用低漂移運放OP07C,由于有電流流經(jīng)鉑電阻傳感器,所以當溫度為0C時,在鉑電阻傳感器上有電壓降,這個電壓為鉑電阻傳感器的偏置電壓,是運放U9輸出電壓的一部分,使恒流工作調(diào)理電路的輸出實際不為0。所以需要對這個偏置電壓調(diào)零,圖中R11為調(diào)零電阻,其作用為當溫度為0C時,將恒流工作調(diào)理電路的輸出調(diào)到零。又因為鉑電阻的電阻特性為非線性,鉑電阻在0C100C變化范圍內(nèi)非線性誤差為0.4%(0.4C),由于本系統(tǒng)無小數(shù)顯示,0.4C的誤差本身不會對

12、A/D轉換量化和數(shù)碼管顯示造成影響,但由于在軟件編制中,對標度變換子程序中變換系數(shù)作了近似,使得非線性誤差接近0.79%(0.79C),就有可能對A/D量化和數(shù)碼管顯示造成影響,所以加進了線性化電路,圖中運放U10及電阻R7、R10和R9一同構成了負反饋非線性校正網(wǎng)絡。R6用于調(diào)整運放U8的增益。電路的調(diào)整方法如下:(用普通電阻替代鉑電阻進行調(diào)整):接入相當于0C的100的電阻,用R11調(diào)零。接入相當于50C的119.70電阻,用R6調(diào)整增益。接入相當于100C的139.10電阻,用R7或R10調(diào)整線性。反復調(diào)整多次,在0100C溫度范圍內(nèi)適宜為止。經(jīng)上述信號電路調(diào)理,顯示對照表如下表所列。理

13、想溫度值/C010203040對應電阻值/100103.96107.91111.85115.78實際輸出電壓/V0.0020.5021.0041.5022.004顯示溫度值/C0102030405060708090100119.7123.49127.49131.37135.24139.12.5053.0013.5024.0014.4984.9965060708090100以溫度值為橫坐標,電壓值為縱坐標,由上表分析非線性誤差可知:在50C時,存在最大誤差為0.005C,故非線性校正后非線性誤差變?yōu)?.1%(0.1C),A/D量化及數(shù)碼管顯示就不會產(chǎn)生誤操作。(5) A/D轉換模塊我們要求顯示溫

14、度為0100C,不顯示小數(shù),故需要100個字,A/D轉換器選擇ADC0809,其主要性能指標如下: 分辨率為8位,256個字,可滿足要求。 總的不可調(diào)誤差在(1/2)LSB和11LSB范圍內(nèi)。 典型轉換時間為100us。 具有鎖存器控制的8路多路開關。 具有三態(tài)緩沖輸出控制。 單一+5V供電,此時輸入范圍為0-5V。 輸出與TTL兼容。 工作溫度范圍-4085攝氏度。溫度傳感器測得的電壓值經(jīng)放大電路放大后,又經(jīng)A/D轉換器ADC0809進入8031,每個通道測8次,最后經(jīng)過軟件的平均濾波得到溫度值。(6) 時鐘模塊 主要通過軟件實現(xiàn)。(7) 電源選用5V/1A市售成品開關電源。 四、硬件設計用

15、proteus畫出硬件接線圖(附打印件),如下:5、 軟件設計及流程圖1地址分配內(nèi)部RAM地址分配: 時鐘單元: 27H2CH 按鍵標志單元:40H八個可尋址位8次采樣溫度緩沖區(qū): 31H38HLED顯示單元 3AH3FH各片口地址:8255片PA口:BFFCH8255片PB口:BFFEH8255片PC口:BFFDHAD轉換地址:通道IN0IN1IN2IN3IN4IN5IN6IN7 地址7FF8H7FF9H7FFAH7FFBH7FFCH7FFDH7FFEH7FFFH2. 主程序流程圖NOYES開機時鐘顯示測試是否有鍵按下巡回模式定點模式按下鍵取下一個通道按通道順序進行AD轉換 默認通道按上鍵取

16、上一個通道單通道進行AD轉換進行數(shù)據(jù)轉換顯示輸出3. A/D轉換程序A/D轉換芯片由P2.7選通,轉換結果依次存放在片內(nèi)RAM的3138H單元。AD: PUSH ACC ; 保護現(xiàn)場PUSH DPL PUSH DPH ; 初始化程序MOV R0,#31H ; 存放結果的首地址MOV R2,#08H ; 通道數(shù)為8MOV R3,#76H ; 存放通道數(shù)地址MOV A,R3CJNE A,#00H,IN1SETB IT1 ; 脈沖觸發(fā)方式SETB EA ; 開中斷SETB EX0MOV DPTR,#7FF8H ; 指向通道0轉換地址IN1: CJNE A,#01H,IN2 ; 按通道順序轉換MOV

17、DPTR,#7FF9H ; 指向通道1轉換地址IN2: CJNE A,#02H,IN3MOV DPTR,# 7FFAH ; 指向通道2轉換地址IN3: CJNE A,#03H,IN4MOV DPTR,# 7FFBH ; 指向通道3轉換地址IN4: CJNE A,#04H,IN5MOV DPTR,# 7FFCH ; 指向通道4轉換地址IN5: CJNE A,#05H,IN6MOV DPTR,# 7FFDH ; 指向通道5轉換地址IN6: CJNE A,#06H,IN7MOV DPTR,# 7FFEH ; 指向通道6轉換地址IN7: CJNE A,#07H,IN8MOV DPTR,# 7FFFH

18、; 指向通道7轉換地址READ1: MOVX DPTR,A ; 啟動A/D轉換WAIT: SJMP WAIT ; 等待中斷DJNZ R2,READ1 ; 判斷巡回采樣是否結束IN8: POP DPH ; 還原現(xiàn)場POP DPLPOP ACCRET中斷服務程序:INI0: MOVX A,DPTR ; 讀數(shù)MOVX R0,A ; 存數(shù)CJNE 20H,#00H,AUTO ; 自動時通道自動更新 INC R0 ; 更新暫存單元RETIAUTO: INC DPTRINC R0 RETI平均濾波的實現(xiàn)由于要求每一通道測8次取均值后輸出,這需要靠平均濾波來實現(xiàn)。平均濾波的程序如下:LVBO: PUSH A

19、CC MOV R0,#31H ; 指向第一個數(shù)據(jù)MOV R7,#08H ; 一共8個數(shù)據(jù)MOV R3,#00H ; 總共的進位數(shù)CLR A ; 累加器清0 LOOP: ADDC A,R0 ; 各數(shù)據(jù)累加JNC NEXTINC R3NEXT: INC R0DJNZ R7,LOOPMOV R7,#03H ; 三次除以2DIV : MOV R4,A ; 累加總和送R4MOV A,R3CLR CRRC A ; 除以2MOV R3,AMOV A,R4RRC ADJNZ R7,DIVMOV R0,#20HMOV R0,A ; 濾波后結果返送原地址POP ACCRET(4) 溫度顯示程序計算得到的溫度值在A

20、中,但是以16進制形式存在,為了LED顯示需要,應轉移成10進制轉換程序如下: MOV R1,#00HMOV R2,#00HCLR CCHAN: SUBB A,#64H ; 減100 JC CHAN1 ; 不夠減則轉 INC R1 ; 夠減,有效位置1AJMP CHAN2CHAN1: ADD A,#64H ; 恢復原值CHAN2: SUBB A,#0AH ; 減10 JC CHAN3 ; 不夠減則轉 INC R2 ; 夠減,十位數(shù)加1 AJMP CHAN2 ; 重復減10CHAN3: ADD A,#0AH ; 還原個位數(shù) MOV 27H,#00H ; 通道數(shù)首位為0 MOV 28H,76H ;

21、 通道數(shù) MOV 29H,#10H MOV 2AH,A MOV 2BH,R2 3OV 2CH,R1 RET六位晶體管顯示,溫度顯示為整數(shù),溫度范圍0-1006位動態(tài)LED的顯示緩沖單元位于內(nèi)部RAM 的3A-3FH,分別存放6位動態(tài)LED的顯示數(shù)據(jù)。段控口地址BFFDH,位控口地址BFFCH。PUSH ACC ;保護現(xiàn)場PUSH DPLPUSH DPHDISP: MOVR6, #3AH ;指向顯示緩沖區(qū)首址 MOVR7,#20H ; 指向顯示器最高位 MOVR0,#BFFDH ;段控口地址 MOVR1,#BFFCH ;位控口地址DISP1: MOV A,#00H ; 各數(shù)碼管清0 MOVX R

22、0,A MOV A,R7 MOV R1,A RRC A 循環(huán)右移一位 JC DISP2 MOVR7,A AJMP DISP1 循環(huán)清0DISP2: MOV R7,#20H ; 重新指向顯示器最高位DISP3: MOV A,R7 MOVX R1,A ; 輸出位控碼 MOV A,R6 ; 取出顯示數(shù)據(jù) MOV DPTR,#DSEG ;查表 MOV A,DPTR ; 字形碼送入A MOVX R0,A ; 輸出字形碼 ACALL DELAY ; 調(diào)用延時子程序 INC R6 ; 指向下一個緩沖單元 MOV A,R7 JB ACC.0,DISP4 ; 到最低位則轉跳 RR A ; 累加器循環(huán)右移 MOV

23、R7,A ; AJMP DISP3 ; 循環(huán)顯示DISP4: POP ACC ; 還原現(xiàn)場POP DPLPOP DPHRET ; 子程序返回DSEG: DB 3FH,06H,5BH,4FH,66H ;0-9數(shù)字顯示碼 DB 6DH,7DH,07H,7FH,6FH ;DELAY: MOV R5,#02H ; 延遲子程序DL1: MOV R4,#0FFHDL2: DJNZ R4,DL2 DJNZ R5,DL1 RET(5) 鍵盤掃描程序掃描PB口延時12ms有鍵掃描PB口存入40H有鍵返回NYNY采用循環(huán)掃描的方式,一但有鍵閉合執(zhí)行鍵盤掃描程序,將閉合的鍵碼放在累加器A中,接著根據(jù)相應的鍵碼執(zhí)行相

24、應的處理。按鍵程序:KEY:MOV40H,00HACALLKSCANJNZLK1;有鍵,跳LK1SJMPKEND ;無鍵,調(diào)用程序LK1:ACALLDL12ms;延時12MSACALLKSCANJNZLK2SJMPKENDLK2: MOV40H,A;賦值給按鍵標志位KEND: RET ;返回循環(huán)掃描KSCAN:MOV40H,#00H;清按鍵標志位 MOVDPTR,#BFFEH ;PB口地址 MOVXA,DPTR CPLA RETDL12ms: MOVR7,#0CHDL2:MOVR6#0FFHDL3:DJNZR6,DL3DJNZR7,DL3RETJUD:JB40H.0,UPJB40H.1,DOW

25、NJB40H.2,MODEJB40H.3,CLOSE JB40H.4,PAUSE1PAUSE1:ACALLDIR1ACALLKEYJNB40H.4LOOP1SJMPJENDLOOP1:SJMPPAUSEMODE:AJMPMAINUP:INC20H SJMPJENDDOWN:DEC 20H SJMPJENDCLOSE:MOVA,30H MOVR4,20H CLRCLOOP2:RRA DJNZR4,LOOP2CPLACC.0 MOVR4,20HLOOP3:RLA DJNZ R4,LOOP3 MOV 30H,A SJMP JEND JEND:RET(6) 時鐘程序一開機顯示為00:00:00使用定時

26、器/計數(shù)器對時間進行轉換已知晶振6MHZ,定時1s,工作方式1T0初值=216-100000/2=15536D=0011 1100 1011 0000B=3CB0HSHIZH: MOV TMOD,#51H ; T0為定時器方式1MOV TH0,#3CH ; 設置T0初值MOV TL0,#0B0HMOV IE,#8FH ; 允許T0中斷SETB TR0 ; 啟動定時器T0LL: SJMP LL定時器中斷服務程序:T_0: MOV TH0,#3CH MOV TL0,#0B0H CJNE 27H,#09H,T1 ; 秒鐘進位 MOV 27H,#00H CJNE 28H,#05H,T2 MOV 28H

27、,#00H CJNE 29H,#09H,T3 ;時鐘進位 MOV 29H,#00H CJNE 2AH,#05H,T4 MOV 2AH,#00H CJNE 2BH,#09H,T5 ;分鐘進位 MOV 2BH,#00H CJNE 2CH,#05H,T6 MOV 2CH,#00H RETIT1: INC 27H LJMP SHIZHT2: INC 28H LJMP SHIZHT3: INC 29H LJMP SHIZHT4: INC 2AH LJMP SHIZHT5: INC 2BH LJMP SHIZHT6: INC 2CH LJMP SHIZH六、元件列表所用元件列表:元件名稱元件個數(shù)80311

28、27641OP073ADC0809174LS37318255A14位LED數(shù)碼管2CRYSTAL1三極管2N2222A6按鈕9鉑電阻8電容若干電阻若干7、 設計心得奮斗了一個多月,一下子要寫心得體會,不知道該從何寫起了。從一開始選定這個task覺得是mission impossible 到后來著手一步步把疑難解開,我覺得我學到了太多太多的東西。第一次和Proteus親密接觸以前雖然也使用過簡單的電子元件繪圖工具,但都只是很膚淺的畫個簡單回路,或者是照著很簡單的圖在畫圖板上復現(xiàn)出來。而這次上手Proteus,每一根線的來龍去脈都是自己算出來的,每一個芯片都是自己親自選定的,感覺實在是非常不一樣。

29、畫圖的進程很慢,很多時候都是好幾個小時,就只畫了幾個部件幾根線?;蛘呤呛貌蝗菀桩嫼昧擞种禺?。但是很有收獲的是,這次設計后我對Proteus的熟悉程度大大的提高了。以后再畫圖肯定速度比這次快很多自主設計以前的一些題目都是死算,很死板。 而這次的大作業(yè)是要自己設計的。其中比如芯片的選定,程序的設計和編譯,線路的安排和整體的規(guī)整等等。當然這些東西也不是完全憑空亂設的,而是要查閱一些資料和規(guī)定,在合理的范圍內(nèi)進行自由的選擇。選擇完之后還要進行校核。這個過程雖然比較復雜,但初步讓我認識到以后工作中可能遇到的類似的很實際的情況,實際不可能像理論那樣如此的理想化,而作為設計者就要把一些可能發(fā)生的實際因素考慮

30、進去,并不斷地進行假設,驗算,知道符合要求為止。不怕犯錯在整個設計過程中,犯了多少錯誤,走了多少彎路,我自己都數(shù)不清楚了。因為是初次設計,所以在設計先后次序上不是很清楚,所以導致原先設計好的東西因為不符合后來設計的要求,要重新開始。類似的事情發(fā)生過很多次。在不斷的計算中,我的耐心也得到了提高,同時我也明白在做事情之前先要對整個布局有所了解,不然很有可能自己往錯誤的方向走了半天還不知道。學會參考與合作在設計過程中,體會最深的就是要參考,不是所有東西都是可以隨便設計的。其中自己有很多不懂的地方要查閱書籍和表格規(guī)定,或者問問同學。這次設計要特別感謝郭曉波同學,他幫我解答了很多疑難,也指導了我們在畫圖

31、過程中一些錯誤的地方??傊?,課程設計一路走來實屬不易。這當中有多少苦多少甜也只有經(jīng)歷過的人才體會得到。我想經(jīng)歷這一場“磨難”后,我和我身邊的人都成長了很多,我們也知道做一個合格的設計者有多么地不容易。8、 參考文獻基于proteus的電路及單片機系統(tǒng)設計與仿真 周景潤 張麗娜 編著MCS-51單片機原理與應用實例 三恒星科技 編著單片機程序設計實例 先鋒工作室 編著9、 小組成員分工姓名學號分工郭曉波5060209223硬件電路設計和部分程序設計陳彬彬5060209238顯示電路設計朱俊俊5060209237鍵盤設計李金良5060209222溫度檢測設計郭沛民5060209226模數(shù)轉換設計1

32、0、 系統(tǒng)程序 ORG 0000H AJMP MAIN ORG 0003H AJMP INT0 ORG 000BH AJMP T_0 ORG 0030HMAIN: MOV 2CH,#00HMOV 28H,#00H MOV 29H,#00HMOV 2AH,#00HMOV 2BH,#00H MOV 27H,#00H LACLL DISPSHIZH: MOV TMOD,#51H ;時鐘顯示初始化程序:MOV TH0,#3CH MOV TL0,#0B0HMOV IE,#8FH SETB TR0 LL: SJMP LLT_0: MOV TH0,#3CH ;定時器中斷服務程序:MOV TL0,#0B0H

33、CJNE 27H,#09H,T1 MOV 27H,#00H CJNE 28H,#05H,T2 MOV 28H,#00H CJNE 29H,#09H,T3 MOV 29H,#00H CJNE 2AH,#05H,T4 MOV 2AH,#00H CJNE 2BH,#09H,T5 MOV 2BH,#00H CJNE 2CH,#05H,T6 MOV 2CH,#00H RETIT1: INC 27H LJMP SHIZHT2: INC 28H LJMP SHIZHT3: INC 29H LJMP SHIZHT4: INC 2AH LJMP SHIZHT5: INC 2BH LJMP SHIZHT6: IN

34、C 2CH LJMP SHIZH LACLL DISPKEY:MOV40H,00H ;鍵盤程序ACALLKSCAN JNZLK1;有鍵,跳LK1SJMPKEND ;無鍵,調(diào)用程序LK1:ACALLDL12ms;延時12MS ACALLKSCAN JNZLK2 SJMPKENDLK2: MOV40H,A ;賦值給按鍵標志位KEND:RET ;返回循環(huán)掃描KSCAN:MOV40H,#00H;清按鍵標志位 MOVDPTR,#BFFEH ;PB口地址 MOVXA,DPTR CPLA RETDL12ms: MOVR7,#0CHDL2:MOVR6#0FFHDL3:DJNZR6,DL3DJNZR7,DL3R

35、ETJUD:JB40H.0,UPJB40H.1,DOWNJB40H.2,MODEJB40H.3,CLOSE JB40H.4,PAUSE1PAUSE1:ACALLDIR1ACALLKEYJNB40H.4LOOP1SJMPJENDLOOP1:SJMPPAUSEMODE:AJMPMAINUP:INC20H SJMPJENDDOWN:DEC20H SJMPJENDCLOSE:MOVA,30H MOVR4,20H CLRCLOOP2:RRA DJNZR4,LOOP2CPLACC.0 MOVR4,20HLOOP3:RLA DJNZ R4,LOOP3 MOV 30H,A SJMP JEND JEND:RET

36、AD: PUSH ACC ;A/D轉換程序PUSH DPL PUSH DPH MOV R0,#31HMOV R2,#08HMOV R3,#76HMOV A,R3CJNE A,#00H,IN1SETB IT1 SETB EA SETB EX0MOV DPTR,#7FF8H IN1: CJNE A,#01H,IN2 MOV DPTR,#7FF9H IN2: CJNE A,#02H,IN3MOV DPTR,# 7FFAH IN3: CJNE A,#03H,IN4MOV DPTR,# 7FFBH IN4: CJNE A,#04H,IN5MOV DPTR,# 7FFCHIN5: CJNE A,#05H,IN6MOV DPTR,# 7FFDH IN6: CJNE A,#06H,IN7MOV DPTR,#7FFEHIN7: CJNE A,#07H,IN8MO

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論