版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 單片機(jī)原理作業(yè)</b></p><p> ——電子答題器(課程設(shè)計(jì))</p><p><b> 目錄</b></p><p> 一、設(shè)計(jì)任務(wù)與選題2</p><p> 1.作業(yè)設(shè)計(jì)任務(wù)2</p><p> 2.作業(yè)設(shè)計(jì)選題2<
2、;/p><p> 二、系統(tǒng)原理與設(shè)計(jì)分析2</p><p> 1.系統(tǒng)設(shè)計(jì)分析2</p><p> 2.系統(tǒng)原理圖設(shè)計(jì)3</p><p> 三、程序流程圖設(shè)計(jì)4</p><p><b> 四、源程序設(shè)計(jì)5</b></p><p> 1.按鍵查詢程序5&l
3、t;/p><p> 2.聲光提示程序6</p><p> 3.提示燈旋轉(zhuǎn)程序7</p><p> 五、系統(tǒng)調(diào)試與仿真8</p><p><b> 六、心得體會(huì)9</b></p><p> 電子答題器(課程設(shè)計(jì))</p><p><b> 一、設(shè)計(jì)任
4、務(wù)與選題</b></p><p><b> 1.作業(yè)設(shè)計(jì)任務(wù)</b></p><p> 查詢相關(guān)資料,設(shè)計(jì)一個(gè)你自己最感興趣的單片機(jī)系統(tǒng)。</p><p><b> 2.作業(yè)設(shè)計(jì)選題</b></p><p> 電子答題器是基于AT89C51、AT89C52單片機(jī)的電子答題系統(tǒng),通
5、過單刀多擲開關(guān)和答題按鈕控制正確選項(xiàng)。在各種知識(shí)競答的活動(dòng)以及抽獎(jiǎng)等游戲活動(dòng)都可以應(yīng)用。</p><p> 二、系統(tǒng)原理與設(shè)計(jì)分析</p><p><b> 1.系統(tǒng)設(shè)計(jì)分析</b></p><p> 單片機(jī)的最小系統(tǒng)+數(shù)碼管(共陰)+8個(gè)按鈕+直流電動(dòng)機(jī)+L298+二輸入與門(可使用中斷)+報(bào)警蜂鳴器+LED+單刀多擲開關(guān)</p&
6、gt;<p> 沒有按鍵按下,則相應(yīng)輸入為高電平,否則為低電平。這樣可通過讀入AT89C51的P3口的數(shù)據(jù)來判斷按下的是什么鍵。在有鍵按下后,要有一定的延時(shí)以防止抖動(dòng)。當(dāng)按鍵按下后,若單刀多擲開關(guān)撥至該按鍵,則低電平輸入AT89C2051的P3.7端口,在單片機(jī)內(nèi),經(jīng)查詢、識(shí)別、判決等環(huán)節(jié)實(shí)時(shí)發(fā)出鳴笛狀態(tài)控制信號(hào),驅(qū)動(dòng)電路將控制信號(hào)放大并推動(dòng)聲光鳴笛設(shè)備完成相應(yīng)動(dòng)作,同時(shí)波特率發(fā)生器通過程序控制產(chǎn)生PWM信號(hào)送給電機(jī)驅(qū)動(dòng)
7、芯片L298N的使能端口ENA,并通過輸入端口IN1和IN2來控制電機(jī)的啟動(dòng)和停止。</p><p> 最終實(shí)現(xiàn)按下相應(yīng)的按鍵顯示相應(yīng)的選項(xiàng)數(shù)字,當(dāng)按中答案時(shí)系統(tǒng)發(fā)出正確提示音并亮起旋轉(zhuǎn)提示燈,按下復(fù)位鍵時(shí)數(shù)字顯示為0,同時(shí)提示燈停止運(yùn)轉(zhuǎn)。</p><p><b> 2.系統(tǒng)原理圖設(shè)計(jì)</b></p><p> 系統(tǒng)所用元件為單片機(jī)AT8
8、9C51、AT89C52、AT89C2051、CAP(30/0.1pF)、CAP-ELEC(22μF)、BUTTON、LED-RED、7SEG-COM-CATHODE、CRYSTAL(12MHz)、RES、MOTOR、L298、DIODE、AND_2、NPN、SPEARKER、IN4148。</p><p> 電子答題器原理圖如下圖所示:</p><p><b> 三、程序流
9、程圖設(shè)計(jì)</b></p><p><b> 四、源程序設(shè)計(jì)</b></p><p><b> 1.按鍵查詢程序</b></p><p> #include<reg51.h> </p><p> #define uint unsigned int </p>
10、<p> #define uchar unsigned char </p><p><b> uchar j; </b></p><p><b> uchar t; </b></p><p><b> uint n; </b></p><p> const
11、 uchar tab[]={0x3f,0x06,0x5b,</p><p> 0x4f,0x66,0x6d,</p><p> 0x7d,0x07,0x7f,0x6f};</p><p> void delay(uint n)</p><p><b> { uint i;</b></p><p
12、> for(i=0;i<n;i++);</p><p><b> }</b></p><p> void main(void)</p><p><b> {</b></p><p> uchar key;</p><p><b> P2=0x
13、00;</b></p><p><b> P3=0xff;</b></p><p><b> while(1) </b></p><p><b> {</b></p><p> while(P3==0xff);</p><p> d
14、elay(2000);</p><p> while(P3==0xff);</p><p><b> key=P3;</b></p><p> switch(key) </p><p><b> {</b></p><p> case 0xfe:P2=tab[1];
15、break;</p><p> case 0xfd:P2=tab[2];break;</p><p> case 0xfb:P2=tab[3];break;</p><p> case 0xf7:P2=tab[4];break;</p><p> case 0xef:P2=tab[5];break;</p><p&
16、gt; case 0xdf:P2=tab[6];break;</p><p> case 0xbf:P2=tab[7];break;</p><p> case 0x7f:P2=tab[0];break;</p><p><b> }</b></p><p><b> }</b></
17、p><p><b> }</b></p><p><b> 2.聲光提示程序</b></p><p> #include<reg51.h></p><p> #include<intrins.h></p><p> #define uint un
18、signed int</p><p> #define uchar unsigned char</p><p> sbit zj=P3^7;</p><p> sbit bell=P1^3;</p><p> sbit red=P1^7;</p><p> void Delay100us()</p>
19、;<p><b> {</b></p><p> uchar i,j;</p><p><b> _nop_();</b></p><p><b> _nop_();</b></p><p><b> i=2;</b></p&
20、gt;<p><b> j=15;</b></p><p><b> do</b></p><p><b> {</b></p><p> while( --j);</p><p><b> }</b></p><
21、;p> while( --i);</p><p><b> }</b></p><p> void main(void)</p><p><b> {</b></p><p><b> uint z=0;</b></p><p> uc
22、har a=0;</p><p><b> P3=0xff;</b></p><p><b> bell=1;</b></p><p><b> red=1;</b></p><p><b> while(1)</b></p><
23、;p><b> {</b></p><p><b> if(zj==0)</b></p><p><b> {</b></p><p><b> //bell=1;</b></p><p> bell=!bell;</p>&
24、lt;p><b> red=0;</b></p><p><b> a=1;</b></p><p> Delay100us();</p><p><b> }</b></p><p><b> else</b></p>&l
25、t;p><b> {</b></p><p><b> bell=0;</b></p><p><b> red=1;</b></p><p><b> a=0;</b></p><p><b> }</b></
26、p><p><b> if(a==zj)</b></p><p> for(z=0;z<1000;z++)</p><p><b> {</b></p><p> bell=!bell;</p><p><b> red=0;</b><
27、/p><p> Delay100us();</p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p><b> 3.提示燈旋轉(zhuǎn)程序</b></p&g
28、t;<p> #include<reg51.h></p><p> #define uchar unsigned char</p><p> uchar cycle=100;</p><p> uchar speed=50;</p><p> sbit IN1=P2^0;</p><p&
29、gt; sbit IN2=P2^1;</p><p> sbit ENA=P2^2;</p><p><b> void zz()</b></p><p><b> {</b></p><p><b> IN1=1;</b></p><p>&
30、lt;b> IN2=0;</b></p><p><b> }</b></p><p> void stop()</p><p><b> {</b></p><p><b> IN1=0;</b></p><p><b
31、> IN2=0;</b></p><p><b> }</b></p><p> void t0(void) interrupt 1 using 1</p><p><b> {</b></p><p> if(cycle>100)</p><p
32、><b> cycle=0;</b></p><p> if(cycle>speed)</p><p><b> ENA=0;</b></p><p><b> else</b></p><p><b> ENA=1;</b><
33、/p><p><b> cycle++;</b></p><p><b> }</b></p><p> void main(void)</p><p><b> {</b></p><p><b> EA=1;</b><
34、;/p><p><b> EX0=1;</b></p><p><b> IT0=1;</b></p><p> TMOD=0x02;</p><p><b> TH0=0x06;</b></p><p><b> TL0=0x06;&l
35、t;/b></p><p><b> TR0=1;</b></p><p><b> ET0=1;</b></p><p><b> PX0=1;</b></p><p><b> P1=0Xff;</b></p><p&
36、gt;<b> while(1)</b></p><p><b> {</b></p><p><b> }</b></p><p><b> }</b></p><p> void int0(void) interrupt 0 using 0&
37、lt;/p><p><b> {</b></p><p> switch(P1)</p><p><b> {</b></p><p> case 0xfe:zz();break;</p><p> case 0xfd:stop();break;</p>
38、<p> default:P1=0xff;break;</p><p><b> }</b></p><p><b> }</b></p><p><b> 五、系統(tǒng)調(diào)試與仿真</b></p><p><b> 六、心得體會(huì)</b>&l
39、t;/p><p> 這是這一學(xué)期的單片機(jī)課程的最后一次作業(yè),也是最難的一次作業(yè)。前幾次作業(yè)的不用心讓我前幾次作業(yè)的成績并不是特別好,經(jīng)過老師的多次批評(píng)教育以及一些同學(xué)的成果展示,在親眼目睹了自己和同學(xué)的成績之后,我意識(shí)到了我的問題所在,也在老師的批評(píng)下漸漸醒悟了。</p><p> 第五次作業(yè)才算是我認(rèn)真完成的第一次作業(yè),而作為本學(xué)期最后一次作業(yè)的這次大作業(yè),我更是頗為重視,查閱資料,參考
40、書本,詢問同學(xué),研究程序。因?yàn)閷?duì)匯編語言依然不夠了解,所以我選擇了C語言來進(jìn)行編程。從選擇原件、設(shè)計(jì)電路到編寫程序,每一個(gè)環(huán)節(jié)我都認(rèn)認(rèn)真真,在最后運(yùn)行成功的那一刻,真的有一種成就感油然而生。</p><p> 從第一次用單片機(jī)點(diǎn)亮一盞燈開始,到能夠循環(huán)點(diǎn)亮一串燈,現(xiàn)在回想起來那時(shí),真的的點(diǎn)亮了我的人生,點(diǎn)亮了我人生路上前進(jìn)的明燈,好比在夜晚漆黑的太平洋上漂泊著忽然看見了空中的北斗星。</p>&l
41、t;p> 從能夠循環(huán)點(diǎn)亮一串燈,到用串口驅(qū)動(dòng)數(shù)碼管,我完成了一次又一次的作業(yè)。這其中不乏有借鑒同學(xué)的地方,也有不用心之處,但是其實(shí)每一次作業(yè)完成的那一刻,我都會(huì)在內(nèi)心燃起一絲絲的喜悅。</p><p> 和許多同學(xué)一樣,在這次大作業(yè)的設(shè)計(jì)的過程中我遇到了很多的困難,因?yàn)橹暗膶W(xué)習(xí)并沒有太努力,沒有下那么多的功夫,所以對(duì)知識(shí)的掌握和理解有很多不到位的地方,甚至有許多地方的知識(shí)是不連貫的,需要重新去學(xué)習(xí)。但
42、是功夫不負(fù)有心人,我最終還是克服了這些困難,親手設(shè)計(jì)完成了這次大作業(yè)的任務(wù)。紙上得來終覺淺,絕知此事要躬行。而這次作業(yè)設(shè)計(jì)則是很大程度地鍛煉了我的獨(dú)立思考與設(shè)計(jì)的能力,也讓我有機(jī)會(huì)把所學(xué)的東西與實(shí)際生活聯(lián)系在一起。</p><p> 比如這次大作業(yè),我就設(shè)計(jì)了一套電子答題系統(tǒng),就是在多次參加和舉辦學(xué)生活動(dòng)的過程中所看所想的,而這門課程則給了我把這一想法仿真出來的機(jī)會(huì)。我設(shè)計(jì)的這套電子答題器一共有8個(gè)按鈕和一組單
43、刀多擲開關(guān),通過對(duì)單刀多擲開關(guān)的調(diào)節(jié)將正確選項(xiàng)與相應(yīng)的按鈕相匹配,8個(gè)按鈕中有7個(gè)選擇按鈕和一共復(fù)位按鈕。最終實(shí)現(xiàn)的效果是按下相應(yīng)的按鍵顯示相應(yīng)的選項(xiàng)數(shù)字,當(dāng)選中正確答案時(shí)系統(tǒng)發(fā)出正確提示音并亮起旋轉(zhuǎn)提示燈,當(dāng)按下復(fù)位鍵時(shí)數(shù)字顯示為0,同時(shí)提示燈停止運(yùn)轉(zhuǎn)。這套電子答題器可以用于選擇題的自動(dòng)判斷,也可以用來作為抽獎(jiǎng)游戲的抽獎(jiǎng)器,有著很好的學(xué)習(xí)性和娛樂性,可以廣泛地應(yīng)用于各種現(xiàn)場(chǎng)活動(dòng)中。</p><p> 張老師一
44、直強(qiáng)調(diào)“工具先行”,果不其然,在學(xué)習(xí)一門知識(shí)之前,首先掌握學(xué)習(xí)這門課程所需要的所有工具,這樣在學(xué)習(xí)這門課程時(shí)有會(huì)有“工具”來幫助我們理解所學(xué)的知識(shí),更好更快更加直觀地把所學(xué)的知識(shí)全部展現(xiàn)出來,讓我們能夠更快地把所學(xué)的知識(shí)吸收,并融會(huì)貫通。這種學(xué)習(xí)的方法讓我受益匪淺,雖然我前半段的單片機(jī)學(xué)習(xí)并沒有其他同學(xué)那樣用心,但是即便如此,我所掌握的知識(shí)也是很快,相比較其他專業(yè)的同學(xué)也掌握得更加深刻。我想,這應(yīng)該就是“工具先行”的威力所在吧。所以我也
45、希望,張老師能夠把“工具先行”這一理念傳達(dá)給其他的老師,并在大學(xué)的高等教育中推廣開來。</p><p> 我知道多年以來,張老師都是孤獨(dú)地探索著教育之道,早年的經(jīng)歷和現(xiàn)在的成果給了您莫大的財(cái)富和啟迪,讓您想要把我們帶離這種優(yōu)哉游哉得過且過的墮落現(xiàn)狀,避免我們?cè)僦氐改母厕H,多走彎路。經(jīng)過多年的深入的課程教學(xué)改革研究、探索研究和實(shí)踐,終于在不久前創(chuàng)建出了一套效果十分顯著的全新全異的教學(xué)模式——“能力驅(qū)動(dòng)課程教學(xué)模
46、式”,在提高了課堂教學(xué)和教學(xué)質(zhì)量的同時(shí),成為了解決中國高等教育現(xiàn)存問題的一種解決方案。</p><p> 所以我很榮幸能夠遇見張老師,能夠上這一門課,也在上學(xué)期跟著張老師和學(xué)長學(xué)姐們參加了挑戰(zhàn)杯的研究,真的讓我覺得受益匪淺。張老師以大愛之心鑄就教育之魂,對(duì)我們盡心盡力,對(duì)教育盡職盡責(zé),讓我們?cè)谔岣吣芰Φ耐瑫r(shí)充滿了自信,收獲了知識(shí),也收獲了成長。</p><p> 非常感謝張老師,感謝張
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)原理作業(yè)—電子答題器(課程設(shè)計(jì))
- 單片機(jī)原理作業(yè)—電子答題器(課程設(shè)計(jì))
- 單片機(jī)課程設(shè)計(jì)-單片機(jī)課程設(shè)計(jì)---電子時(shí)鐘
- 單片機(jī)課程設(shè)計(jì)---單片機(jī)籃球計(jì)分器
- 單片機(jī)課程設(shè)計(jì)(電子鬧鐘)
- 單片機(jī)簡易電子琴單片機(jī)課程設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--電子門鈴
- 單片機(jī)課程設(shè)計(jì)--電子秒表
- 單片機(jī)課程設(shè)計(jì)——電子秒表
- 單片機(jī)課程設(shè)計(jì)--單片機(jī)模擬電子時(shí)鐘設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--單片機(jī)模擬電子時(shí)鐘設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)---單片機(jī)電子時(shí)鐘
- 單片機(jī)課程設(shè)計(jì)---電子秒表設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--- 單片機(jī)電子時(shí)鐘設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)---基于單片機(jī)的電子琴設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)--單片機(jī)模擬電子時(shí)鐘設(shè)計(jì).doc
- 單片機(jī)課程設(shè)計(jì)---電子琴
- 單片機(jī)課程設(shè)計(jì)——電子時(shí)鐘
- 單片機(jī)課程設(shè)計(jì)——電子時(shí)鐘
- 電子表課程設(shè)計(jì)單片機(jī)
評(píng)論
0/150
提交評(píng)論