版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、單片機系統(tǒng)開發(fā)與應用工程實習報告單片機系統(tǒng)開發(fā)與應用工程實習報告選題名稱選題名稱: 基于 at89s52 的學習型紅外遙控器的設計系(院)系(院): 專專 業(yè)業(yè):計算機科學與技術(嵌入式系統(tǒng)軟件設計)班班 級級: 姓姓 名名: 學學 號號: 指導教師指導教師: 學年學期學年學期: 2009 2010 學年 第 2 學期2010年 5 月 30 日摘要:學習型紅外線遙控器,通過自學習而擁有對多臺電器的遙控功能。該遙控器有兩種狀態(tài):學習狀態(tài)和控制狀態(tài)。處于學習狀態(tài)時,使用者每按一個控制鍵紅外接收電路就開始接收外來紅外信號,并將其轉換為電信號,然后經(jīng)過檢波、整形、放大,再由單片機定時對其采樣,將每個
2、采樣點的二進制數(shù)據(jù)以 8 位為一個單位,分別存放到指定的存儲單元中去,供以后對該設備控制使用;處于控制狀態(tài)時,使用者每按一個控制鍵單片機從指定的存儲單元中讀取二進制數(shù)據(jù),串行輸出(位和位之間的時間間隔等于采樣的時間間隔)給信號保持電路,同時由調(diào)制電路進行信號調(diào)制,將調(diào)制信號經(jīng)放大后,由紅外線發(fā)射二極管進行發(fā)射,從而實現(xiàn)對該鍵對應設備功能的控制。關鍵詞:學習型;紅外線遙控器;學習狀態(tài);控制狀態(tài);at89s52 目 錄1 課題綜述.11.1 課題來源及意義.11.2 預期目標.11.3 面對的問題.11.4 需解決的關鍵技術.12 系統(tǒng)分析.12.1 涉及的基礎知識.12.2 解決問題的基本思路.
3、22.3 總體方案.32.3 功能模塊框圖.33 系統(tǒng)設計.43.1 電路原理圖.43.2 實現(xiàn)方法.53.3 詳細流程圖.54 代碼編寫.64.1 at89s52 單片機與各模塊電路的連接端口分配.64.2 復位電路的設計.64.3 按鍵電路設計的實現(xiàn).74.4 中斷程序的實現(xiàn).84.5 主函數(shù)的實現(xiàn).105 程序調(diào)試.106 運行與測試.11總 結.12參考文獻.13單片機系統(tǒng)開發(fā)與應用工程實習報告11 1 課題綜述課題綜述1.1 課題來源及意義課題來源及意義目前,人們的物質文化生活水平日益提高,各種各樣的家用電器走進了千家萬戶,其中,大多數(shù)的家用電器都有各自不同的遙控器,人們常常為了控制
4、某臺電器到處尋找其對應的遙控器,這樣就給人們的生活帶來了很多步便。為了解決這個問題,笨項目提出了一個多功能遙控器的設計方案:該遙控器可以通過自學習而擁有對多臺電器的遙控功能,既省時又省力,從而使人們免除同時面對眾多遙控器的苦惱。1.2 預期目標預期目標設計一種基于 at89s52 單片機控制的紅外線遙控器,具有以下功能:1、適用于編碼式紅外線遙控型家用電器2、可遙控多臺家用電器3、具有一個學習/控制復用鍵4、可通過一個設備選擇鍵和各個功能控制鍵實現(xiàn)對多臺設備的常用功能的學習和控制5、成本低,抗干擾能力強1.3 面對的問題面對的問題1、對于 at89s52 單片機的了解及應用2、對于抗干擾能力的
5、解決1.4 需解決的關鍵技術需解決的關鍵技術本項目是通過掃描按鍵的狀態(tài)、單片機外中斷 0 和定時/計數(shù)器程序來判斷遙控器處于什么狀態(tài),實現(xiàn)什么功能,因此,對于功能鍵的設計和中斷程序的設計是難點。同時,對于紅外發(fā)射和紅外接收的工作原理和設計對于我們來說也是陌生的,都要從頭開始,對其進行了解、掌握及使用,所以也是一個難題。2 2 系統(tǒng)分析系統(tǒng)分析2.1 涉及的基礎知識涉及的基礎知識通過對本項目的了解,為了實現(xiàn)該項目的各個功能,必須要掌握以下知識點:單片機系統(tǒng)開發(fā)與應用工程實習報告21、電源原理及設計2、單片機復位電路工作原理及設計3、單片機晶振電路工作原理及設計4、按鍵電路的設計5、驅動 74ls
6、07 的特性及使用6、一體化紅外遙控接收器的特性及使用7、at89s52 單片機引腳8、單片機 c 語言程序設計2.2 解決問題的基本思路解決問題的基本思路2.2.1 at89s52 單片機的基本知識功能特性:at89s52 是一種低功耗、高性能 cmos8 位微控制器,具有 8k 在系統(tǒng)可編程 flash 存儲器。使用 atmel 公司高密度非 易失性存儲器技術制造,與工業(yè)80c51 產(chǎn)品指令和引腳完 全兼容。片上 flash 允許程序存儲器在系統(tǒng)可編程,亦適于 常規(guī)編程器。在單芯片上,擁有靈巧的 8 位 cpu 和在系統(tǒng) 可編程 flash,使得at89s52 為眾多嵌入式控制應用系統(tǒng)提
7、供高靈活、超有效的解決方案。 at89s52 具有以下標準功能: 8k 字節(jié) flash,256 字節(jié) ram, 32 位 i/o 口線,看門狗定時器,2 個數(shù)據(jù)指針,三個 16 位 定時器/計數(shù)器,一個 6 向量 2 級中斷結構,全雙工串行口, 片內(nèi)晶振及時鐘電路。另外,at89s52 可降至 0hz 靜態(tài)邏 輯操作,支持 2 種軟件可選擇節(jié)電模式??臻e模式下,cpu 停止工作,允許 ram、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護方式下,ram 內(nèi)容被保存,振蕩器被凍結,單片機一切工作停止,直到下一個中斷或硬件復位為止。8 位微控制器 8k 字節(jié)在系統(tǒng)可編程 flash at89s52
8、。主要性能:與 mcs-51 單片機產(chǎn)品兼容、8k 字節(jié)在系統(tǒng)可編程 flash 存儲器、1000 次擦寫周期、全靜態(tài)操作:0hz33hz 、 三級加密程序存儲器 、32 個可編程i/o 口線 、三個 16 位定時器/計數(shù)器八個中斷源、全雙工 uart 串行通道、低功耗空閑和掉電模式、掉電后中斷可喚醒、看門狗定時器、雙數(shù)據(jù)指針、掉電標識符。單片機系統(tǒng)開發(fā)與應用工程實習報告3圖 2-1 at89s52 引腳圖2.2.2 對于抗干擾能力的解決該項目中采用一體化紅外遙控接收器 hx1838,該接收器的內(nèi)部包括紅外光敏二極管、諧振電路、放大電路、解碼器、濾波器等,其工作電壓為+5v,輸出引腳直接輸出不
9、帶副載波的負極性 rc-5v 信號,具有電路簡單、靈敏度高、抗干擾性好等優(yōu)點。2.3 總體方案總體方案學習型紅外線遙控器,通過自學習而擁有對多臺電器的遙控功能。該遙控器有兩種狀態(tài):學習狀態(tài)和控制狀態(tài)。處于學習狀態(tài)時,使用者每按一個控制鍵紅外接收電路就開始接收外來紅外信號,并將其轉換為電信號,然后經(jīng)過檢波、整形、放大,再由單片機定時對其采樣,將每個采樣點的二進制數(shù)據(jù)以 8 位為一個單位,分別存放到指定的存儲單元中去,供以后對該設備控制使用;處于控制狀態(tài)時,使用者每按一個控制鍵單片機從指定的存儲單元中讀取二進制數(shù)據(jù),串行輸出(位和位之間的時間間隔等于采樣的時間間隔)給信號保持電路,同時由調(diào)制電路進
10、行信號調(diào)制,將調(diào)制信號經(jīng)放大后,由紅外線發(fā)射二極管進行發(fā)射,從而實現(xiàn)對該鍵對應設備功能的控制。2.3 功能模塊框圖功能模塊框圖遙控器由紅外接收及紅外發(fā)射電路、復位電路、控制器 at89s52、按鍵及狀態(tài)指示電路組成,其組成框圖如圖 2-1 所示。單片機系統(tǒng)開發(fā)與應用工程實習報告4圖 2-2 基于 at89s52 學習型紅外線遙控器系統(tǒng)框圖3 3 系統(tǒng)設計系統(tǒng)設計3.1 電路原理圖電路原理圖控制芯片選擇 at89s52 單片機,控制系統(tǒng)按最小化工作模式設計,p1.0 接紅外線發(fā)射,p1.6 和 p1.7 接兩個發(fā)光二極管用來指示遙控器的工作狀態(tài),p3.4 和 p3.5 用來接收和發(fā)射紅外線。紅外
11、接收采用一體化紅外遙控接收器(hx1838) 。其原理圖如圖 3-1 所示。at89s52控制器紅外接收電路狀態(tài)指示電路復位電路電源電路紅外發(fā)射電路單片機系統(tǒng)開發(fā)與應用工程實習報告5圖 3-1 基于 at89s52 學習型紅外遙控器原理圖3.2 實現(xiàn)方法實現(xiàn)方法當紅外遙控器的某個按鍵按下時,發(fā)射出的一組串行二進制編碼脈沖,該脈沖由引導碼、系統(tǒng)碼、功能碼和反碼組成,通過設置這些編碼以及碼長便可區(qū)分不同的紅外遙控器。紅外接收器負責紅外信號的接收和放大并解調(diào)出 ttl 電平信號送至微處理器進行處理,微處理器通過比較和識別接收來的紅外遙控編碼便可執(zhí)行相應的遙控功能,本系統(tǒng)的設計思想是不考慮紅外編碼方式
12、,僅利用單片機 at89s52 對多個紅外遙控編碼的脈沖寬度進行測量,并原封不動地把發(fā)射信號中高、低電平的時間寬度記憶至存儲區(qū)的指定地址。當要發(fā)射紅外信號時,從存儲區(qū)中還原出相應的紅外遙控編碼,并調(diào)制到 38khz 的載波信號上,最后,通過 74ls07 驅動發(fā)光二極管發(fā)射紅外信號,達到學習和發(fā)射的目的,從而實現(xiàn)一個遙控器控制多種遙控設備的功能。3.3 詳細流程圖詳細流程圖在程序中主程序完成初始化、按鍵掃描和調(diào)用信號發(fā)射程序的功能,學習功能通過中斷 0 來完成。程序的具體流程圖如圖 3-2 所示。(a)主程序流程圖 (b)中斷程序流程圖圖 3-2 基于 at89s52 學習型紅 外線遙控器程序
13、流程圖y開始初始化掃描按鍵?信號發(fā)射ny結束?中斷開始開學習指示燈等待鍵釋放讀遙控碼存學習標志,關指示燈結束n單片機系統(tǒng)開發(fā)與應用工程實習報告64 4 代碼編寫代碼編寫4.1 at89s52 單片機與各模塊電路的連接端口分配單片機與各模塊電路的連接端口分配p1.6 和 p1.7 分別接學習燈指示燈和發(fā)射指示燈sbit studylamp=p16;/學習指示燈sbit lamp=p17;/發(fā)射指示燈sbit studykey=p32;/學習鍵(中斷口)sbit remotein=p34;/遙控信號輸入口sbit remoteout=p35;/遙控信號輸出口sbit txkey=p10;/發(fā)射鍵4
14、.2 復位電路的設計復位電路的設計復位電路實現(xiàn)的是對單片機以及整個電路的初始化 uint i,j,m=255,n,k,s;/定義各個變量uchar idata remotedata206;/存脈沖寬度數(shù)據(jù)用uint head;/存起始位用uint remdata;clearmen()/初始化函數(shù)studylamp=0;/關學習指示燈lamp=0;/關發(fā)射指示燈remoteout=0;/關遙控輸出remotein=0;for(i=0;i206;i+)/清內(nèi)存remotedatai=0 x00;ie=0 x00;/中斷允許控制寄存器置 0ip=0 x01;/定義中斷優(yōu)先級tmod=0 x22;/8
15、 位自動重裝模式單片機系統(tǒng)開發(fā)與應用工程實習報告7pcon=0 x00;/定時器溢出位清零th1=0 xf3;/40khz 初值tl1=0 xf3;it0=1;/脈沖觸發(fā)方式,負跳變有效ex0=1;/外中斷允許ea=1;/開總中斷定義延時 1ms 子程序delay1ms(uint t)/1ms 延時子程序for(i=0;it;i+)for(j=0;j0;i-);remoteout=0;et1=0;tr1=0;n=0;while(1)if(remotedatan=0 x00)/數(shù)據(jù)為 0 結束單片機系統(tǒng)開發(fā)與應用工程實習報告8delay1ms(10);break;for(i=remotedata
16、n;i0;i-)_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();lamp=lamp;n+;/偶地址不發(fā)脈沖et1=1;tr1=1;/奇地址發(fā)調(diào)制脈沖for(i=remotedatan;i0;i-);remoteout=0;et1=0;tr1=0;n+;4.4 中斷程序的實現(xiàn)中斷程序的實現(xiàn)4.4.1 定時器中斷 t1 的服務程序定時器中斷 t1 的服務程序,實現(xiàn)控制紅外發(fā)射燈是否發(fā)射。當 remoteout 為低電平時,紅外發(fā)射處于工作狀態(tài),會發(fā)出紅外信號;當送入的為高電平時,紅外發(fā)射不工作。void
17、 time_intt1(void) interrupt 3/定時器中斷 t1remoteout=remoteout;4.4.2 外中斷 0 的服務程序外中斷服務程序實現(xiàn)的是接收遙控器發(fā)射的紅外信號,判斷其高低電平,并存入單片機指定的位置,以供當系統(tǒng)處于學習狀態(tài)時,該紅外遙控器進行學習,并控制家單片機系統(tǒng)開發(fā)與應用工程實習報告9電的使用。void intt0(void) interrupt 0/外中斷 0et1=0;tr1=0;ex0=0;ea=0;head=0;studylamp=1;lamp=0;while(studykey=0);/等待鍵釋放while(remotein=1);/等待遙控碼
18、輸入head=0;/讀入起始位while(remotein=0)_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();head+;n=0;remdata=0 x0000;while(1)while(remotein=1)_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_
19、nop_();_nop_();_nop_();remdata+;if(remdatam)/高電平5ms 退出remotedatan=0 x00;ex0=1;ea=1;goto end;remotedatan=remdata;單片機系統(tǒng)開發(fā)與應用工程實習報告10n+;/存高電平脈寬數(shù)據(jù)remdata=0 x0000;/脈寬計數(shù)器清零while(remotein=0)_nop_();_nop_();_nop_();_nop_();_nop_();nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_(
20、);remdata+;/低電平計數(shù)remotedatan=remdata;/存低電平脈寬數(shù)據(jù)n+;remdata=0 x00;end:lamp=1;studylamp=0;4.5 主函數(shù)的實現(xiàn)主函數(shù)的實現(xiàn)主函數(shù)只需調(diào)用初始化函數(shù)實現(xiàn)電路復位,調(diào)用按鍵函數(shù)實現(xiàn)學習、控制功能。main()clearmen();while(1)keywork();/按鍵掃描5 5 程序調(diào)試程序調(diào)試各個函數(shù)實現(xiàn)后,對該函數(shù)整體實現(xiàn),并進行調(diào)試了,調(diào)試過程中出現(xiàn)了一些低級錯誤,如變量的書寫錯誤,定義的錯誤等等,但整體的模塊規(guī)劃設計實現(xiàn)跟設想的還是一樣比較完整、正確的,故軟件的實現(xiàn)還是比較順利的。單片機系統(tǒng)開發(fā)與應用工程
21、實習報告116 6 運行與測試運行與測試本項目設計的是一個多功能紅外線遙控器,控制電路板的安裝與調(diào)試在整個系統(tǒng)研制中占有重要位置,它是把理論付諸實踐的過程,也是把紙面設計轉變成實際產(chǎn)品的必經(jīng)階段。在調(diào)試過程中藥注意以下幾個特點。(1) 正確使用測量儀器的接地端,儀器的接地端與電路的接地端要可靠連接。(2) 在信號較弱的輸入端,盡可能使用屏蔽線連線,屏蔽線的外屏蔽層要接到公共地線上,在頻率較高時要設法隔離連接線分布電容的電影,例如用示波器測量時應該使用使用示波器探頭連接,以減少分布電容的影響。(3) 測量電壓所用儀器的輸入阻抗必須遠大于被測處的等效阻抗。(4) 測量儀器的帶寬必須大于被測量電路的
22、帶寬。(5) 正確選擇測量點和測量。(6) 認真觀察記錄實驗過程,包括條件、現(xiàn)象、數(shù)據(jù)、波形、相位等。(7) 出現(xiàn)故障時要認真查找原因。在程序調(diào)試成功之后,我將該程序燒入 at89s52 芯片中,并對整個系統(tǒng)進行了測試。剛開始時,當按下學習鍵時,其學習指示燈不亮,于是,我用萬能表對焊接的狀態(tài)指示電路進行了測試,最后發(fā)現(xiàn)是與單片機的 p1.6 端口接入處沒有焊實。但經(jīng)焊實后,發(fā)現(xiàn)跟我要系統(tǒng)實現(xiàn)的功能還是不完全,于是我又對程序進行了修改,經(jīng)多次燒寫、運行、調(diào)試,終于實現(xiàn)了學習型紅外線遙控功能。遙控器在使用時按下學習鍵,待學習指示燈亮后,用原遙控器對著紅外接收頭按下某一功能鍵,當學習指示燈滅時,就可
23、按發(fā)射鍵進行遙控操作了。本設計還有較多的擴展空間,若在系統(tǒng)中擴展一個存儲器,再加入相應的按鍵就可以制作成一個學習型的萬能遙控器。單片機系統(tǒng)開發(fā)與應用工程實習報告12總總 結結本次單片機系統(tǒng)開發(fā)與應用工程實習報告前后歷時兩周。此次工程實習的前一周,我們對整個系統(tǒng)的進行了深入的了解,并對其進行了整體規(guī)劃,分別劃分為 at89s52控制器模塊、紅外接收電路模塊、紅外發(fā)射電路模塊、狀態(tài)指示電路模塊、復位電路模塊、電源電路模塊。當我把該系統(tǒng)的模塊確定以后,就初步畫出該系統(tǒng)的硬件電路原理圖,經(jīng)過確定以后,就開始了硬件電路的焊接。經(jīng)過對焊接的電路運行和測試成功后,就對軟件設計進行了簡單的設計。實習的第二周主要是將程序燒寫入硬件電路中,并對其進行運行與調(diào)試。在學習這門課程時,感到單片機的概念抽象,對其中的引腳的分配、寄存器的功能等基本理論也不能很好地理解與掌握。通過本次工程實習,我對學到的單片機知識有了更深一步的深入,而且,本次實習讓我對于實踐也有了基本認識。剛開始時,我有的只是書本上的東西,只有表面記憶,通過該次實習,我對其有了進一步的了解,如at89s52 單片機芯片的具體功能、默認輸出的值,元器件的如何正確焊接,如何驗證元器件的焊接是否正確等等。本次工程實習是本科學習階段很有價值的理論與實踐相結合的機會,這次實習能這么順利的完成,首先感謝淮陰工學院、計算機工程學院提供
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度個人經(jīng)營性貸款還款協(xié)議模板8篇
- 二零二五年廢棄物處理及廢品回收承包合同書3篇
- 二零二五年度倉儲租賃與智能化改造合同3篇
- 二零二五年度外資獨資公司股權變更操作細則合同
- 2025年個人汽車維修服務質押擔保合同3篇
- 2025版高端餐飲集團租賃管理與服務保障合同3篇
- 個人委托支付事務具體合同版B版
- 2024酒店裝修設計合同
- 2025年度智能果園蘋果采購與銷售管理合同4篇
- 2025年度園林景觀設計專利授權許可合同3篇
- 碳纖維增強復合材料在海洋工程中的應用情況
- 多重耐藥菌病人的管理-(1)課件
- (高清版)TDT 1056-2019 縣級國土資源調(diào)查生產(chǎn)成本定額
- 環(huán)境監(jiān)測對環(huán)境保護的意義
- 2023年數(shù)學競賽AMC8試卷(含答案)
- 神經(jīng)外科課件:神經(jīng)外科急重癥
- 2024年低壓電工證理論考試題庫及答案
- 2023年十天突破公務員面試
- 《瘋狂動物城》中英文對照(全本臺詞)
- 醫(yī)院住院醫(yī)師規(guī)范化培訓證明(樣本)
- 小學六年級語文閱讀理解100篇(及答案)
評論
0/150
提交評論