遙控器控制單片機PWM輸出設計-課程設計論文_第1頁
遙控器控制單片機PWM輸出設計-課程設計論文_第2頁
遙控器控制單片機PWM輸出設計-課程設計論文_第3頁
遙控器控制單片機PWM輸出設計-課程設計論文_第4頁
遙控器控制單片機PWM輸出設計-課程設計論文_第5頁
已閱讀5頁,還剩26頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、單片機原理及接口技術設計說明書遙控器控制單片機PWM輸出設計課程設計任務書20212021學年 第1學期課程設計名稱: 單片機原理及接口技術 設計題目:遙控器控制單片機PWM輸出設計設計依據(jù)、要求及主要內(nèi)容:一課程設計的目的1.進一步熟悉和掌握單片機的結(jié)構(gòu)及工作原理。2.掌握單片機的接口技術及相關外圍芯片的外特性,控制方法。3.通過課程設計,掌握以單片機核心的電路設計的根本方法和技術。4.通過實際程序設計和調(diào)試,逐步掌握模塊化程序設計方法和調(diào)試技術。5.通過完成一個包括電路設計和程序開發(fā)的完整過程,了解開發(fā)一單片機應用系統(tǒng)的全過程,為今后從事相應開發(fā)打下根底。二課程設計的根本要求1.認真認識設

2、計的意義,掌握設計工作程序,學會使用工具書和技術參考資料,并培養(yǎng)科學的設計思想和良好的設計作風。2.提高模型建立和設計能力,學會應用相關設計資料進行設計計算的方法。3.提高獨立分析、解決問題的能力,逐步增強實際應用訓練。4.課程設計的說明書要求簡潔、通順,計算正確,圖紙表達內(nèi)容完整、清楚、標準。5.課程設計說明書封面格式要求見?天津城市建設學院課程設計教學工作標準?附表1。三課程設計具體要求a) 要求每位同學獨立完成設計任務。b) 原理圖設計1.原理圖設計要符合工程的工作原理,連線要正確。2.圖中所使用的元器件要合理選用,電阻、電容等器件的參數(shù)要正確標明。3.原理圖要完整,CPU、外圍器件、外

3、擴接口、輸入/輸出裝置要一應俱全。c) 程序調(diào)計1.根據(jù)要求,將總體功能分解成假設干個子功能模塊,每個功能模塊完成一個特定的功能。2.根據(jù)總體要求及分解的功能模塊,確定各功能模塊之間的關系,設計出完整的程序流程圖。d) 程序調(diào)試1.編寫相關程序,并進行仿真。2.將程序下載到單片機,進行運行調(diào)試。e) 設計說明書簡要說明設計目的,原理圖中所使用的元器件功能及在圖中的作用,各器件的工作過程及順序。對程序設計總體功能及結(jié)構(gòu)進行說明,對各子模塊的功能以及各子模塊之間的關系作較詳細的描述。3.畫出工作原理圖,程序流程圖并給出相應的程序清單。四 設計任務STC12C5A60S2引腳排序及根本功能同AT89

4、S51作為主控芯片,設計PWM輸出控制電路。一是設計遙控接收電路,作為PWM的參數(shù)輸入;二是用PWM輸出控制發(fā)光二級管,觀察PWM輸出不同占空比下發(fā)光二級管的亮度變化;三是根據(jù)需要擴展MAX7219數(shù)碼管或LCD1602等,顯示相應的輸入?yún)?shù)。指導教師簽字: 教研室主任簽字: 批準日期: 年 月 日目 錄 TOC o 1-3 h z u HYPERLINK l _Toc345493916 第1章.總體設計方案 PAGEREF _Toc345493916 h 1 HYPERLINK l _Toc345493917 主要設計模塊概述 PAGEREF _Toc345493917 h 1 HYPERL

5、INK l _Toc345493918 1.1.1 關于PWM介紹 PAGEREF _Toc345493918 h 1 HYPERLINK l _Toc345493919 關于遙控器工作方式的介紹 PAGEREF _Toc345493919 h 1 HYPERLINK l _Toc345493920 1.1.3 LED燈亮度及亮度檔位顯示 PAGEREF _Toc345493920 h 2 HYPERLINK l _Toc345493921 1.2 設計實現(xiàn)原理 PAGEREF _Toc345493921 h 3 HYPERLINK l _Toc345493922 1.2.1 實現(xiàn)設計的大體思

6、路 PAGEREF _Toc345493922 h 3 HYPERLINK l _Toc345493923 1.2.2 總體框圖 PAGEREF _Toc345493923 h 3 HYPERLINK l _Toc345493924 第2章 硬件電路設計 PAGEREF _Toc345493924 h 4 HYPERLINK l _Toc345493925 2.1 LED小燈點亮模塊 PAGEREF _Toc345493925 h 4 HYPERLINK l _Toc345493926 2.2 LCD1602顯示數(shù)據(jù)模塊 PAGEREF _Toc345493926 h 4 HYPERLINK

7、l _Toc345493927 第3章 軟件編程設計 PAGEREF _Toc345493927 h 5 HYPERLINK l _Toc345493928 3.1 各模塊程序設計 PAGEREF _Toc345493928 h 5 HYPERLINK l _Toc345493929 3.1.1 PWM使LED小燈的點亮編程 PAGEREF _Toc345493929 h 5 HYPERLINK l _Toc345493930 3.1.2 LCD1602液晶屏顯示編程 PAGEREF _Toc345493930 h 7 HYPERLINK l _Toc345493931 3.1.3 遙控器控制

8、編程 PAGEREF _Toc345493931 h 9 HYPERLINK l _Toc345493932 3.2 最終完整程序 PAGEREF _Toc345493932 h 9 HYPERLINK l _Toc345493933 第4章 設計的仿真 PAGEREF _Toc345493933 h 10 HYPERLINK l _Toc345493934 4.1 各個模塊仿真 PAGEREF _Toc345493934 h 10 HYPERLINK l _Toc345493935 4.1.1 PWM使小燈點亮的仿真 PAGEREF _Toc345493935 h 10 HYPERLINK

9、l _Toc345493936 4.1.2 LCD1602仿真實現(xiàn) PAGEREF _Toc345493936 h 10 HYPERLINK l _Toc345493937 4.2 整合電路圖仿真結(jié)果 PAGEREF _Toc345493937 h 11 HYPERLINK l _Toc345493938 4.3 示波器對于PWM的檢測結(jié)果 PAGEREF _Toc345493938 h 11 HYPERLINK l _Toc345493939 第5章 課設心得體會 PAGEREF _Toc345493939 h 12 HYPERLINK l _Toc345493940 附錄 PAGEREF

10、_Toc345493940 h 13 HYPERLINK l _Toc345493941 參考文獻 PAGEREF _Toc345493941 h 19 本次課程設計要求用遙控器控制單片機PWM輸出來到達控制LED燈亮度的目的。首先,我們將設計分為三大塊:第一塊,要知道什么是PWM,PWM要如何應用;第二塊,要知道遙控器的工作原理;第三塊LED小燈的亮度和亮度的檔位的具體數(shù)值的顯示。總的來說,就是搞清楚每一個環(huán)節(jié),然后將其柔和到一起去。1.1.1 關于PWM介紹 PWM是一種對模擬信號電平進行數(shù)字編碼的方法。通過高分辨率計數(shù)器的使用,方波的占空比被調(diào)制用來對一個具體模擬信號的電平進行編碼。PW

11、M信號仍然是數(shù)字的,因為在給定的任何時刻,滿幅值的直流供電要么完全有(ON),要么完全無(OFF)。電壓或電流源是以一種通(ON)或斷(OFF)的重復脈沖序列被加到模擬負載上去的。通的時候即是直流供電被加到負載上的時候,斷的時候即是供電被斷開的時候。只要帶寬足夠,任何模擬值都可以使用PWM進行編碼。針對本次課程設計的要求,我們需要應用PWM眾多控制方法中的一種重要的控制理論:采樣控制理論,即:沖量相等而形狀不同的窄脈沖加在具有慣性的環(huán)節(jié)上時,其效果根本相同。根據(jù)這一理論,我們對半導體開關器件的導通和關斷進行控制,使輸出端得到一系列幅值相等而寬度不相等的脈沖,用這些脈沖來代替正弦波或其他所需要的

12、波形.按一定的規(guī)那么對各脈沖的寬度進行調(diào)制,既可改變逆變電路輸出電壓的大小。 針對課程設計的要求,我們采用紅外遙控器,通過給外部中斷一個開中斷信號并且經(jīng)過紅外接收模塊處理后使外部信息以不均勻的時序碼形式傳輸給主控芯片,已到達對LED等亮度的控制.紅外遙控器的發(fā)送數(shù)據(jù)要依據(jù)規(guī)定的數(shù)據(jù)格式。具體的發(fā)送格式如下列圖:圖1.1 遙控數(shù)據(jù)發(fā)送格式遙控器的接收數(shù)據(jù)局部是將從遙控器接收到的數(shù)據(jù)信號進行放大之后在傳輸?shù)街骺匦酒镞M行下一步的操作。1.1.3 LED燈亮度及亮度檔位顯示 1根據(jù)課設要求,我們用IED燈來客觀的反映在不同的檔位下小燈的不同的亮度。LEDLight Emitting Diode即發(fā)光

13、二極管,它是一種固態(tài)的半導體器件,可以直接把電轉(zhuǎn)化為光。LED的心臟是一個半導體的晶片,晶片的一端附在一個支架上,一端是負極,另一端連接電源的正極,使整個晶片被環(huán)氧樹脂封裝起來。它通過將電壓加在LED的PN結(jié)兩端,使PN結(jié)本身形成一個能級實際上,是一系列的能級,然后電子在這個能級上躍變并產(chǎn)生光子來發(fā)光的。2針對小燈不同亮度不同顯示的要求,我們應用LCD1602來顯示。LCD1602液晶也叫1602字符型液晶,它是一種專門用來顯示字母、數(shù)字、符號等的 HYPERLINK :/baike.baidu /view/545607.htm t _blank 點陣型液晶模塊。1602識別的是ASCII碼,

14、試驗可以用ASCII碼直接賦值,在 HYPERLINK :/baike.baidu /view/1012.htm t _blank 單片機 HYPERLINK :/baike.baidu /view/3281.htm t _blank 編程中還可以用字符型 HYPERLINK :/baike.baidu /view/346799.htm t _blank 常量或 HYPERLINK :/baike.baidu /view/296689.htm t _blank 變量賦值.它與AT89C51主控芯片鏈接如圖1.2所示:圖1.2 LCD1602連接主控芯片 LCD1602的程序?qū)懭胄枰袷匾幌盗械?/p>

15、時許規(guī)律,具體如圖1.3:圖1.3 LCD1602寫操作時序根據(jù)圖1.3對需要顯示的數(shù)據(jù)8位二進制代碼進行程序編寫就可以順利的在顯示屏上的看到想要顯示的數(shù)據(jù)。1.2 設計實現(xiàn)原理1.2.1 實現(xiàn)設計的大體思路 首先,我們進過前面的介紹已經(jīng)知道了LED小燈的工作原理是通過電壓點亮,所以,通過PWM對上下電平的可調(diào)特性對LED小燈亮燈時間進行控制,即對給小燈的電壓時常進行控制,因為電壓加在LED小燈上的時間越長在小燈未到達最大亮度的時間段內(nèi)小燈就越亮,PWM的控制原理是通過可調(diào)的占空比PWM=H/(H+L)對供應小燈的電壓進行控制,這里的H是一個周期內(nèi)高電平時間長度,L是一個周期內(nèi)低電平時間長度。

16、本課設是通過控制高電平的時常來控制電壓供應LED小燈的時長進而到達控制LED小燈亮度的目的。此時,通過紅外發(fā)射器將信號以NEC格式信號發(fā)送給接收端,接收端將信號放大并將信號傳送至外部中斷INT0口,通過軟件編程對時許信號進行解碼,然后對解碼后的數(shù)據(jù)再進行一系列的軟件編程使遙控器能控制LED燈和LCD1602液晶屏。1.2.2 總體框圖圖1.4 總體框圖第2章 硬件電路設計2.1 LED小燈點亮模塊 這里的LED小燈點亮是說經(jīng)過實際的操作,小燈已經(jīng)可以根據(jù)輸入數(shù)據(jù)的不同而改變亮度了。通過控制占空比從而控制加在小燈上的電壓,以到達控制小燈亮度的目的。其中我們還應用了74HC573。74HC573的

17、八個鎖存器都是透明的D 型鎖存器,當使能G為高時,Q 輸出將隨數(shù)據(jù)D輸入而變。當使能為低時,輸出將鎖存在已建立的數(shù)據(jù)電平上。輸出控制不影響鎖存器的內(nèi)部工作,即老數(shù)據(jù)可以保持,甚至當輸出被關閉時,新的數(shù)據(jù)也可以置入。這種電路可以驅(qū)動大電容或低阻抗負載,可以直接與系統(tǒng)總線接口并驅(qū)動總線,而不需要外接口。特別適用于緩沖存放器,I/O 通道,雙向總線驅(qū)動器和工作存放器。應用74HC573的目的是拓展I/O端口。以便需要更多外接設備的時候能夠用。圖2.1 點亮LED小燈電路圖2.2 LCD1602顯示數(shù)據(jù)模塊 根據(jù)LCD1602的使能拐腳的連接特點,同時遵照它送數(shù)據(jù)和命令的時鐘的時序操作圖,我們畫出了如

18、下列圖所示的電路圖:圖2.2 LCD1602電路圖第3章 軟件編程設計3.1 各模塊程序設計3.1.1 PWM使LED小燈的點亮編程 1程序設計思路框圖:圖3.1 程序編寫框圖2 程序如下:#include#define uchar unsigned char#define uint unsigned intuchar LTIME = 5;uchar HTIME = 5;uchar currentNum,clockNum;uchar param,tmpClock;void init_pmw() /初始化tmpClock = param = clockNum = currentNum = 0;

19、/參數(shù)設置為0TMOD = TMOD | 0 x01; /使用定時器T0TH0 = 0 xff;/每10us中斷一次TL0 = 0 xf6;ET0 = 1;EA = 1;TR0 = 1;void delayms(uchar ms)/延遲ms毫秒uchar I,j;for(I = ms;i!=0;-i)for(j=110;j!=0;-j);void updateHTIME(uint param)/更新高電平持續(xù)時間的參數(shù)HTIME = param;void updateLTIME(uint param) /更新低電平持續(xù)時間的參數(shù)LTIME = param;void setParam(uchar

20、 p) /設置參數(shù)paramparam = p;uchar getHTIME()return HTIME;uchar getLTIME()return LTIME;void T0_Interrupt_Process() interrupt 1 /中斷效勞程序,改變閃爍的頻率TH0 = 0 xff;TL0 = 0 xf6;currentNum+;if(currentNum = LTIME)P1 = 0 x00;else if(currentNum 0)if(+tmpClock = 200)tmpClock = 0;HTIME -= 1;3.1.2 LCD1602液晶屏顯示編程(1)子程序流程圖圖

21、3.2 程序框圖 (2) 程序如下:#include#define uchar unsigned charsbit lcden = P34;sbit lcdrs = P35;sbit duanxuan = P26;sbit weixuan = P27;void delaytime(uchar time)uchar i,j;for(i=time;i!=0;-i)for(j=110;j!=0;-j);void writeCom(uchar com)lcdrs = 0;lcden = 0;P0 = com;delaytime(5);lcden = 1;/改delaytime(5);lcden = 0

22、;void writeDate(uchar date)lcdrs = 1;P0 = date;delaytime(5);lcden = 1;/改delaytime(5);lcden = 0;void clearn()writeCom(0 x01); /清屏writeCom(0 x80);/從頭顯示void init_lcd()weixuan = 0;duanxuan = 0;writeCom(0 x38);/設置格式啟動writeCom(0 x0c); /關光標開顯示writeCom(0 x01);/清屏writeCom(0 x80);/從頭顯示writeCom(0 x06);/寫一個字符后地

23、址光標自動加一3.1.3 遙控器控制編程 由于遙控器程序編寫篇幅較大請讀者見附錄:3.2 最終完整程序程序如下:#include#include1836.h1836.h見附錄#define uchar unsigned charvoid init()init_1836();void main()init();while(1);第4章 設計的仿真4.1 各個模塊仿真4.1.1 PWM使小燈點亮的仿真將編寫好的程序語言添加到畫好的電路圖后,將其進行仿真便會得到如下列圖的仿真圖顯示:圖4.1 LED顯示仿真圖4.1.2 LCD1602仿真實現(xiàn)將正確的程序?qū)懭胫螅瑢CD1602數(shù)據(jù)顯示局部的仿真結(jié)

24、果如下列圖:圖4.2 LCD1602仿真圖4.2 整合電路圖仿真結(jié)果 將各個模塊的電路圖整合好之后,將整合好的程序添加到主控股芯片,然后對整個電路圖進行仿真得到的仿真結(jié)果如下列圖所示:圖4.3 總電路圖仿真結(jié)果4.3 示波器對于PWM的檢測結(jié)果第5章 課設心得體會俗話說“好的開始是成功的一半。說起課程設計,我有很多很多話想要講,因為在做課程設計的過程中,我認識到了很多,明白了很多,也學到了很多??傮w來講在自己動手的過程中我鍛煉了自己的思考能力和動手能力。通過題目判斷和設計電路的過程中,加強了我思考問題的完整性和實際生活聯(lián)系的可行性。在方案設計選擇和芯片的選擇上,培養(yǎng)了我們綜合應用單片機的能力,

25、對單片機的各個管腳的功能也有了進一步的認識。還鍛煉我們個人的查閱技術資料的能力,動手能力,發(fā)現(xiàn)問題,解決問題的能力。并且我們熟練掌握了有關器件的性能及測試方法。謝老師的輔導以及同學的幫助,是他們讓我有了一個更好的認識,無論是學習還是生活,生活是實在的,要踏實走路。課程設計時間雖然很短,但我學習了很多的東西,使我眼界翻開,感受頗深。也使我懂得了理論與實際相結(jié)合是很重要的,只有理論知識是遠遠不夠的,只有把所學的理論知識與實踐相結(jié)合起來,從理論中得出結(jié)論,才能真正為社會效勞,從而提高自己的實際動手能力和獨立思考的能力。在設計的過程中遇到問題,可以說得是困難重重,這畢竟第一次做的,難免會遇到過各種各樣

26、的問題,同時在設計的過程中發(fā)現(xiàn)了自己的缺乏之處,對以前所學過的知識理解得不夠深刻,掌握得不夠牢固。這次課程設計終于順利完成了,在設計中遇到了很多專業(yè)知識問題,最后在老師的辛勤指導下,終于游逆而解。同時,在老師的身上我們學也到很多實用的知識,在次我們表示感謝!同時,對給過我?guī)椭乃型瑢W和各位指導老師再次表示忠心的感謝!附錄遙控器控制變成如下:#include /包含單片機存放器的頭文件#include /包含_nop_()函數(shù)定義的頭文件#includepmw.h#includelcd.h#define uchar unsigned char#define uint unsigned int#

27、define delayNOP(); _nop_();_nop_();_nop_();_nop_();sbit IRIN=P32; /紅外接收器數(shù)據(jù)線uchar is_ok;uchar IRCOM7;uchar m;uint ge,shi,bai;/*unsigned char i;while(x-)for (i = 0; i13; i+)uchar getRevDate()while(!is_ok);is_ok = 0;return m;void checkChange(uint num)ge = (num % 10)+0 x30;shi = (num % 100 / 10)+0 x30;b

28、ai = (num / 100)+0 x30;void writeString(uchar *s,uchar num)uchar i;writeCom(0 x06);for(i=0;i!=num;+i)writeDate(*(s+i);void print(uchar h,uchar l)float pwmValue = h/(h+l)*100.0;uint htime = h*10;uint ltime = l*10;clearn();writeCom(0 x80);writeString(HT:,3);checkChange(htime);writeDate(bai);writeDate(

29、shi);writeDate(ge);writeString(us,2);checkChange(ltime);writeString(LT:,3);writeDate(bai);writeDate(shi);writeDate(ge);writeString(us,2);checkChange(pwmValue);writeCom(0 x80+0 x40);/占空比顯示writeString(PWM:,4);writeDate(bai);writeDate(shi);writeDate(ge);writeDate(%);void init_1836()init_pmw();init_lcd(

30、);IRIN=1; /I/O口初始化IE= IE | 0 x81; /允許總中斷中斷,使能 INT0 外部中斷TCON=TCON|0 x01; /觸發(fā)方式為脈沖負邊沿觸發(fā)print(getHTIME(),getLTIME();void INT0_Interrupt_Process() interrupt 0unsigned char j,k,N=0;unsigned char q=0;EX0 = 0; delay(15);if (IRIN=1) EX0 =1;return; /確認IR信號出現(xiàn)while (!IRIN) /等IR變?yōu)楦唠娖?,跳過9ms的前導低電平信號。delay(1);for (j=0;j4;j+) /收集四組數(shù)據(jù) for (k=0;k=30) EX0=1;return; /0.14ms計數(shù)過長自動離開。 /高電平計數(shù)完畢 IRCOMj=IRCOMj 1; /數(shù)據(jù)最高位補“0if(N=8)I

溫馨提示

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

最新文檔

評論

0/150

提交評論