單片機(jī)原理及接口技術(shù)電腦電飯煲控制器設(shè)計_第1頁
單片機(jī)原理及接口技術(shù)電腦電飯煲控制器設(shè)計_第2頁
單片機(jī)原理及接口技術(shù)電腦電飯煲控制器設(shè)計_第3頁
單片機(jī)原理及接口技術(shù)電腦電飯煲控制器設(shè)計_第4頁
單片機(jī)原理及接口技術(shù)電腦電飯煲控制器設(shè)計_第5頁
已閱讀5頁,還剩15頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、i遼遼 寧寧 工工 業(yè)業(yè) 大大 學(xué)學(xué)單片機(jī)原理及接口技術(shù)單片機(jī)原理及接口技術(shù) 課程設(shè)計(論文)課程設(shè)計(論文)題目:題目: 電腦電飯煲控制器設(shè)計電腦電飯煲控制器設(shè)計 院(系):院(系): 電氣工程學(xué)院電氣工程學(xué)院 專業(yè)班級:專業(yè)班級: 電氣電氣 學(xué)學(xué) 號:號: 學(xué)生姓名:學(xué)生姓名: 指導(dǎo)教師:指導(dǎo)教師: (簽字)起止時間:起止時間:2012013 3.06.24-201.06.24-2013 3.07.07.1212本科生課程設(shè)計(論文)ii課程設(shè)計(論文)任務(wù)及評語課程設(shè)計(論文)任務(wù)及評語院(系):電氣工程學(xué)院 教研室:電氣教研室 注:成績:平時20% 論文質(zhì)量60% 答辯20% 以百分制

2、計算學(xué) 號學(xué)生姓名專業(yè)班級課程設(shè)計(論文)題目電腦電飯煲控制器設(shè)計課程設(shè)計(論文)任務(wù)電腦電飯煲控制器可實(shí)現(xiàn)溫度控制和定時時間設(shè)置,顯示定時時間和工作狀態(tài)。采用電阻絲加熱盤。溫度測量范圍 0125 度。設(shè)計任務(wù):設(shè)計任務(wù):1. cpu 最小系統(tǒng)設(shè)計(包括 cpu 選擇,晶振電路,復(fù)位電路)2. 溫度傳感器選擇及接口電路設(shè)計3. 加熱驅(qū)動設(shè)計4. 程序流程圖設(shè)計及程序清單編技術(shù)參數(shù):技術(shù)參數(shù):1溫度測量范圍 0-125 度2控制器工作電源為 220v設(shè)計要求設(shè)計要求:1、分析系統(tǒng)功能,盡可能降低成本,選擇合適的單片機(jī)、ad 轉(zhuǎn)換器、輸出電路等;2、應(yīng)用專業(yè)繪圖軟件繪制硬件電路圖和軟件流程圖;3、

3、按規(guī)定格式,撰寫、打印設(shè)計說明書一份,其中程序開發(fā)要有詳細(xì)的軟件設(shè)計說明,詳細(xì)闡述系統(tǒng)的工作過程,字?jǐn)?shù)應(yīng)在 4000 字以上。進(jìn)度計劃第 1 天 查閱收集資料第 2 天 總體設(shè)計方案的確定第 3-4 天 cpu 最小系統(tǒng)設(shè)計第 5 天溫度傳感器選擇及接口電路設(shè)計第 6 天加熱驅(qū)動電路設(shè)計第 7 天 程序流程圖設(shè)計第 8 天 軟件編寫與調(diào)試第 9 天 設(shè)計說明書完成第 10 天 答辯指導(dǎo)教師評語及成績 平時: 論文質(zhì)量: 答辯: 總成績: 指導(dǎo)教師簽字: 年 月 日本科生課程設(shè)計(論文)iii摘 要本課程設(shè)計對電腦電飯煲控制器進(jìn)行設(shè)計,在硬件部分,本文在詳細(xì)說明了單片機(jī)控制的溫控表電路和定時電路

4、的設(shè)計原理及其構(gòu)造的基礎(chǔ)上,對其各個部分進(jìn)行了設(shè)計。即分別對電源電路、cpu 最小系統(tǒng)、溫度傳感器、溫度測量通道、復(fù)位電路、時鐘電路、定時顯示電路、加熱驅(qū)動電路進(jìn)行了設(shè)計。cpu 最小系統(tǒng)由單片機(jī)、片外 ram、鍵盤/顯示接口、復(fù)位電路構(gòu)成。其中 cpu 選用的是美國atmel 公司生產(chǎn)的 at89c51 單片機(jī)。溫度測量通道主要由 k 型熱電偶、ad595芯片、a/d 轉(zhuǎn)換器 icl7135 芯片構(gòu)成。在軟件部分采用了模塊化的設(shè)計方法。本系統(tǒng)的程序設(shè)計主要包括主程序流程圖和匯編程序。關(guān)鍵詞:cpu;傳感器;驅(qū)動電路; 本科生課程設(shè)計(論文)iv目 錄第 1 章 緒論 .11.1 電腦電飯煲概

5、況 .11.2 本文研究內(nèi)容 .1第 2 章 cpu 最小系統(tǒng)設(shè)計.22.1 電腦電飯煲總體設(shè)計方案 .22.2 時鐘電路 .22.3 復(fù)位電路 .32.4 cpu 最小系統(tǒng)圖 .42.5 cpu 的選擇 .42.6 顯示電路 .62.7 電源電路 .62.8 加熱驅(qū)動電路的設(shè)計 .72.9 溫度采集部分電路 .8第 3 章 系統(tǒng)軟件設(shè)計 .103.1 主程序流程 .103.2 子程序介紹 .113.2.1 診斷子程序.113.2.2 鍵盤掃描子程序.113.2.3 溫度采集子程序.113.3 程序清單 .11第 4 章 課程設(shè)計總結(jié) .15參考文獻(xiàn) .16本科生課程設(shè)計(論文)1第 1 章

6、緒論1.1 電腦電飯煲概況目前,市場上的電飯煲大部分采用機(jī)械式或者是采用固定功率的方式加熱,能源利用率低,功能單一,難以滿足人們?nèi)找嬖鲩L的生活需求。因此,開發(fā)功能齊全,安全可靠的微電腦電飯煲是非常用必要的。電飯煲從機(jī)械式原理到現(xiàn)在的智能電飯煲,期間經(jīng)歷了許多的階段。電飯煲發(fā)揮高新技術(shù)優(yōu)勢,以美味炊煮為主導(dǎo),使產(chǎn)品更加豐富與時尚化,現(xiàn)已形成微電腦、電腦與機(jī)械三大類型、十大不同款式。機(jī)械電飯煲雖然價格方面體現(xiàn)它的優(yōu)勢之外,其他方面就很難滿足人們對現(xiàn)代生活高品質(zhì)的需求。微電腦或電腦控制的智能電飯煲符合現(xiàn)代人的要求,人性化的界面設(shè)計,使得人們一眼看出當(dāng)前工作狀態(tài),讓您更安心,各種烹調(diào)過程全部由電腦自動

7、控制,并且大多的智能電飯煲采用太空“黑晶”內(nèi)膽,超硬耐磨,恒久美觀,所有的這些特點(diǎn)符合現(xiàn)代人的省時、省力、耐用的觀念。 1.2 本文研究內(nèi)容本文主要介紹利用 89c51 芯片來對電飯煲的過程進(jìn)行控制,工作頻率為12mhz,工作電壓 5v,有 64kb 的 ram 和 64k 字節(jié)的 rom,有 32 個可編程i/o 口,8 通道 10 位 a/d 轉(zhuǎn)換器,2 個 16 位定時/計數(shù)器,有低電壓、上電、看門狗、外部信號、錯誤地址復(fù)位,并且有一個蜂鳴器輸出口。本科生課程設(shè)計(論文)2第 2 章 cpu 最小系統(tǒng)設(shè)計2.1 電腦電飯煲總體設(shè)計方案利用 89c51 設(shè)計的智能電飯煲控制系統(tǒng)原理框圖如圖

8、 2.1 所示,通過按鍵來選擇功能模式、顯示電路完成顯示當(dāng)前狀態(tài)和定時時間;通過溫度傳感器來對溫度進(jìn)行采樣;通過 mcu 的控制最終實(shí)現(xiàn)對繼電器的控制,從而來控制對加熱盤的加熱與否,電源部分完成對單片機(jī)系統(tǒng)和外圍電路提供 5v 電源,并且對加熱盤進(jìn)行加熱重量傳感器磁文傳感器濕度傳感器門檢測可控硅a/d 轉(zhuǎn)換器89c51數(shù)碼顯示管控制板報警電路旋轉(zhuǎn)電機(jī)風(fēng)扇圖 2.1 控制系統(tǒng)構(gòu)成框圖2.2 時鐘電路計算機(jī)工作時,是在統(tǒng)一的時鐘脈沖控制下一拍一拍地進(jìn)行的,這個脈沖是由單片機(jī)控制器中的時序電路發(fā)出的。時鐘電路用于產(chǎn)生單片機(jī)所需的時鐘信號,本科生課程設(shè)計(論文)3時鐘信號可以由兩種方式產(chǎn)生:內(nèi)部時鐘方

9、式和外部時鐘方式。如圖 2.2 所示圖 2.2 時鐘電路2.3 復(fù)位電路復(fù)位電路的設(shè)計在整個原理的設(shè)計中非常重要,并且要結(jié)合本項目的功能要求進(jìn)行復(fù)位電路的設(shè)計。復(fù)位操作可以使單片機(jī)初始化,也可以使死機(jī)狀態(tài)下的單片機(jī)重新啟動,因此非常重要。單片機(jī)的復(fù)位都是靠外部復(fù)位電路來實(shí)現(xiàn)的,在時鐘電路工作后,只要在單片機(jī)的 reset 引腳上出現(xiàn) 24 個時鐘振蕩脈沖(兩個機(jī)器周期)以上的高電平,單片機(jī)就能實(shí)現(xiàn)復(fù)位。復(fù)位電路如圖 2.3 所示 圖 2.3 復(fù)位電路r1k+c22uvcc89c51vccresetvssr200c1capc2capy1crystalxtal 2xtal 1.本科生課程設(shè)計(論文

10、)42.4 cpu 最小系統(tǒng)圖圖 2.4 cpu 最小系統(tǒng)圖2.5 cpu 的選擇本系統(tǒng)采用 89c51 單片機(jī),此芯片是一種帶 4kb flash rom 程序存儲器的低電壓、高性能的 8 位微處理器。(1)基本特性與 mcs51 系列單片機(jī)兼容;片內(nèi)有 4kb 可重新編程的 flash 程序存儲器,可擦/寫 1000 次以上;全靜態(tài)邏輯,工作頻率范圍:024hz;三級程序存儲器加密;128b 字節(jié)片內(nèi) ram ;32 個可編程 i/o 口;提供待機(jī)和掉電兩種省電工作方式;兩個 16 位定時/計數(shù)器;有 5 個中斷矢量,允許 6 個中斷源;p0.039p0.138p0.237p0.336p0

11、.435p0.534p0.633p0.732p2.021p2.122p2.223p2.324p2.425p2.526p2.627p2.728p3.010p3.111p3.212p3.313p3.414p3.515p3.616p3.717xtal 119xtal 218reset9rse n29ale /prog30ea31p1.01p1.12p1.23p1.34p1.45p1.56p1.67p1.78vcc40u1at89c51c1capc2capy1crystal.c422ufr4200r51ksw10位位.本科生課程設(shè)計(論文)5一個全雙工串行口;具有與工業(yè)標(biāo)準(zhǔn) 80c51 一致的指令集和

12、引腳布置。at89c51 是低功耗高性能 coms8 位單片機(jī)。它除了具有與 mcs51 完全兼容的若干特性外,最為突出的優(yōu)點(diǎn)就是片內(nèi)集成了 4k 字節(jié) flash perom(programable erasable read only memory),可存放應(yīng)用程序,這個flash 程序存儲器允許用一般的編程器離線編程外,還允許在應(yīng)用系統(tǒng)中實(shí)現(xiàn)在線編程,并且還提供了對程序進(jìn)行三級加密保護(hù)的功能。at89c51 的另一個特點(diǎn)是工作速度更高,晶振頻率可高達(dá) 24mhz,一個周期僅 500s,比 msc51 快了一倍。(2)at89c51 增加的功能at89c51 引腳布置和定義與 mcs51

13、完全兼容,電腦由于它具有片內(nèi) fla程序存儲器,一些引腳在編程時能提供專門的用途。p0 口在編程時接受程序代碼,校驗時輸出程序代碼。校驗時要求將 p0 口由外部電路上拉(盡管所有的 i/o 端口都具有內(nèi)置上拉電路);p1 口在編程期間有內(nèi)部多路開關(guān)切換到地址總線,接受編程器送來的低 8 位地址信息;p2 口在編程期間接受編程器送來的高 4 位地址信息,同時 p2 口的另外兩個引腳(p2.6,p2.7)還接受編程與校驗的有關(guān)控制信息;p3 口除了具有與 mcs51 相同的雙功能外,在編程期間,p3.6,p3.7 兩端口線還接受有關(guān)的控制信息;ale/prog 端除了輸出地址鎖存允許(ale)脈沖

14、外,在編程期間還作為編程脈沖輸入端,參與控制對 flash 存儲器的讀、寫、加密、擦除等工作。一般情況下,ale 端輸出頻率為 fose/6 的脈沖,可作為一個要求并不很嚴(yán)格的時鐘源去控制其它芯片和設(shè)備。該(ale)脈沖串僅在每次外部數(shù)據(jù)存儲器存取周期僅有一個 ale 周期被跳過。如果需要,at89c51 的 ale 脈沖輸出可以禁止,只要對特殊寄存器區(qū)域 8eh 單元的 bit0 寫入 1 就禁止了 ale,這時僅當(dāng)單片機(jī)處于movx 或 movc 指令周期時 ale 才生效,否則該引腳呈現(xiàn)弱上拉邏輯狀態(tài)。如果 at89c51 構(gòu)成的系統(tǒng)使用外部存儲器,即處于外部程序執(zhí)行模式,對 8eh 的

15、bit 置 1 將是無效的,不會對系統(tǒng)的正常工作產(chǎn)生影響;/ea/vpp 端在尋址片內(nèi) 4kb flash 程序存儲器(000hfffh)時,必須連到 vcc,如果將此端連到 gnd 端,將迫使單片機(jī)尋址外部 000hfffh 范圍的程序存儲器。如果加密位被編程了,at89c51 的 cpu 將對/ea 的狀態(tài)不得與實(shí)際使用的內(nèi)部或外部程序存儲器的狀態(tài)發(fā)生矛盾。對那些需要 12v 編程電壓的器件。這個端子還接受 12v 編程使用電壓(vpp)。本科生課程設(shè)計(論文)62.6 顯示電路顯示電路由共陽極數(shù)碼管和 10 個 led 組成,通過單片機(jī)位選和所送的數(shù)據(jù)來點(diǎn)亮相應(yīng)的 led 和數(shù)碼管的顯示

16、狀態(tài)。其電路原理圖如圖 2.5 所示: 圖 2.5 顯示電路原理圖2.7 電源電路電源部分為單片機(jī)提供+5v 的直流穩(wěn)壓源,并且通過降壓、整流、濾波之后的+14v 電壓對繼電器進(jìn)行供電,通過控制三極管射極的導(dǎo)通與否來控制繼電器的工作狀態(tài)。電源電路原理圖如圖 2.6 所示v in1gnd2v out3l ?1j?c o n 11j?c o n 11c o n 1c ?c ?c ?c a pc ?c a pq ?v0 0en dn etl abe l8abfcgdedpyledgn1234567abcdefgabfcgdedpyledgnabcdefg89d s1d py_7-segq 1n pn

17、q 3n pnq 4n pnq 2n pnr11res2r10res2r9res2r8res2v ccv ccd 1d io ded 2d io ded 3d io ded 4d io ded 5d io ded 6d io ded 7d io ded 8d io ded 9d io ded 10d io der12res2r13res2r14res2r15res2r16res2r1res2r2res2r3res2r4res2r5res2r6res2r7res2pc1pc2pc3pc4pc5pc6pc7本科生課程設(shè)計(論文)7圖 2.6 電源電路2.8 加熱驅(qū)動電路的設(shè)計為保證驅(qū)動電路可靠工作

18、,其驅(qū)動電路應(yīng)滿足如下要求:1)動態(tài)驅(qū)動能力強(qiáng),能提供驅(qū)動脈沖,使加熱電路迅速導(dǎo)通。2)能提供適當(dāng)?shù)恼蚱珘汉妥銐虻姆聪蚱珘?,使加熱電路可靠的開通和關(guān)斷,一般取正偏電壓為+15v,反偏電壓為-10v 為宜。3)有足夠的輸入輸出電氣隔離能力,使信號電路與柵極驅(qū)動電路隔離,且具有靈敏的短路、過流保護(hù)功能。其中 hp3101 是高速光耦,用于實(shí)現(xiàn)輸入輸出信號的電氣隔離,q1,q2組成功率放大電路,采用+15v 和-10v 雙電源供電,保證正負(fù)偏壓滿足要求。out1、out3 來自控制電路。該驅(qū)動電路能安全接受輸入信號,在接到正確的控制信號后對加熱電路進(jìn)行驅(qū)動,加熱電路開始工作,對外部進(jìn)行加熱,最大功

19、率可達(dá)到 2000w。從而實(shí)現(xiàn)電飯煲的加熱過程。驅(qū)動電路工作原理電路如圖 2.7 所示opt oiso1q1q2r1r2r4r5r6r3+5voutg1e-10vgnd+15v本科生課程設(shè)計(論文)8圖 2.7 驅(qū)動電路工作原理電路2.9 溫度采集部分電路j2 和 j3 是溫度傳感器的兩個接口,其中 j2 和 j3 分別是頂蓋和底盤溫度傳感器的接口,單片機(jī)檢測的信號實(shí)際上是與溫度傳感器分壓的電阻的電壓值,因為溫度傳感器的電阻值會隨溫度的上升而減小,所以分壓電阻的電壓值間接反映了某一時刻的溫度,電路原理圖如圖 2.8 所示:圖 2.8 溫度傳感器熱電阻傳感器主要用于測量溫度及與溫度有關(guān)的參數(shù),在

20、工業(yè)生產(chǎn)中被廣泛用于測量-200 到+500范圍內(nèi)的溫度,按照熱電阻的熱度不同,熱電阻可以分為金屬熱電阻和半導(dǎo)體熱電阻兩類,前者稱為熱電阻,后者稱為熱敏電阻。以熱電阻或熱敏電阻為主要器件制成的傳感器稱為熱電阻傳感器或熱敏電阻傳感器。根據(jù)本設(shè)計中所需要測量的溫度范圍、敏感度、精確度以及考慮其經(jīng)濟(jì)性,熱敏電阻傳感器為最合適的測溫元件。由金屬氧化物的粉末按照一定比例混合燒結(jié)而成的熱敏電阻是今年來出現(xiàn)的一種新型半導(dǎo)體測溫元件。熱敏電阻的工作原理簡單,即在溫度的作用下,熱敏12j2con212j3con212345j1con5vddpa6vddpa7gndvddpa5pa6pa7r1res2r2res2

21、本科生課程設(shè)計(論文)9電阻的有關(guān)參數(shù)將發(fā)生變化,從而變換成電量輸出。以具有負(fù)溫度系數(shù)的熱敏電阻為例,這類熱敏電阻隨著溫度的上升而阻值下降,并在下降過程中把溫度量的變化轉(zhuǎn)換成電量的變化。本系統(tǒng)的對溫度控制的要求是 0150,所以選用熱電偶作測溫元件,熱電偶具有結(jié)構(gòu)簡單、熱容量小、材料的互換性好,滯后效應(yīng)小,信號能夠遠(yuǎn)距離傳送和多點(diǎn)測量,便于檢測和控制等優(yōu)點(diǎn)。在這里根據(jù)本系統(tǒng)的測溫范圍選用國際標(biāo)準(zhǔn)化熱電偶的 k 標(biāo)志熱電偶,k 型熱電偶屬于廉金屬熱電偶,故價格便宜。鑒于以上情況,在設(shè)計溫度測量系統(tǒng)的前向通道中,從簡化電路及程序設(shè)計保證采集精度出發(fā),在以 k 型熱電偶作為溫度傳感器時選擇集成溫度放

22、大器 ad595 使熱電偶的冷端溫度得到補(bǔ)償,并使之輸出信號放大、線性化選擇 icl7135 作為 a/d轉(zhuǎn)換器,利用它的“busy(引腳 21)輸出特性輔以單片機(jī) 89c51 的定時器直接計數(shù),通過一個簡單算法就可以得到最終的溫度值.本科生課程設(shè)計(論文)10ynyn第 3 章 系統(tǒng)軟件設(shè)計3.1 主程序流程從樣機(jī)分析中大致設(shè)計整個系統(tǒng),整個系統(tǒng)輸入包括2個溫度傳感器,5個按鍵;輸出包括2位七段數(shù)碼管、10個發(fā)光二極管、繼電器控制信號等。根據(jù)控制功能,將程序設(shè)計為幾個主要的模塊,程序主流程見圖3.1所示:圖 3.1 控制器軟件流程圖系統(tǒng)時鐘 clock時間復(fù)位時間復(fù)位顯示子程序溫度測量調(diào)用診

23、斷程序采樣值有效嗎?關(guān)掉傳感器開始定時定時到?功能選擇 id 開始工作定時工作時間:xx 分鐘定時工作時間:xx 小時 xx 分鐘程序初始化yn開始定時時間到本科生課程設(shè)計(論文)113.2 子程序介紹3.2.1 診斷子程序診斷程序主要進(jìn)行溫度采集并判斷傳感器是否良好,主要對2個溫度傳感器連續(xù)檢測20次,若測到的數(shù)據(jù)不在范圍內(nèi)(溫度范圍:0150) ,則表明傳感器短路或斷路錯誤,數(shù)碼顯示“e” ,并禁止按鍵操作。 3.2.2 鍵盤掃描子程序程序每循環(huán)一次掃描一次鍵盤,如果掃描到有鍵按下,則暫存鍵值,如果連續(xù)5次掃描到的鍵值都一樣,則認(rèn)為是穩(wěn)定的鍵值。3.2.3 溫度采集子程序熱敏電阻靈敏度高,

24、為了防止干擾及其它原因?qū)е聹y出的溫度值變化太快,引起控制部件頻繁動作,溫度采集采用滑動平均值濾波方法。即在同一個通道上連續(xù)采集三個數(shù)據(jù),取其中的中間值。 3.3 程序清單系統(tǒng)共有 2 位七段數(shù)碼管顯示及 10 個發(fā)光二極管顯示。數(shù)碼管主要有 6 種狀態(tài)需要顯示:待機(jī)狀態(tài)、出錯顯示、燜飯、保溫、煮飯中及定時時間顯示。發(fā)光二極管顯示所選擇的功能、開始及保溫狀態(tài)。功能顯示需采用輪循方式,在按下開始鍵之前,開始燈閃爍。進(jìn)入保溫狀態(tài)后,保溫指示燈亮。led 顯示程序由位碼掃描子程序及數(shù)碼顯示狀態(tài)選定子程序組成。 計時子程序 .iram.public _end_120.var _end_120=0.cod

25、e.public _time_count_time_count: .proc本科生課程設(shè)計(論文)12 r1=_status cmp r1,0 je count_end r1=t1_1 /取第一個數(shù)據(jù)/ r1+=t1_2 /第一個數(shù)據(jù)和第二個數(shù)據(jù)相加/ r1+=t1_3 /前三個數(shù)據(jù)相加/ r1+=t1_4 /前四個數(shù)據(jù)相加/ cmp r1,0 /和與 0 相比較/ je time2_count /等于 0 轉(zhuǎn)到定時 2 的計數(shù)/ r1=_end_120 cmp r1,120 /是否到了 120 次/ jne add_1 /不到轉(zhuǎn)向 add_1 繼續(xù)相加/ r1=0 x00 _end_120=

26、r1 /到了清 0 為下次中斷作準(zhǔn)備/ call _time_count_down1 /調(diào)用預(yù)置減子程序/ jmp time_count_overadd_1: r1=r1+1 _end_120=r1time_count_over: r1=p_ioa_buffer /一次中斷計時后秒點(diǎn)反相/ r2=0 x8000 r1=r2 p_ioa_data=r1 jmp count_endtime2_count:r1=t2_1 /取第一個數(shù)據(jù)/ r1+=t2_2 /第一個數(shù)據(jù)和第二個數(shù)據(jù)相加/ r1+=t2_3 /前三個數(shù)據(jù)相加/ r1+=t2_4 /前四個數(shù)據(jù)相加/ cmp r1,0 je count_

27、end r1=_end_120 cmp r1,120 jne add_2 r1=0 x00本科生課程設(shè)計(論文)13 _end_120=r1 call _time_count_down2 jmp count_endadd_2: r1+=1 _end_120=r1count_end: retf.endp中斷子程序 irq3 .text.public _irq3_irq3: push r1,r5 to sp r1=0 x0080 r1&=p_int_ctrl jnz irq3_is_key r1=0 x0100 r1&=p_int_ctrl jnz irq3_is_exit1 r1=0 x0200

28、 r1&=p_int_ctrl jnz irq3_is_exit2irq3_is_key: p_int_clear=r1 pop r1,r5 from sp retiirq3_is_exit1: p_int_clear=r1 call _f_export /調(diào)用功率輸出子程序/ pop r1,r5 from sp retiirq3_is_exit2: p_int_clear=r1 pop r1,r5 from sp reti本科生課程設(shè)計(論文)14鍵盤掃描子程序.define c_debouncecnt 5; /去抖延時循環(huán)次數(shù)/.ram.var key_buff; /本次鍵值存儲單元/.v

29、ar key_debounce; /計數(shù)單元/.code.public _keyscan;_keyscan:.proc r2=p_ioa_data r2&=0 x001f /讀鍵口/ jnz f_somekeyispressed /有鍵按下跳轉(zhuǎn)進(jìn)行按鍵比較/ r1=0 x0000 key_buff=r1 retff_somekeyispressed: /按鍵比較/ r1=key_buff /讀上次鍵值/ key_buff=r2 /存本次鍵值/ cmp r1,r2 je l_ks_stabletwosample /若按鍵相同跳轉(zhuǎn)進(jìn)行去抖延時/ r1=c_debouncecnt /初始化計數(shù)單元/ key_debounce=r1 r1=0 x0010 retfl_ks_stabletwosample: /去抖延時/ r1=key_debounce jz l_ks_stableoverdebounce /計數(shù)結(jié)束跳轉(zhuǎn)形成鍵碼/ r1-=1 key_debounce=r1 r1=0 x0010 retfl_ks_stableoverdebounce: /形成鍵碼/ r1=key_buff retf.endp本科生課程設(shè)計(論文)15第

溫馨提示

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

評論

0/150

提交評論