




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、單片機(jī)課程設(shè)計(jì)競 賽智能搶答控制器 2006552118零六建筑設(shè)施智能技術(shù)二班摘要 近年來隨著科技的飛速發(fā)展,單片機(jī)的應(yīng)用正在不斷地走向深入,同時帶動傳統(tǒng)控制檢測日新月益更新。在實(shí)時檢測和自動控制的單片機(jī)應(yīng)用系統(tǒng)中,單片機(jī)往往是作為一個核心部件來使用,僅掌握單片機(jī)方面知識是不夠的,還應(yīng)根據(jù)具體硬件結(jié)構(gòu),以及針對具體應(yīng)用對象特點(diǎn)的軟件結(jié)合,加以完善。智能搶答器是一種新型的搶答工具,它不僅能大量增加搶答人數(shù),更使搶答的公平性得以大大提高。本系統(tǒng)采用單片機(jī)at89c51為中心器件來設(shè)計(jì)智能搶答器,系統(tǒng)實(shí)用性強(qiáng)、操作簡單、擴(kuò)展性強(qiáng)。設(shè)計(jì)內(nèi)容及要求1、利用mcs51單片機(jī)作為主控制器設(shè)計(jì)組成一個16路
2、智能搶答控制器;2、通過小鍵盤,可以按照2 - 4人一組設(shè)定分組搶答;3、搶答器具有數(shù)據(jù)鎖存功能,搶答開始后,若有選手搶答,編號立即鎖存,led數(shù)碼管顯示選手搶答組號。同時led指示燈給出提示,此外,要封鎖輸入電路;4、主持人宣布開始后,方可搶答,主持人可以清除原來的狀態(tài)。系統(tǒng)方案設(shè)計(jì)(1)控制系統(tǒng)主要由單片機(jī)應(yīng)用電路、存儲器接口電路、顯示接口電路,驅(qū)動接口電路組成。其中單片機(jī)at89c51是系統(tǒng)工作的核心,它主要負(fù)責(zé)各個部分協(xié)調(diào)工作。(2)硬件組成及所需元件:該系統(tǒng)的核心器件是at89c51,在其外圍上接上復(fù)位電路、上拉電阻、控制電路、驅(qū)動電路、數(shù)碼管、按鈕。元件為:晶振、電容、電阻、按鈕、
3、三極管等。p0.0p0.7和p2.0p2.4分別是32路搶答器的列與行的輸入口,p2.6、p2.7為數(shù)碼管的段選口,位選口用的是p1.0p1.7口輸出,p2.4口用于對組號的設(shè)置,p2.5口用于設(shè)置搶答的開始,p3.0口用于按鍵的顯示。 搶答器通過鍵盤掃描輸出按鍵信息,再通過單片機(jī)將它轉(zhuǎn)換成能在七段數(shù)碼管上顯示的型碼。七段數(shù)碼管顯示在本設(shè)計(jì)中根據(jù)實(shí)際情況采用的是動態(tài)顯示方法。當(dāng)搶答完畢時,會在數(shù)碼管上顯示搶答的組號以表示搶答成功,同時按鍵顯示燈亮。畫出系統(tǒng)框圖51系列單片機(jī)4*4鍵盤七段數(shù)碼管8155擴(kuò)展器復(fù)位電路晶振電路發(fā)光二極管等系統(tǒng)原理框圖完整的電路圖 完整電路圖工作原理32路搶答器用單
4、片機(jī)來設(shè)計(jì)制作完成,其功能實(shí)現(xiàn)主要通過軟件編程來實(shí)現(xiàn),采用單片機(jī)at89c51,它是低功耗、高性能的cmos型8位單片機(jī)。允許在系統(tǒng)內(nèi)改寫或用編程器編程。at89c51單片機(jī)由微處理器,存儲器,i/o口以及特殊功能寄存器等部分構(gòu)成。其存儲器在物理上設(shè)計(jì)成程序存儲器和數(shù)據(jù)存儲器兩個獨(dú)立的空間,片內(nèi)程序存儲器的容量為4kb,片內(nèi)數(shù)據(jù)存儲器為128個字節(jié)。89c51單片機(jī)有4個8位的并行的i/o口:p0口,p1口,p2口和p3口。各個接口均由接口鎖存器,輸出驅(qū)動器,和輸入緩沖器組成。p1口是唯一的單功能口,僅能用作通用的數(shù)據(jù)輸入/輸出口。p3口是雙功能口除了具有數(shù)據(jù)輸入/輸出功能外,每條接口還具有不
5、同的第二功能。在需要外部程序存儲器和數(shù)據(jù)存儲器擴(kuò)展時,p0口作為分時復(fù)用的低8位地址/數(shù)據(jù)總線,p2口可作為高8位的地址總線。p3口也可作為at89c51的一些特殊功能口,同時為閃爍編程和編程校驗(yàn)接收一些控制信號。at89c51的管腳圖外部振蕩電路單片機(jī)必須在at89c51的驅(qū)動下才能工作,在單片機(jī)內(nèi)部有一個時鐘振蕩電路,只需外接一個振蕩源就能產(chǎn)生一定的時鐘信號送到單片機(jī)內(nèi)部的各個單元。外部振蕩電路見下圖:單片機(jī)的外部中斷和內(nèi)部中端并存,單片機(jī)有硬件復(fù)位端,只要持續(xù)輸入4個周期的高電平即可實(shí)現(xiàn)復(fù)位。硬件復(fù)位后的各狀態(tài)如寄存器和存儲器的值都恢復(fù)到了初始值,所以不能對單片機(jī)進(jìn)行硬件復(fù)位,只能軟件復(fù)
6、位,即當(dāng)程序執(zhí)行完畢后,將程序指針通過一條跳轉(zhuǎn)指令跳轉(zhuǎn)到指定程序。復(fù)位電路如下圖:復(fù)位后通過設(shè)置按鈕設(shè)置分組后,再通過開始按鈕進(jìn)行搶答。電路圖如下圖:整個系統(tǒng)中還設(shè)計(jì)了個按鍵顯示燈,用來確定是否有人搶答。其電路圖如下圖:單片機(jī)的輸出通過驅(qū)動器聯(lián)接到數(shù)碼管,并在數(shù)碼管上顯示出來。它是共陰極的由高電平點(diǎn)亮。數(shù)碼管圖如下圖:軟件仿真控制系統(tǒng)仿真用到了keil軟件。keil軟件是目前最流行開發(fā)mcs-51系列單片機(jī)的軟件。keil提供了包括c編譯器、宏匯編、連接器、庫管理和一個功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個集成開發(fā)環(huán)境(uvision)將這些部份組合在一起。keil c51是美國k
7、eil software公司出品的51系列兼容單片機(jī)c語言軟件開發(fā)系統(tǒng),與匯編相比,c語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢,因而易學(xué)易用。用過匯編語言后再使用c來開發(fā),體會更加深刻。系統(tǒng)仿真還用到了proteus軟件,可通過仿真完全顯示出所設(shè)計(jì)系統(tǒng)的功能,對于程序的調(diào)試等有很大的幫助。根據(jù)系統(tǒng)硬件圖編寫系統(tǒng)調(diào)試程序#include#define uchar unsigned charsbit p00=p00;sbit p01=p01;sbit p02=p02;sbit p03=p03;sbit p04=p04;sbit p05=p05;sbit p06=p06;sbit p07
8、=p07;sbit set=p24; /p2.4口做每組人數(shù)的設(shè)定 sbit start=p25; /p2.5口做主持人復(fù)位按鍵 sbit disp1=p26; /p2.6口做第一位數(shù)碼管顯示控制位 sbit disp2=p27; /p2.7口做第二位數(shù)碼管顯示控制位sbit p30=p30; /p3.0口做有人搶答顯示標(biāo)志 uchar code display10=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;/共陰極數(shù)碼管段碼表 void delay_1ms(uchar time)/延時1 ms 子程序 uchar i,j;while(
9、time-) for(i=0x02;i0;i-) for(j=0xfa;j0;j-);uchar keyscan()/鍵盤掃描子函數(shù),返回按鍵值 uchar idata i,j,keyvalue=0xff; while(1) p0=0xff;p2=0xf0;if(p0!=0xff) delay_1ms(10); /鍵盤消抖 if(p0!=0xff) if(p00=0) i=0; if(p01=0) i=1; if(p02=0) i=2; if(p03=0) i=3; if(p04=0) i=4; if(p05=0) i=5; if(p06=0) i=6; if(p07=0) i=7; p0=0
10、xff; p2=0xfe; if(p0!=0xff) j=0; p2=0xfd; if(p0!=0xff) j=1; p2=0xfb; if(p0!=0xff) j=2; p2=0xf7; if(p0!=0xff) j=3; keyvalue=i*4+j; if(keyvalue!=0xff) break;return keyvalue;void display_2(uchar dat)/兩位數(shù)碼管動態(tài)顯示 uchar idata shi,ge;shi=dat/10;ge =dat%10; p1=displayshi;disp1=0;delay_1ms(10);disp1=1;p1=displ
11、ayge; disp2=0;delay_1ms(10);disp2=1; void main()/主函數(shù) uchar idata number=4,keyvalue,squen;while(1)p30=1;/當(dāng)設(shè)置每組人數(shù)鍵按下時,進(jìn)入鍵盤掃描, 得到每組人數(shù) if(set=0) delay_1ms(10); if(set=0) number=keyscan(); display_2(number);delay_1ms(1000); if(start=0)/當(dāng)主持人復(fù)位鍵按下時,進(jìn)入鍵盤掃描,得到按鍵值 delay_1ms(10); if(start=0) keyvalue=keyscan()
12、; p30=0; /當(dāng)有人搶答時,led發(fā)光提示 squen=keyvalue/number+1; /根據(jù)每組人數(shù),將按鍵值轉(zhuǎn)為組號 do display_2(squen); /調(diào)用顯示子函數(shù),顯示組號 while(start=1);/直到主持人復(fù)位,進(jìn)行新的一輪搶答 do ; while(start!=1); 設(shè)置三人一組,按行2列3按鈕和行7列2按鈕示意圖如下。設(shè)置四人一組,按行3列3按鈕和行8列2按鈕示意圖如下。設(shè)置二人一組,按行3列2按鈕和行8列3按鈕示意圖如下。系統(tǒng)聯(lián)調(diào):完成仿真程序在實(shí)際硬件系統(tǒng)上的調(diào)試,說明調(diào)試的方法和技巧,調(diào)試中出現(xiàn)的故障、原因及排除方法 通過keil軟件編程,
13、再生成單片機(jī)可以識別的hex文件,在仿真過程中,在單片機(jī)中加載已生成的hex文件,便可以開始仿真。在調(diào)試中要先進(jìn)行復(fù)位,再開始設(shè)置分組,然后按動開始按鈕,便可以通過搶答按鈕進(jìn)行搶答了。有時需要修改程序,可修改正確后,重新在單片機(jī)中加載,仿真結(jié)果卻一樣。經(jīng)過詢問才知道是修改的程序還沒生成新的hex文件。當(dāng)生成新的hex文件后,重新加載后運(yùn)行就成功了??偨Y(jié)設(shè)計(jì)電路的特點(diǎn)電路使用的器件比較簡單,連線比較簡潔。由于程序所占的容量比較小,所以沒有用到8155擴(kuò)展器。按鍵的擺放很規(guī)范,適合實(shí)物連線,而且它的排放格式剛好符合實(shí)物鍵盤的格式。個人覺得還是比較符合設(shè)計(jì)要求的。收獲和體會 單片機(jī)課程設(shè)計(jì)是一門很實(shí)用,很難的設(shè)計(jì)。這個設(shè)計(jì)用到了單片機(jī)、電路等方面的知識,通過這次課程設(shè)計(jì),使我對單片機(jī)及其附屬電路有了一定的了解,對課本上的知識有了進(jìn)一步的掌握,也深深明白了自己的不足。 完成本次課程設(shè)計(jì)的過程,是一個漫長的過程。經(jīng)歷了失落,失落,再失落,慢慢建立自信,奮發(fā),完成等幾個過程。剛接到設(shè)計(jì)題目時,一看就覺得好難,知識書上面都有,可卻不知道怎么去運(yùn)用,發(fā)現(xiàn)其中的算法和設(shè)計(jì)是多么的復(fù)雜。經(jīng)過幾天的努力,卻一點(diǎn)成就也沒有。于是埋頭查東西,虛心向同學(xué)請教。終于最后,還是有了那么一點(diǎn)成果,那感覺是甜蜜的,雖然過程是痛苦的。沒有努力,哪來的收獲,就在這種痛苦與甜蜜的交換中,我學(xué)到了很多的知識,也學(xué)會很
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 美容美發(fā)店員工入股2025年度全新合作框架合同匯編
- 2025年度高端服裝店品牌代理權(quán)轉(zhuǎn)讓合同范本
- 砌體抹灰勞務(wù)分包合同書
- 工業(yè)生產(chǎn)過程質(zhì)量控制要點(diǎn)
- 農(nóng)業(yè)養(yǎng)殖業(yè)智能化養(yǎng)殖管理系統(tǒng)建設(shè)
- 新能源車充電樁建設(shè)合同
- 汽車工程車輛維護(hù)與故障診斷技能考試試題集
- 中學(xué)生物多樣性的感悟
- 城市商業(yè)管理系統(tǒng)升級服務(wù)協(xié)議
- 給排水安裝工程勞務(wù)合同
- 《西式點(diǎn)心制作》課件-抹茶戚風(fēng)蛋糕卷
- MOOC 體能攻略-浙江工商大學(xué) 中國大學(xué)慕課答案
- 部編版二年級語文下冊第一單元大單元整體作業(yè)設(shè)計(jì)
- 中國十五冶招聘線上筆試測評題庫
- xx基層團(tuán)支部建設(shè)培訓(xùn)
- 2020年山西省公務(wù)員錄用考試《行測》真題及答案
- 關(guān)于某工廠減免部分利息的申請
- 醫(yī)務(wù)人員手衛(wèi)生規(guī)范培訓(xùn)課件預(yù)防醫(yī)院感染的手衛(wèi)生措施
- 《反竊電技術(shù)》課件
- 學(xué)生宿舍電路負(fù)荷和電線阻燃要求
- 2023年污水處理行業(yè)洞察報(bào)告及未來五至十年預(yù)測分析報(bào)告(修訂版)
評論
0/150
提交評論