




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、四川師范大學成都學院電子工程系課程設計報告目 錄前言11.總體設計方案11.1數字搶答器方案11.1.1運用完全的數字電路方案11.1.2運用帶微處理的器方案12. 單元模塊設計22.1搶答器電路設計計22.1.1電源電路22.1.2 時鐘電路32.1.3復位電路32.1.4顯示電路42.1.5鍵盤掃描電路的設計52.1.6 報警電路72.1.7 系統復位設計82.2 系統整體硬件電路92.2.1 整體硬件電路92.2.1 本章小結113.軟件設計113.1系統主程序設計113.2主程序清單123.3本章小結234.仿真模塊244.1 Proteus仿真系列圖組244.1.1 仿真電路圖244
2、.2安裝與調試275.設計總結296.參考文獻3031前言轉眼大三即將結束,一直以來都在不停的問自己3年來到底學到了什么,我也一直很迷惘,很為自己畢業后著急。站在人來人往的校園里完全沒有一個立足點去審視自己的能力,一直在等待著能自己實踐的機會。我們的專業老師明白學生的心理,高瞻遠矚,在6月份給我們專業安排了一次綜合課程設計,由學生自己選擇課題,自己設計,自己制出產品。這樣的一個安排我很是高興,聽到這消息我就暗暗的告訴自己一定好好努力做這次設計,結果并不是最重要的,就象我們老師說的:能實現固然是最好,即使不能成功,只要我們認真去做了,依然能夠學到很多東西,尤其是動手能力和實戰經驗。本次所做的課程
3、設計就是一個集搶答、計分功能于一體的一個電子產品,講述了電路各部分的設計原理及所能實現的功能 ,它要求要對各種鎖存器、計數器、定時器、顯示器以及多諧振蕩器等多種數字電子芯片以及AT89S52熟悉,并能加以運用。雖然現在市面上有很多類似的成熟產品,但本次設計旨在提高動手能力,把握整體設計的步驟,從這個層面來講,仍然很有意義。1.總體設計方案1.1數字搶答器方案1.1.1運用完全的數字電路方案系統各部分采用中小規模集成數字電路,用機械開關按鈕作為控制開關,完成搶答輸入信號的觸發。該方案的特點是中小規模集成電路應用技術成熟,性能可靠,能方便地完成選手搶答的基本功能,但是由于系統功能要求較高,所以電路
4、連接集成電路相對較多,而且過于復雜,并且制作過程工序比較煩瑣,使用不太方便。1.1.2運用帶微處理的器方案該系統采用51系列單片機AT89C51作為控制核心,該系統可以完成運算控制、信號識別以及顯示功能的實現。由于用了單片機,使其技術比較成熟,應用起來方便、簡單并且單片機周圍的輔助電路也比較少,便于控制和實現。整個系統具有極其靈活的可編程性,能方便地對系統進行功能的擴張和更改。MCS-51單片機特點如下: <1>可靠性好:單片機按照工業控制要求設計,抵抗工業噪聲干擾優于一般的CPU,程序指令和數據都可以寫在ROM里,許多信號通道都在同一芯片,因此可靠性高,易擴充。<2>
5、單片機有一般電腦所必須的器件,如三態雙向總線,串并行的輸入及輸出引腳,可擴充為各種規模的微電腦系統。 <3> 控制功能強:單片機指令除了輸入輸出指令,邏輯判斷指令外還有更豐富的條件分支跳躍指令。方案比較及其選用依據,顯然方案二比方案一簡單的多,不但從性能上優于方案一,而且在使用上及其功能的實現上都較方案一簡潔,并且由于單片機具有優越的高集成電路性,使其工作速度更快、效率更高。另外AT89C511單片機采用12MHz的晶振,提高了信號的測量精度,并且使該系統可以通過軟件改進來擴張功能。而方案一采用了中小規模集成電路,有其復雜的電路性能,從而可能會使信號的輸入輸出產生延時及不必要的誤差
6、。依此依據選擇方案二比較適合。其原理框圖如下:搶答按扭優先編碼電路鎖存器譯碼電路譯碼顯示主持人控制開關控制電路報警電路秒脈沖產生電路定時電路譯碼電路顯示電路 圖.12. 單元模塊設計2.1搶答器電路設計計2.1.1電源電路一個系統要想正常的工作就必須要有穩定的電源提供,如果電源不穩定的話系統變無法正常的工作,該系統的整個電路的工作電壓都為5V,如果采用單獨的線性電路,電路的紋波會很大這樣系統可能會無法正常的工作,因此我們采用了一塊穩壓芯片7805。他是一款5V的穩壓芯片能將電壓變得更加的平滑。電源電路如圖:圖2.電源電路2.1.2 時鐘電路單片機必須在時鐘的驅動下才能工作。在單片機內部有一個時
7、鐘振蕩電路,只需要外接一個振蕩源就能產生一定的時鐘信號送到單片機內部的各個單元,決定單片機的工作速度。時鐘電路如圖2所示。圖3 .外部振蕩源電路一般選用石英晶體振蕩器。此電路在加電大約延遲10ms后振蕩器起振,在XTAL2引腳產生幅度為3V左右的正弦波時鐘信號,其振蕩頻率主要由石英晶振的頻率確定。電路中兩個電容 C1,C2的作用有兩個:一是幫助振蕩器起振;二是對振蕩器的頻率進行微調。C1,C2的典型值為20PF。單片機在工作時,由內部振蕩器產生或由外直接輸入的送至內部控制邏輯單元的時鐘信號的周期稱為時鐘周期。其大小是時鐘信號頻率的倒數,常用fosc表示。圖中時鐘頻率為12MHz,即fosc=1
8、2MHz,則時鐘周期為1/12µs。2.1.3復位電路單片機的第9腳RST為硬件復位端,只要將該端持續4個機器周期的高電平即可實現復位,復位后單片機的各狀態都恢復到初始化狀態,其電路圖如圖3所示:圖4.復位電路圖3中由按鍵RESET1以及電解電容C3、電阻R2構成按鍵及上電復位電路。由于單片機是高電平復位,所以當按鍵RESET1按下時候,單片機的9腳RESET管腳處于高電平,此時單片機處于復位狀態。當上電后,由于電容的緩慢充電,單片機的9腳電壓逐步由高向低轉化,經過一段時間后,單片機的9腳處于穩定的低電平狀態,此時單片機上電復位完畢,系統程序從0000H開始執行。值得注意的是,在設計
9、當中使用到了硬件復位和軟件復位兩種功能,由上面的硬件復位后的各狀態可知寄存器及存儲器的值都恢復到了初始值,而前面的功能介紹中提到了倒計時時間的記憶功能,該功能的實現的前提條件就是不能對單片機進行硬件復位,所以設定了軟復位功能。軟復位實際上就是當程序執行完畢之后,將程序指針通過一條跳轉指令讓它跳轉到程序執行的起始地址。2.1.4顯示電路 該電路的顯示電路由4個LED共陰極管作為顯示時間和選手號碼,當然采用LCD液晶顯示其也可以但是考慮到成本的問題,和實用性我們選擇了LED,成本大大的降低,顯示電路采用74LS04進行鎖存,將P0口的數據進行鎖存,這樣P0口可以作為其他的用途了。動態顯示當中由于人
10、們的視覺殘留沒一部分必須停留約為5-20ms才能完全的顯示。顯示通過軟件程序控制LED的動態顯示顯示程序如下: void display(uchar baiwei,shiwei,gewei,xuanshou) /顯示函數suo=1;P2=0xf7; /打開顯示時間十位的位選delay1(5);P2=0xfb; /打開顯示時間十位的位選delay1(5);P2=0xfd;/個位位選delay1(5);P2=0xfe; /選手位選delay1(5);suo=0;4位七段數碼管顯示電路如圖4所示。圖5. 共陰極數碼管2.1.5鍵盤掃描電路的設計鍵盤掃描電路分為獨立式和矩陣鍵盤在選手按鍵的時侯可以選擇
11、矩陣鍵盤,也可以選擇獨立鍵盤,但是在這里沒有必要選擇矩陣式鍵盤,當選擇矩陣鍵盤時,選手個數可以達到16個。鍵盤點路圖如下:圖6.搶答按鍵及調整按鍵在圖5中8個選手按鍵分別接入單片機的P1.0P1.7端口,然后通過反相器連到P3口的中斷0端口,單片機通過讀取P1.0P1.7的值來判斷當前輸入的是8個搶答按鍵中的哪一個。然后出發一次中斷,搶答時間調整和回答時間調整接到單片機的P3.3和P3.4接口,加一及減一按鍵接到單片機的P3.5和P3.6接口。圖7. 開始、結束按鍵在圖6中,開始及結束按鍵接到單片機的10、11腳,這里用到了單片機10、11腳復合功能中的IO端口功能,單片機通過讀取10、11腳
12、的P3.0、P3.1的IO端口值來判斷當前是否處于搶答開始狀態或搶答結束狀態。按鍵的觸點在閉合和斷開時均會產生抖動,這時觸點的邏輯電平是不穩定的,如不妥善處理,將會引起按鍵命令的錯誤執行或重復執行。現在一般均用軟件延時的方法來避開抖動階段,這一延時過程一般大于5ms,例如取10-20ms。如果監控程序中的讀鍵操作安排在主程序(后臺程序)或鍵盤中斷(外部中斷)子程序中,則該延時子程序便可直接插入讀鍵過程中。如果讀鍵過程安排在定時中斷子程序中,就可省去專門的延時子程序,利用兩次定時中斷的時間間隔來完成抖動處理。在鍵盤掃描電路中開始按鍵和選手按鍵都通到了中斷0,當開始鍵和選手按鍵按下是都會觸發一次中
13、斷,然后掃描按鍵判斷是哪一個按鍵按下的,如果是選手按下搶答按鍵時則非法處理,如果時主持人按下時則按照正常的搶答流程進行搶答。51單片機大外部中斷經過初始化后,當外部引腳變為低電平后片出發一次中斷。中斷處理函數如下:void init()/中斷 定時器 初始化函數TMOD=0x01;EA=1;TH0=0x3C; TL0=0xB0;ET0=1;EX0=1;IT0=1;EX1=1;void int0() interrupt 0/中斷0函數temp=1;中斷1為判斷主持人停止鍵,當主持人在答題時間按下停止時,答題變立刻停止,void int1() interrupt 2/中斷0函數temp_int0=
14、1;2.1.6 報警電路我們知道,聲音的頻譜范圍約在幾十到幾千赫茲,若能利用程序來控制單片機某個口線的“高”電平或低電平,則在該口線上就能產生一定頻率的矩形波,接上喇叭就能發出一定頻率的聲音,若再利用延時程序控制“高”“低”電平的持續時間,就能改變輸出頻率,從而改變音調,使喇叭發出不同的聲音。當在最后的5秒的時侯蜂鳴器變產生報警,以提醒選手們搶答時間或答題時間將要結束了。報警程序如下:If(t=5)Beep=1;當有選手提前答題的時候蜂鳴器便持續發出響聲。本文設計如圖8所示。圖中單片機的14腳輸出具有復合功能,此處用到了單片機17腳的IO端口功能,單片機通過內部定時器的操作實現交替變換的波形輸
15、出驅動揚聲器發聲。圖8 報警電路2.1.7 系統復位設計使CPU進入初始狀態,從0000H地址開始執行程序的過程叫系統復位。從實現系統復位的方法來看,系統復位可分為硬件復位和軟件復位。硬件復位必須通過CPU外部的硬件電路給CPU的RESET端加上足夠時間的高電位才能實現。上電復位,人工按鈕復位和硬件看門狗復位均為硬件復位。硬件復位后,各專用寄存器的狀態均被初始化,且對片內通用寄存器的內容沒有影響。但是,硬件復位還能自動清除中斷激活標志,使中斷系統能夠正常工作,這樣一個事實卻容易為不少編碼人員所忽視。軟件復位就是用一系列指令來模擬硬件復位功能,最后通過轉移指令使程序從0000H地址開始執行。對各
16、專用寄存器的復位操作是容易的,也沒有必要完全模擬,可根據實際需要去主程序初始化過程中完成。而對中斷激活標志的清除工作常被遺忘,因為它沒有明確的位地址可供編程。有的編程人員用020000(LJMP 0000H)作為軟件陷阱,認為直接轉向0000H地址就完成了軟件復位,就是這類錯誤的典型代表。軟件復位是使用軟件陷阱和軟件看門狗后必須進行的工作,這時程序出錯完全有可能發生在中斷子程序中,中斷激活標志已置位,它將阻止同級中斷響應。由于軟件看門是高級中斷,它將阻止說要中斷響應,由此可見清除中斷激活標志的重要性。在所有的指令中,只有RETI指令能夠清除中斷激活標志。出錯處理程序ERR主要完成這一功能,其他
17、的善后工作交由復位后的系統去完成。程序一般先關中斷,以便后續處理能順利進行,然后用兩個RETI指令代替兩個LJMP指令,從而清除了兩級中斷激活標志。有相應軟件陷阱捕捉來的程序可能沒有全部激活兩個標志,這也無妨。有復位時系統的歷史狀況,可將復位分為“冷啟動”和“熱啟動”。 “冷啟動”時,系統的狀態全部無效,進行徹底的初始化操作;而“熱啟動”時,對系統的當前狀態進行修復和有選擇的初始化。系統初次上電投入運行時,必須是“冷啟動”,以后由抗干擾措施引起的復位操作一般均為“熱啟動”初次上電投入運行時,必須是“冷啟動”,以后由抗干擾措施引起的復位操作一般均為“熱啟動”。為了使系統能正確決定采用何種啟動方式
18、,常用上電標志來區分,如圖9所示:復位關中斷,設定堆棧上電標志冷啟自檢全面初始化熱啟動恢復被破壞的信息部分初始化建立上電標志開始運轉圖9系統復位策略圖2.2 系統整體硬件電路2.2.1 整體硬件電路PROTEL是PORTEL公司推出的EDA軟件,在電子行業的CAD軟件中,它當之無愧地排在眾多EDA軟件的前面,是電子設計者的首選軟件,它較早就在國內開始使用,在國內的普及率也最高,有些高校的電子專業還專門開設了課程來學習它,幾乎所有的電子公司都要用到它,許多大公司在招聘電子設計人才時在其條件欄上常會寫著要求會使用PROTEL。它包含了電原理圖繪制、模擬電路與數字電路混合信號仿真、多層印制電路板設計
19、(包含印制電路板自動布線)、可編程邏輯器件設計、圖表生成、電子表格生成、支持宏操作等功能,并具有Client/Server (客戶/服務器)體系結構,同時還兼容一些其它設計軟件的文件格式,如ORCAD,PSPICE,EXCEL等,其多層印制線路板的自動布線可實現高密度PCB的100布通率。1、運用PROTEL工具畫出原理電路:圖11整體電路圖圖12 PCB電路圖2、三維PCB圖圖13三維PCB圖2.2.1 本章小結本章是搶答器的系統仿真部分,并對搶答器的各個流程做出了具體仿真結果。從仿真圖上可以進一步得出結論:利用單片機設計的搶答器工作性能穩定,延遲時間小,電路結構簡單,是一個實用、創新性的電
20、路設計。3.軟件設計3.1系統主程序設計為了能夠達到搶答的公平、公正、合理,應該在主持人發布搶答命令之前必須先設定搶答的時間,因而在編開始搶答前的程序得先編寫設定時間的程序,當時間設好了之后,主持人發布搶答命令按下P1.7按鍵,程序開始打開定時中斷開始倒計時,然后調用鍵盤掃描子程序,編寫鍵盤掃描程序。當在掃描到有人按下了答題鍵,馬上關閉T0、調用顯示程序、封鎖鍵盤。主程序流程圖:加載程序運 行行開始開始數碼管顯示FFF開始搶按時間倒計時開始前有選手搶按顯示違例選手號碼并伴有語音報警倒計時結束,超時有選手搶按顯示FFF顯示選手號碼,倒計時時間,語音報警,答題,答題時間倒計時正常流程違規流程若超過
21、答題時間,則數碼管顯示FFF答題完畢根據選手表現,規則由主持人減分圖143.2主程序清單#include<reg51.h>#define uint unsigned int#define uchar unsigned charsbit suo=P24;sbit beep=P27;sbit wei1=P20;sbit wei2=P21;sbit wei3=P22;sbit led=P0;sbit kai=P32;sbit tin=P33;sbit jiaf=P30;sbit jianf=P31;sbit jias=P35;sbit jians=P36;sbit que=P37;sbi
22、t xuanshou=P25;sbit xx=P26;#include"wenjian.h"uchar code tale=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x71;uchar fen1=20,fen2=20,fen3=20,fen4=20,fen5=20,fen6=20,fen7=20,fen8=20;uchar score_one=1,score_two=2,score_three=3,score_four=4;uchar score;uchar temp,t;uchar f;uchar que1=0;
23、uchar time1=10,time2=10;uchar temp_int0;void delay1(uint z) /延時函數uint x,y;for(x=z;x>0;x-)for(y=110;y>0;y-);void init()/中斷 定時器 初始化函數void int0() interrupt 0/中斷0函數temp=1;void int1() interrupt 2/中斷0函數temp_int0=1;void time0(void) interrupt 1/計數器0中斷,設置計數器計數,50ms中斷t+;void display(uchar baiwei,shiwei,
24、gewei,xuanshou) /顯示函數suo=1;P2=0xf7; /打開顯示時間十位的位選delay1(5);P2=0xfb; /打開顯示時間十位的位選delay1(5);P2=0xfd;/個位位選delay1(5);P2=0xfe; /選手位選delay1(5);suo=0;uchar panduan()/判斷是哪一個選手按下鍵uchar i=0,b=0;if(kai=0) b=9;switch (P1) case 0xfe:b=1;break;case 0xfd:b=2;break;case 0xfb:b=3;break;case 0xf7:b=4;break;case 0xef:b
25、=5;break;case 0xdf:b=6;break;case 0xbf:b=7;break;case 0x7f:b=8;break; return b;uchar fenshu(uchar b,h)/b為選手所選的分數,h為對應的選手號/uchar x;while(xx=1&&temp_int0=0);if(jiaf=0&&temp_int0=0)delay1(10);if(jiaf=0)switch (h) case 1:fen1=fen1+b;x=fen1;break;case 2:fen2=fen2+b;x=fen2;break;case 3:fen
26、3=fen3+b;x=fen3;break;case 4:fen4=fen4+b;x=fen4;break;case 5:fen5=fen5+b;x=fen5;break;case 6:fen6=fen6+b;x=fen6;break;case 7:fen7=fen7+b;x=fen7;break;case 8:fen8=fen8+b;x=fen8;break; if(jianf=0&&temp_int0=0)delay1(10);if(jianf=0)switch (h) case 1:fen1=fen1-b;x=fen1;break;case 2:fen2=fen2-b;x
27、=fen2;break;case 3:fen3=fen3-b;x=fen3;break;case 4:fen4=fen4-b;x=fen4;break;case 5:fen5=fen5-b;x=fen5;break;case 6:fen6=fen6-b;x=fen6;break;case 7:fen7=fen7-b;x=fen7;break;case 8:fen8=fen8-b;x=fen8;break; return x;void ma(uchar a)uchar h;uchar s;uchar temp2;suo=0;s=time2;h=a;/*switch (a) case 1:fen=
28、fen1;break;case 2:fen=fen2;break;case 3:fen=fen3;break;case 4:fen=fen4;break;case 5:fen=fen5;break;case 6:fen=fen6;break;case 7:fen=fen7;break;case 8:fen=fen8;break; */temp2=P0&0xf0;while(temp2=0xf0&&temp_int0=0)temp2=P0&0xf0;if(temp2!=0xf0&&temp_int0=0)delay1(10);delay1(10);
29、if(temp2!=0xf0)switch (temp2) case 0xe0:score=score_one;break;case 0xd0:score=score_two;break;case 0xb0:score=score_three;break;case 0x70:score=score_four;break; TR0=1;while(s>0&&que1=0&&temp_int0=0)if(t=20)t=0;s-;if(s=0)ET0=0;f=fenshu(score,h);que1=1;TR0=0;break;if(xuanshou=0)del
30、ay1(20);if(xuanshou=0)que1=1;f=fenshu(score,h);TR0=0;break;display(tales%100%10,tales%100/10,tales/100,talea);que1=0;while(temp_int0=0)display(talef%100%10,talef%100/10,talef/100,talea);void panduan1()uchar i;uchar temp2;uchar temp1;uchar biao=0;temp2=time1;temp_int0=0;if(temp=1&&temp_int0=0
31、)temp=0;temp1=panduan();switch(temp1)case 9:temp1=0; while(temp2>0&&biao=0&&temp_int0=0) temp1=panduan(); switch(temp1) case 0:break;case 1:display(tale10,tale10,tale10,tale1);ET0=0;ma(1);biao=1;break; case 2:display(tale10,tale10,tale10,tale2);ET0=0;ma(2);biao=1;break; case 3:dis
32、play(tale10,tale10,tale10,tale3);ET0=0;ma(3);biao=1;break; case 4:display(tale10,tale10,tale10,tale4);ET0=0;ma(4);biao=1;break;case 5:display(tale10,tale10,tale10,tale5);ET0=0;ma(5);biao=1;break; case 6:display(tale10,tale10,tale10,tale6);ET0=0;ma(6);biao=1;break; case 7:display(tale10,tale10,tale10
33、,tale7);ET0=0;ma(7);biao=1;break; case 8:display(tale10,tale10,tale10,tale8);ET0=0;ma(8);biao=1;break; default:break;if(biao=1) biao=0;break; if(t=20&&biao=0) t=0; temp2-; if(temp2=0) display(taletemp2%100%10,taletemp2%100/10,taletemp2/100,tale10); break; case 1:for(i=0;i<100;i+)delay1(20
34、);display (tale10,tale10,tale10,tale1);temp1=0;break;case 2:for(i=0;i<100;i+)display (tale10,tale10,tale10,tale2);temp1=0;break;case 3:for(i=0;i<100;i+)display (tale10,tale10,tale10,tale3);temp1=0;break;case 4:for(i=0;i<100;i+)display (tale10,tale10,tale10,tale4);temp1=0;break;case 5:for(i=
35、0;i<100;i+)display (tale10,tale10,tale10,tale5);temp1=0;break;case 6:for(i=0;i<100;i+)display (tale10,tale10,tale10,tale6);temp1=0;break;case 7:for(i=0;i<100;i+)display (tale10,tale10,tale10,tale7);temp1=0;break;case 8:for(i=0;i<100;i+)display (tale10,tale10,tale10,tale8);temp1=0;break;
36、void scan_qiang_time()if(jias=0)delay1(20);delay1(20);delay1(20);delay1(20);if(jias=0) while(que!=0) delay1(20);delay1(20);delay1(20);delay1(20); if(que!=0) if(jias=0) delay1(20);delay1(20);delay1(20);delay1(20); if(jias=0) time1=time1+1; if(jians=0) delay1(20);delay1(20);delay1(20);delay1(20); if(j
37、ians=0) time1=time1-1; display(taletime1%100%10,taletime1%100/10,taletime1/100,tale10); void scan_dati_time()if(jians=0)delay1(20);delay1(20);delay1(20);if(jians=0) while(que!=0) delay1(20);delay1(20);delay1(20); if(que!=0) if(jias=0) delay1(20);delay1(20);delay1(20); if(jias=0) time2=time2+1; if(ji
38、ans=0) delay1(20);delay1(20);delay1(20); if(jians=0) time2=time2-1; display(taletime2%100%10,taletime2%100/10,taletime2/100,tale10); void main()while(1)init();panduan1();display(tale10,tale10,tale10,tale10);scan_qiang_time();scan_dati_time();3.3本章小結本章是搶答器的軟件設計,實現搶答功能主要是通過編寫程序的方法集成在AT89C51內部。將程序下載到硬件
39、電路中,實現搶答功能。4.仿真模塊4.1 Proteus仿真系列圖組4.1.1 仿真電路圖仿真電路基本操作步驟:(1)、打開PROTEUS 操作界面添加所需電路元件到元件列表中: 單擊“P”按鈕,出現挑選元件對話框, 在出現的對話框Keywords中輸入所用元件名稱,在對話框中單擊OK按鈕,關閉對話框。(2)放置元件。在元件列表中左健選取元件,在編輯窗口中單擊左健,這樣元件就被放到原理圖編輯窗口中了。(3)在編輯區布線,修改元件參數。 點擊想要連接的兩個引腳,就能就能簡單地實現布線。在特殊的位置需要布線,用戶只需在中間的角落點擊。自動布線也能在元件移動的時候操作,自動地解決相應的連線。節點自動
40、布置和移除。節約時間的同時,避免其他方面可能引起的錯誤。也可以手工布點,但是布點以后需要連線。雙擊元件修改相關參數。(4)進行電路仿真,完成原理圖。一、搶答器仿真電路圖:圖15仿真電路圖 圖中U1為單片機AT89C51,U2為芯片74HC30,U3為芯片74LS04。K1K8分別為8路搶答按鍵,分別接到單片機的P1.0P1.7中。開始按鍵與結束按鍵分別接到單片機的10、11腳,由于單片機的10、11腳既有串行接口RXD、TXD功能,又有P3.0、P3.1的IO端口功能,此處按鍵用到單片機10、11腳的IO端口功能。搶答時間調整按鍵和回答時間調整按鍵分別接到單片機的13、14管腳,加一按鍵和減一
41、按鍵分別接到單片機的15、16管腳。4位七段數碼管段選P0口。4位七段數碼管的位選接P2口低3位,蜂鳴器輸為P2.7口8.二、復位圖圖16 復位顯示三個FFF該圖顯示當單片機復位后,在4位七段數碼管上顯示的初始狀態“F FF”字符。三、設置計時時間圖17 計時時間為17秒該圖顯示通過加一按鍵操作后在4位數碼管上顯示的計時時間為F009秒。四、非法搶答并顯示座號圖18 1號選手非法搶答該圖顯示的是若三號選手非法搶答時候,第一位字符顯示單片機判定的非法選手“1”號選手,在4位數碼管上的后兩位顯示非法搶答字符“FFF”。五、搶答成功并顯示倒計時圖201號選手搶答圖中顯示的是若1號選手搶答成功的時候,
42、4位數碼管的第一顯示是“1”號選手搶答成功,最后三位不顯示。4.2安裝與調試 1、直流電壓表調試步驟。 制作PCB電路板流程:打印PCB裁剪覆銅板預處理覆銅板(打磨)轉印PCB腐蝕電路板電路板鉆孔電路板預處理(打磨、清洗、涂松香)焊接電子元件。調試:(1) 開機按電源開關,顯示屏左邊的"搶答"指示燈亮,數碼管顯示。(2) 設定"搶答"倒計時時間(3) 設定"答題"倒計時時間(4) 測試各組搶答按鍵試按一下各組的搶答按鈕,應立即顯示該組的組別數字,同時機內喇叭發出"叮咚"的提示音,按"取消"鍵,返
43、回"0"閃爍狀態。(5) 啟動搶答倒計時,開始搶答"FFFF"狀態下,當主持人宣布搶答開始時,馬上按一下"搶答"鍵,屏幕顯示所設定的搶答倒計時時間并開始倒計時,提示倒計時時間馬上臨近結束。倒計時到0以后,儀器發出"叮咚"的結束提示音,同時顯示屏返回"FFFF"待命狀態。在"搶答"倒計時中,如果有參賽組搶答,儀器屏幕立即顯示該組的組別號,同時發出"叮咚"的搶答成功提示音。需要返回"FFFF"待命狀態,按"取消"鍵即可。(6) 啟動答題倒計時"FFFF"狀態下,或有參賽組搶答成功后,需要開始答題的計時時,按"答題計時"鍵,屏幕顯示所設定的答題倒計時時間并開始倒計時,提示倒計時時間馬上臨近結束。倒計時到0以后,儀器發出"丁冬"的結束提示音,同時顯示屏返回"FFFF"待命狀態。(7) 提前取消倒計時無論是"搶答"還是"答題"的倒計時時間,需要提前退出,只要按一
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 餐飲企業財務經理聘用合同樣本
- 廠區轉讓及品牌使用權與銷售權協議
- 出租車司機安全駕駛責任保險合同
- 車棚綠化設計與施工一體化合同
- 城市共享單車借用運營管理合同
- 車間內部承包經營與智能機器人應用合同范本
- 老兵精神班會課件
- 大使館崗位分級考試題及答案
- 美術老師課件入場介紹
- 訂貨會培訓課件
- 2024內蒙古煤炭地質勘查(集團)一一七有限公司招聘筆試參考題庫附帶答案詳解
- 信訪工作法治化培訓講座
- 急性右心衰的治療與護理
- 露天礦山新進員工安全培訓
- 主播助理合同范本
- 制約理論(TOC)驅動制造業突破性增長
- 湖南省2024年普通高等學校對口升學旅游專業
- 氨甲環酸用藥護理
- 2025年遼寧沈陽地鐵集團有限公司所屬分公司招聘筆試參考題庫附帶答案詳解
- 車間主任轉正述職報告
- 靜脈采血并發癥預防與處理
評論
0/150
提交評論