版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p> 目 錄</p><p> 前言--------------------------------------------------------------------------2</p><p> 課程設(shè)計(jì)的目的和要求------------------------------------------------------2</p&
2、gt;<p> 課程設(shè)計(jì)的目的-----------------------------------------------------2</p><p> 課程設(shè)計(jì)的基本要求-------------------------------------------------2</p><p> 系統(tǒng)設(shè)計(jì)----------------------------------
3、--------------------------------2</p><p> 2.1基本工作原理-----------------------------------------------------------2</p><p> 2.2系統(tǒng)設(shè)計(jì)-----------------------------------------------------------2</
4、p><p> 2.2.1系統(tǒng)組成方案---------------------------------------------------2</p><p> 2.2.2擴(kuò)展單元編址---------------------------------------------------2</p><p> 2.2.3 按鍵、顯示功能的定義--------------
5、------------------------------2</p><p> 2.3 軟件總體設(shè)計(jì)-----------------------------------------------------2</p><p> 2.3.1 存儲(chǔ)單元的分配、標(biāo)志位的定義------------------------------------2</p><p>
6、 2.3.2主程序框圖及清單-----------------------------------------------3</p><p> 硬件設(shè)計(jì)------------------------------------------------------------------3</p><p> 3.1主控制器----------------------------------
7、-----------------------------3</p><p> 3.1.1 80C51內(nèi)部結(jié)構(gòu)--------------------------------------------------3</p><p> 3.1.2 80C51引腳封裝與功能表------------------------------------------4</p><
8、p> 3.1.3 P0P1P2P3口內(nèi)部結(jié)構(gòu)及作為I/O端口時(shí)的使用-----------------------6</p><p> 3.1.4 晶體振蕩器電路-------------------------------------------------6</p><p> 3.1.5 復(fù)位電路---------------------------------------
9、-----------------7</p><p> 3.2 DS18B20原理及引腳介紹-------------------------------------------------7</p><p> 3.3 LED顯示驅(qū)動(dòng)電路-------------------------------------------------------8</p><p&g
10、t; 4 軟件設(shè)計(jì)------------------------------------------------------------------8</p><p> 5.Proteus仿真系列圖…………………………………………………………………………….13</p><p> 6 系統(tǒng)操作說明………………………………………………………………………………….16</p&g
11、t;<p> 7 結(jié)束語-------------------------------------------------------------------16</p><p> 8 參考文獻(xiàn)-----------------------------------------------------------------17</p><p> 9 系統(tǒng)原理圖----
12、-----------------------------------------------------------17</p><p> 附錄1-----------------------------------------------------------------------17</p><p> 1.課程設(shè)計(jì)的目的和要求</p><p> 1.
13、1課程設(shè)計(jì)的目的</p><p> 本次課程設(shè)計(jì)的目的主要是學(xué)會(huì)利用單片機(jī)采用軟硬件結(jié)合的方法設(shè)計(jì)電子產(chǎn)品,一方面是學(xué)會(huì)以軟代硬,用軟件程序?qū)崿F(xiàn)硬件功能,簡化電路,另一方面就是學(xué)會(huì)設(shè)計(jì)硬件電路,科學(xué)布局電子電子元器件,掌握電路焊接的基本方法。</p><p> 1.2課程設(shè)計(jì)的基本要求</p><p><b> 基本要求:</b><
14、/p><p> (1)給主持人設(shè)置一個(gè)開關(guān),用來控制系統(tǒng)的清零(編號(hào)顯示數(shù)碼管滅燈)和搶答器的開始。</p><p> (2)搶答器具有數(shù)據(jù)鎖存和顯示的功能。搶答開始后,若有選手按動(dòng)搶答器按鈕,編號(hào)立即鎖存,并在LED數(shù)碼上顯示選手的編號(hào),同時(shí)揚(yáng)聲器給出音響提示。此外,要封鎖輸入電路,禁止其他選手搶答。</p><p><b> 發(fā)揮部分:</b&
15、gt;</p><p> (1)搶答器具有定時(shí)搶答的功能,且一次搶答的時(shí)間和答題的時(shí)間可以由主持人設(shè)定(如30秒)。當(dāng)節(jié)目主持人啟動(dòng)“開始”鍵后,要求定時(shí)器立即減計(jì)時(shí),并用顯示器顯示,同時(shí)揚(yáng)聲器發(fā)出短暫的聲響,聲響持續(xù)時(shí)間0.5秒左右。</p><p> (2)參加選手在設(shè)定的時(shí)間內(nèi)搶答,搶答有效,定時(shí)器停止工作,顯示器上顯示選手的編號(hào)和搶答時(shí)刻的時(shí)間,并保持到主持人將系統(tǒng)清零為止。&
16、lt;/p><p> (2)如果定時(shí)搶答的時(shí)間已到,卻沒有選手搶答時(shí),本次搶答無效,系統(tǒng)短暫報(bào)警,并封鎖輸入電路,禁止選手超時(shí)后搶答,時(shí)間顯示器上顯示FF。</p><p> (3)選手如果在主持人按開始鍵之前違規(guī)搶答,系統(tǒng)報(bào)警,LED顯示違規(guī)選手號(hào)碼和FF,直到主持人按下停止鍵。</p><p><b> 2.系統(tǒng)設(shè)計(jì)</b></p&
17、gt;<p><b> 2.1 基本原理</b></p><p> 搶答器的工作原理是采用單片機(jī)最小系統(tǒng),用程序查詢方式采用動(dòng)態(tài)顯示組號(hào)。主持人按下開始搶答鍵才可以搶答。主持人沒有按下開始搶答按紐(P3.0),有人搶答則搶答違規(guī),報(bào)警并顯示組號(hào),主持人按下開始搶答開關(guān)重新?lián)尨?。主持人按下開始搶答按紐(P3.0),蜂鳴響聲提示,數(shù)碼管30秒倒計(jì)時(shí)搶答,蜂鳴器響聲提示并顯示他的
18、組號(hào),30秒內(nèi)有人搶答則開始60秒倒計(jì)時(shí)(60秒內(nèi)必須回答完問題),最后五秒倒計(jì)時(shí)警報(bào)。單片機(jī)最小系統(tǒng)、搶答按鍵模塊(四位并行數(shù)碼顯示)、顯示模塊、顯示驅(qū)動(dòng)模塊、搶答開關(guān)模塊、蜂鳴器音頻輸出模塊。</p><p> 2.2.1系統(tǒng)設(shè)計(jì) </p><p><b> 基本要求</b></p><p> (1).給主持人設(shè)置一個(gè)開關(guān),用來控制系
19、統(tǒng)的清零(編號(hào)顯示數(shù)碼管滅燈)和搶答器的開始。</p><p> (2).搶答器具有數(shù)據(jù)鎖存和顯示的功能。搶答開始后,若有選手按動(dòng)搶答器按鈕,編號(hào)立即鎖存,并在LED數(shù)碼上顯示選手的編號(hào),同時(shí)揚(yáng)聲器給出音響提示。此外,要封鎖輸入電路,禁止其他選手搶答。</p><p><b> 發(fā)揮部分:</b></p><p> (3)搶答器具有定時(shí)搶
20、答的功能,且一次搶答的時(shí)間和答題的時(shí)間可以由主持人設(shè)定(如30秒)。當(dāng)節(jié)目主持人啟動(dòng)“開始”鍵后,要求定時(shí)器立即減計(jì)時(shí),并用顯示器顯示,同時(shí)揚(yáng)聲器發(fā)出短暫的聲響,聲響持續(xù)時(shí)間0.5秒左右。</p><p> (4)參加選手在設(shè)定的時(shí)間內(nèi)搶答,搶答有效,定時(shí)器停止工作,顯示器上顯示選手的編號(hào)和搶答時(shí)刻的時(shí)間,并保持到主持人將系統(tǒng)清零為止。</p><p> (5)如果定時(shí)搶答的時(shí)間已到,
21、卻沒有選手搶答時(shí),本次搶答無效,系統(tǒng)短暫報(bào)警,并封鎖輸入電路,禁止選手超時(shí)后搶答,時(shí)間顯示器上顯示FF。</p><p> (6)選手如果在主持人按開始鍵之前違規(guī)搶答,系統(tǒng)報(bào)警,LED顯示違規(guī)選手號(hào)碼和FF,直到主持人按下停止鍵。</p><p><b> 系統(tǒng)組成</b></p><p> 搶答器的實(shí)現(xiàn)方式有種多樣,通過純電子器件搭建電
22、路實(shí)現(xiàn),如優(yōu)先編碼器,鎖存器,555定時(shí)器譯碼器等,純電子器件實(shí)現(xiàn)沒有軟件參與,調(diào)試簡單,但是它不易于擴(kuò)展和修改,而且電路結(jié)構(gòu)復(fù)雜,調(diào)試?yán)щy電子,電子器件管腳很多,實(shí)際搭建起來費(fèi)時(shí)費(fèi)力,焊接很容易出錯(cuò)。于是,我想到了用單片機(jī)實(shí)現(xiàn)。該系統(tǒng)采用51系列單片機(jī)AT89C51作為控制核心,該系統(tǒng)可以完成運(yùn)算控制、信號(hào)識(shí)別以及顯示功能的實(shí)現(xiàn)。由于用了單片機(jī),使其技術(shù)比較成熟,應(yīng)用起來方便、簡單并且單片機(jī)周圍的輔助電路也比較少,便于控制和實(shí)現(xiàn)。整個(gè)
23、系統(tǒng)具有極其靈活的可編程性,能方便地對系統(tǒng)進(jìn)行功能的擴(kuò)張和更改。其原理框圖如下:</p><p> 在實(shí)際電路設(shè)計(jì)中,需要先通過仿真軟件測試電路以及編譯的程序,檢查外圍電路設(shè)計(jì)是否合理,軟件編譯是否正確,以及軟件和硬件電路能否正常配合工作,能否準(zhǔn)確的實(shí)現(xiàn)所設(shè)計(jì)的功能。如果測試通過,電路仿真沒有問題能完全實(shí)現(xiàn)功能的話就可以實(shí)際的做板子的焊接工作了。在老師的指導(dǎo)下我選擇了常用的單片機(jī)仿真軟件proteus7.0以及
24、keil 進(jìn)行仿真</p><p><b> 擴(kuò)張單元地址</b></p><p><b> 無擴(kuò)展單元</b></p><p> 按鍵、顯示功能的定義</p><p> P1口的八位分別接8位選手的按鍵,作搶答按鍵口</p><p> P3.1接復(fù)位鍵,按下程序復(fù)
25、位</p><p> P3.2接搶答時(shí)間調(diào)整鍵,按下進(jìn)入搶答時(shí)間調(diào)整</p><p> P3.3接答題時(shí)間調(diào)整鍵,按下進(jìn)入答題時(shí)間調(diào)整</p><p> P3.4接時(shí)間調(diào)整加1鍵,按下被調(diào)時(shí)間加1</p><p> P3.5接時(shí)間調(diào)整減1鍵,按下被調(diào)時(shí)間減1</p><p> RST接單片機(jī)復(fù)位鍵,按下單片機(jī)
26、復(fù)位</p><p> 四位八段數(shù)碼管,第一位顯示搶答選手號(hào),第三、四位顯示倒計(jì)時(shí)間,第二位不用把選手號(hào)和倒計(jì)時(shí)間隔開</p><p><b> 2.3軟件總體設(shè)計(jì)</b></p><p> 2.3.1 存儲(chǔ)單元的分配、標(biāo)志位的定義</p><p> OK EQU 20H:搶答開始標(biāo)志位</p>&
27、lt;p> RING EQU 22H:響鈴標(biāo)志位</p><p> P3.0搶答開始標(biāo)志位</p><p><b> P3.1復(fù)位標(biāo)志位</b></p><p> P3.2搶答時(shí)間調(diào)整標(biāo)志位</p><p> P3.3答題時(shí)間調(diào)整標(biāo)志位</p><p> P3.4時(shí)間調(diào)整加1標(biāo)志
28、位</p><p> P3.5時(shí)間調(diào)整減1標(biāo)志位</p><p> P3.6蜂鳴取反標(biāo)志位</p><p> R0作定時(shí)1秒的指針</p><p> R1做搶答時(shí)間的存儲(chǔ)單元</p><p> R2做答題時(shí)間的存儲(chǔ)單元</p><p> R3 做選手號(hào)的存儲(chǔ)單元</p>
29、<p><b> R6 做倒計(jì)時(shí)指針</b></p><p><b> P0口做送顯段碼口</b></p><p> P1口做選手搶答按鍵口</p><p><b> P2口做送顯位選口</b></p><p><b> P3口做功能鍵口<
30、/b></p><p> 2.3.2主程序框圖及清單</p><p><b> 3. 硬件設(shè)計(jì)</b></p><p><b> 3.1主控制器</b></p><p> 3.1.1 89C51內(nèi)部結(jié)構(gòu)</p><p> 3.1.2 89C51引腳封裝與功能表
31、</p><p> Vcc(40引腳):接+5V電源</p><p> Vss(20引腳):接地</p><p> P0口:8位雙向I/O口線,為P0.0-P0.7</p><p> P1口:8位準(zhǔn)雙向I/O口線,為P1.0-P1.7</p><p> P2口:8位準(zhǔn)雙向I/O口線,為P2.0-P2.7<
32、;/p><p> P3口:8位準(zhǔn)雙向I/O口線,為P3.0-P3.7</p><p> XTAL1:片內(nèi)晶振電路的輸入端</p><p> XTAL2:片內(nèi)晶振電路的輸出端</p><p> RST/VPP:復(fù)位引腳,引腳上出現(xiàn)2個(gè)機(jī)器周期的高電平將使單片機(jī)復(fù)位。</p><p> ALE/PROG:地址所存允許
33、信號(hào)。</p><p> PSEN:外部存儲(chǔ)器讀選通訊信號(hào)。</p><p> EA/VPP:程序存儲(chǔ)器的內(nèi)外部選通,接低電平從外部程序存儲(chǔ)器讀指令,如果接高電平則從內(nèi)部程序存儲(chǔ)器讀指令。</p><p> 3.1.3 P0P1P2P3口內(nèi)部結(jié)構(gòu)及作為I/O端口時(shí)的使用</p><p> P0口和P2的結(jié)構(gòu) P0口的結(jié)構(gòu):下圖為P0
34、口的某位P0.n(n=0~7)結(jié)構(gòu)圖,它由一個(gè)輸出鎖存器、兩個(gè)三態(tài)輸入緩沖器和輸出驅(qū)動(dòng)電路及控制電路組成。從圖中可以看出,P0口既可以作為I/O用,也可以作為地址/數(shù)據(jù)線用。</p><p> P0口作為普通I/O口:①輸出時(shí),CPU發(fā)出控制電平“0”封鎖“與”門,將輸出上拉場效應(yīng)管T1截止,同時(shí)使多路開關(guān)MUX把鎖存器與輸出驅(qū)動(dòng)場效應(yīng)管T2柵極接通。故內(nèi)部總線與P0口同相。由于輸出驅(qū)動(dòng)級是漏極開路電路,若驅(qū)
35、動(dòng)NMOS或其它拉流負(fù)載時(shí),需要外接上拉電阻。P0的輸出級可驅(qū)動(dòng)8個(gè)LSTTL負(fù)載。②輸入時(shí)----分讀引腳或讀鎖存器讀引腳:由傳送指令(MOV)實(shí)現(xiàn);下面一個(gè)緩沖器用于讀端口引腳數(shù)據(jù),當(dāng)執(zhí)行一條由端口輸入的指令時(shí),讀脈沖把該三態(tài)緩沖器打開,這樣端口引腳上的數(shù)據(jù)經(jīng)過緩沖器讀入到內(nèi)部總線。</p><p> 讀鎖存器:有些指令如:ANL P0,A稱為“讀-改-寫”指令,需要讀鎖存器。上面一個(gè)緩沖器用于讀端
36、口鎖存器數(shù)據(jù)。原因:如果此時(shí)該端口的負(fù)載恰是一個(gè)晶體管基極,且原端口輸出值為1,那么導(dǎo)通了的PN結(jié)會(huì)把端口引腳高電平拉低;若此時(shí)直接讀端口引腳信號(hào),將會(huì)把原輸出的“1”電平誤讀為“0”電平?,F(xiàn)采用讀輸出鎖存器代替讀引腳,圖中,上面的三態(tài)緩沖器就為讀鎖存器Q端信號(hào)而設(shè),讀輸出鎖存器可避免上述可能發(fā)生的錯(cuò)誤。**說明:(1)P0口必須接上拉電阻;(2)在讀信號(hào)之前數(shù)據(jù)之前,先要向相應(yīng)的鎖存器做寫1操作的I/O口稱為準(zhǔn)雙向口;三態(tài)輸
37、入緩沖器的作用:(ANL P0,A)</p><p> 準(zhǔn)雙向口:從圖中可以看出,在讀入端口數(shù)據(jù)時(shí),由于輸出驅(qū)動(dòng)FET并接在引腳上,如果T2導(dǎo)通,就會(huì)將輸入的高電平拉成低電平,產(chǎn)生誤讀。所以在端口進(jìn)行輸入操作前,應(yīng)先向端口鎖存器寫“1”,使T2截止,引腳處于懸浮狀態(tài),變?yōu)楦咦杩馆斎?。這就是所謂的準(zhǔn)雙向口。P0作為地址/數(shù)據(jù)總線在系統(tǒng)擴(kuò)展時(shí),P0端口作為地址/數(shù)據(jù)總線使用時(shí),分為:(1)P0引腳輸出地址
38、/數(shù)據(jù)信息:CPU發(fā)出控制電平“1”,打開“與”門,又使多路開關(guān)MUX把CPU的地址/數(shù)據(jù)總線與T2柵極反相接通,輸出地址或數(shù)據(jù)。由圖上可以看出,上下兩個(gè)FET處于反相,構(gòu)成了推拉式的輸出電路,其負(fù)載能力大大增強(qiáng)。P0作為地址/數(shù)據(jù)總線----真正的雙向口(2)P0引腳輸出地址/輸入數(shù)據(jù):輸入信號(hào)是從引腳通過輸入緩沖器進(jìn)入內(nèi)部總線。此時(shí),CPU自動(dòng)使MUX向下,并向P0口寫“1”,“讀引腳”控制信號(hào)有效,下面的緩沖器打開,外部數(shù)據(jù)
39、讀入內(nèi)部總線。P2的內(nèi)部結(jié)構(gòu)</p><p> P2口作為普通I/O口:CPU發(fā)出控制電平“0”,使多路開關(guān)MUX倒向鎖存器輸出Q端,構(gòu)成一個(gè)準(zhǔn)雙向口。其功能與P1相同。</p><p> P2口作為地址總線:在系統(tǒng)擴(kuò)展片外程序存儲(chǔ)器擴(kuò)展數(shù)據(jù)存儲(chǔ)器且容量超過256B (用MOVX @DPTR指令)時(shí),CPU發(fā)出控制電平“1”,使多路開關(guān)MUX倒內(nèi)部地址線。此時(shí),P2輸出高8位地址。
40、P1口、P3口的內(nèi)部結(jié)構(gòu)①P1口的一位的結(jié)構(gòu)它由一個(gè)輸出鎖存器、兩個(gè)三態(tài)輸入緩沖器和輸出驅(qū)動(dòng)電路組成----準(zhǔn)雙向口。</p><p><b> ?、赑3的內(nèi)部結(jié)構(gòu)</b></p><p> 作為通用I/O口與P1口類似----準(zhǔn)雙向口(W=1)</p><p> P3第二功能(Q=1)此時(shí)引腳部分輸入(Q=1、W=1) ,部分輸出
41、(Q=1、W輸出)。P3第二功能各引腳功能定義:P3.0:RXD串行口輸入P3.1:TXD串行口輸出P3.2:INT0外部中斷0輸入P3.3:INT1外部中斷1輸入P3.4:T0定時(shí)器0外部輸入P3.5:T1定時(shí)器1外部輸入P3.6:WR外部寫控制P3.7:RD外部讀控制綜上所述:當(dāng)P0作為I/O口使用時(shí),特別是作為輸出時(shí),輸出級屬于開漏電路,必須外接上拉電阻才會(huì)有高電平輸出;如果作為輸入,必須先向相應(yīng)的鎖存器寫“1
42、”,才不會(huì)影響輸入電平。當(dāng)CPU內(nèi)部控制信號(hào)為“1”時(shí),P0口作為地址/數(shù)據(jù)總線使用,這時(shí),P0口就無法再作為I/O口使用了。P1、P2和P3口為準(zhǔn)雙向口,在內(nèi)部差別不大,但使用功能有所不同。P1口是用戶專用8位準(zhǔn)雙向I/O口,具有通用輸入/輸出功能,每一位都能獨(dú)立地設(shè)定為輸入或輸出。當(dāng)有輸出方式變?yōu)檩斎敕绞綍r(shí),該位的鎖存器必須寫入“1”,然后才能進(jìn)入輸入操作。P2口是8位準(zhǔn)雙向I/O口。外接I/O設(shè)備時(shí),可作為擴(kuò)展系統(tǒng)的地址總
43、線,輸出高8位地址,與P0口一起組成16位地址總線</p><p> 3.1.4 晶體振蕩器電路</p><p><b> 復(fù)位電路</b></p><p><b> 蜂鳴器驅(qū)動(dòng)電路</b></p><p> 3.3 八段數(shù)碼管顯示驅(qū)動(dòng)電路</p><p><b
44、> 4.軟件設(shè)計(jì)</b></p><p> 在本設(shè)計(jì)中包括了以下主要的程序:主程序,查詢程序,非法搶答程序,搶答時(shí)間調(diào)整程序,回答時(shí)間調(diào)整程序,倒計(jì)時(shí)程序,正常搶答處理程序,犯規(guī)處理程序,顯示及發(fā)聲程序。整個(gè)程序主要由定時(shí)器T0、定時(shí)器T1、外部中斷0和外部中斷1和主程序構(gòu)成。主流程圖如4.2.1所示:</p><p><b> 主程序流程圖</b&
45、gt;</p><p> INT0用于調(diào)整搶答時(shí)間,設(shè)計(jì)流程圖如下:</p><p> INT1用于調(diào)整答題時(shí)間,設(shè)計(jì)流程圖如下:</p><p> 定時(shí)器T0用于使揚(yáng)聲器發(fā)聲,當(dāng)需要響鈴時(shí),把響鈴標(biāo)志位置一,每次中斷都對P3.6取反,揚(yáng)聲器發(fā)聲,改變定時(shí)器初值,可改變揚(yáng)聲器頻率。這里用綠燈閃爍代替。程序流程圖如下:</p><p>
46、 定時(shí)器T1用于倒計(jì)時(shí),每次中斷為50ms,當(dāng)計(jì)數(shù)標(biāo)志為20時(shí)即為一秒,顯示數(shù)字減一。其流程圖如下:</p><p> 5.Proteus仿真系列組圖</p><p><b> 5.1 復(fù)位圖</b></p><p> 圖5.1復(fù)位顯示三個(gè)FFF</p><p> 該圖顯示當(dāng)單片機(jī)復(fù)位后,在4位七段數(shù)碼管上顯示的
47、初始狀態(tài)“F FF”字符。</p><p> 5.2 設(shè)置計(jì)時(shí)時(shí)間</p><p> 圖5.2 計(jì)時(shí)時(shí)間為17秒</p><p> 該圖顯示通過加一按鍵操作后在4位數(shù)碼管上顯示的計(jì)時(shí)時(shí)間為17秒。</p><p> 5.3 非法搶答并顯示座號(hào)</p><p> 圖5.3 三號(hào)選手非法搶答</p>
48、<p> 該圖顯示的是若三號(hào)選手非法搶答時(shí)候,第一位字符顯示單片機(jī)判定的非法選手“3”號(hào)選手,在4位數(shù)碼管上的后兩位顯示非法搶答字符“FF”。</p><p> 5.4 搶答成功并顯示倒計(jì)時(shí)</p><p> 圖5.4 六號(hào)選手搶答</p><p> 圖中顯示的是若6號(hào)選手搶答成功的時(shí)候,4位數(shù)碼管只顯示第一位,表示六號(hào)選手搶答成功。</p
49、><p> 5.5 搶答成功并顯示倒計(jì)時(shí)</p><p> 圖5.4 六號(hào)選手搶答</p><p> 圖中顯示的是若6號(hào)選手搶答成功并開始答題的情形,4位數(shù)碼管的第一顯示是“6”號(hào)選手搶答成功,最后兩位顯示選手答題倒計(jì)時(shí)時(shí)間還有25秒。</p><p><b> 6.系統(tǒng)操作說明</b></p><
50、;p> 本系統(tǒng)共有七個(gè)功能鍵</p><p> 按鍵A為單片機(jī)復(fù)位鍵</p><p><b> 按鍵B為搶答開始鍵</b></p><p><b> 按鍵C為搶答復(fù)位鍵</b></p><p><b> 按鍵D為答題開始鍵</b></p><
51、p> 按鍵E為搶答時(shí)間調(diào)整鍵</p><p> 按鍵F為答題時(shí)間調(diào)整鍵</p><p><b> 按鍵G為時(shí)間加1鍵</b></p><p><b> 按鍵H為時(shí)間減1鍵</b></p><p><b> 7.結(jié)束語-</b></p><p&
52、gt; 本文研究與設(shè)計(jì)的八路多功能搶答器采用了通用的電子元器件,利用AT89C51單片機(jī)及外圍接口實(shí)現(xiàn)搶答系統(tǒng),利用單片機(jī)的定時(shí)器/計(jì)數(shù)器定時(shí)和記數(shù)的原理,將軟、硬件有機(jī)地結(jié)合起來。理論聯(lián)系實(shí)踐,體現(xiàn)出大學(xué)生動(dòng)手能力。通過查資料和搜集有關(guān)的文獻(xiàn),培養(yǎng)了自學(xué)能力和動(dòng)手能力。并且由原先的被動(dòng)的接受知識(shí)轉(zhuǎn)換為主動(dòng)的尋求知識(shí),這可以說是學(xué)習(xí)方法上的一個(gè)很大的突破。在以往的傳統(tǒng)的學(xué)習(xí)模式下,我們可能會(huì)記住很多的書本知識(shí),但是通過畢業(yè)論文,我們學(xué)
53、會(huì)了如何將學(xué)到的知識(shí)轉(zhuǎn)化為自己的東西,學(xué)會(huì)了怎么更好的處理知識(shí)和實(shí)踐相結(jié)合的問題。把握重點(diǎn)、攻克難關(guān),學(xué)到用到、活學(xué)活用。在設(shè)計(jì)過程中由于時(shí)間倉促有很多地方難免存在不足之處,硬件設(shè)計(jì)已經(jīng)完成,在軟件設(shè)計(jì)中有些功能還尚未開發(fā)出來。但在以后的工作中,我們會(huì)嚴(yán)格要求自己,追求完美。</p><p> 整個(gè)設(shè)計(jì)通過了軟件和硬件上的調(diào)試、仿真。我想這對于自己以后的學(xué)習(xí)和工作都會(huì)有很大的幫助的。在這次設(shè)計(jì)中遇到了很多實(shí)際性
54、的問題,在實(shí)際設(shè)計(jì)中才發(fā)現(xiàn),書本上理論性的東西與在實(shí)際運(yùn)用中的還是有一定的出入的,所以有些問題不但要深入地理解,而且要不斷地更正以前的錯(cuò)誤思維。對于單片機(jī)設(shè)計(jì),其硬件電路是比較簡單的,主要是解決程序設(shè)計(jì)中的問題。而程序設(shè)計(jì)是一個(gè)很靈活的東西,它反映了你解決問題的邏輯思維和創(chuàng)新能力。它才是一個(gè)設(shè)計(jì)的靈魂所在。因此在整個(gè)設(shè)計(jì)過程中大部分時(shí)間是用在程序上面的。很多子程序是可以借鑒書本上的,但怎樣銜接各個(gè)子程序才是關(guān)鍵的問題所在,這需要對單片機(jī)
55、的結(jié)構(gòu)很熟悉。因此可以說單片機(jī)的設(shè)計(jì)是軟件和硬件的結(jié)合,二者是密不可分的。</p><p> 但是,通過這次設(shè)計(jì)我也發(fā)現(xiàn)自己的很多不足之處。在設(shè)計(jì)過程中我發(fā)現(xiàn)自己考慮問題很不全面,自己的專業(yè)知識(shí)掌握的很不牢固,所掌握的計(jì)算機(jī)應(yīng)用軟件還不夠多,我希望自己的這些不足之處能在今后的工作和學(xué)習(xí)中得到改善。而且,通過這次設(shè)計(jì),我懂得了學(xué)習(xí)的重要性,學(xué)會(huì)了堅(jiān)持和努力,這將為以后的學(xué)習(xí)做出了最好的榜樣!</p>
56、<p><b> 7 . 參考文獻(xiàn)</b></p><p> 單片機(jī)原理與應(yīng)用技術(shù),張毅剛 彭喜元 編著,電子工業(yè)出版社</p><p><b> 8 . 系統(tǒng)原理圖</b></p><p><b> 9.附錄</b></p><p><b>
57、 程序:</b></p><p> OK EQU 20H;搶答開始標(biāo)志位</p><p> RING EQU 22H;響鈴標(biāo)志位</p><p><b> ORG 0000H</b></p><p><b> AJMP MAIN</b></p><p>
58、<b> ORG 0003H</b></p><p> AJMP INT0SUB</p><p><b> ORG 000BH</b></p><p> AJMP T0INT</p><p><b> ORG 0013H</b></p><p>
59、; AJMP INT1SUB</p><p><b> ORG 001BH</b></p><p> AJMP T1INT</p><p><b> ORG 0040H</b></p><p> MAIN: MOV R1,#30;初設(shè)搶答時(shí)間為30s</p><p&g
60、t; MOV R2,#60;初設(shè)答題時(shí)間為60s</p><p> MOV TMOD,#11H;設(shè)置未定時(shí)器/模式1</p><p> MOV TH0,#0F5H</p><p> MOV TL0,#0FFH;越高發(fā)聲頻率越高,越尖</p><p> MOV TH1,#3CH</p><p> MOV TL
61、1,#0B0H;100ms為一次溢出中斷</p><p><b> SETB EA</b></p><p><b> SETB ET0</b></p><p><b> SETB ET1</b></p><p><b> SETB EX0</b>&
62、lt;/p><p> SETB EX1;允許四個(gè)中斷,T0/T1/INT0/INT1</p><p><b> CLR OK</b></p><p><b> CLR RING</b></p><p><b> SETB TR1</b></p><p&g
63、t; SETB TR0;一開始就運(yùn)行定時(shí)器,以開始顯示FFF.如果想重新計(jì)數(shù),重置TH1/TL1就可以了</p><p> ;=====查詢程序=====</p><p> START: MOV R5,#0BH</p><p> MOV R4,#0BH</p><p> MOV R3,#0BH</p><p&g
64、t; ACALL DISPLAY;未開始搶答時(shí)候顯示FFF</p><p> JB P3.0,NEXT;</p><p> ACALL DELAY</p><p> JB P3.0,NEXT;去抖動(dòng),如果"開始鍵"按下就向下執(zhí)行,否者跳到非法搶答查詢</p><p> ACALL BARK;按鍵發(fā)聲</p&
65、gt;<p><b> MOV A,R1</b></p><p> MOV R6,A;送R1->R6,因?yàn)镽1中保存了搶答時(shí)間</p><p> SETB OK;搶答標(biāo)志位,用于COUNT只程序中判斷是否查詢搶答</p><p> MOV R7,#01H ;讀搶答鍵數(shù)據(jù)信號(hào)標(biāo)志,這里表示只讀一次有用信號(hào)</p&
66、gt;<p> MOV R3,#0AH;搶答只顯示計(jì)時(shí),滅號(hào)數(shù)</p><p> AJMP COUNT;進(jìn)入倒計(jì)時(shí)程序,"查詢有效搶答的程序"在COUNT里面</p><p> NEXT: JNB P1.0,FALSE1</p><p> JNB P1.1,FALSE2</p><p> JNB
67、P1.2,FALSE3</p><p> JNB P1.3,FALSE4</p><p> JNB P1.4,FALSE5</p><p> JNB P1.5,FALSE6</p><p> JNB P1.6,FALSE7</p><p> JNB P1.7,FALSE8</p><p&g
68、t; AJMP START</p><p> ;=====非法搶答處理程序=====</p><p> FALSE1: MOV R3,#01H</p><p> AJMP ERROR</p><p> FALSE2: MOV R3,#02H</p><p> AJMP ERROR</p>&l
69、t;p> FALSE3: MOV R3,#03H</p><p> AJMP ERROR</p><p> FALSE4: MOV R3,#04H</p><p> AJMP ERROR</p><p> FALSE5: MOV R3,#05H</p><p> AJMP ERROR</p>
70、;<p> FALSE6: MOV R3,#06H</p><p> AJMP ERROR</p><p> FALSE7: MOV R3,#07H</p><p> AJMP ERROR</p><p> FALSE8: MOV R3,#08H</p><p> AJMP ERROR<
71、/p><p> ;=====INT0(搶答時(shí)間R1調(diào)整程序)=====</p><p> INT0SUB:MOV A,R1</p><p> MOV B,#0AH</p><p><b> DIV AB</b></p><p><b> MOV R5,A</b><
72、/p><p><b> MOV R4,B</b></p><p> MOV R3,#0AH</p><p> ACALL DISPLAY;先在兩個(gè)時(shí)間LED上顯示R1</p><p> JNB P3.4,INC0;P3.4為+1s鍵,如按下跳到INCO</p><p> JNB P3.5,D
73、EC0;P3.5為-1s鍵,如按下跳到DECO</p><p> JNB P3.1,BACK0;P3.1為確定鍵,如按下跳到BACKO</p><p> AJMP INT0SUB</p><p> INC0: MOV A,R1</p><p> CJNE A,#63H,ADD0;如果不是99,R2加1,如果加到99,R1就置0,重新
74、加起。</p><p> MOV R1,#00H</p><p> ACALL DELAY1</p><p> AJMP INT0SUB</p><p> ADD0: INC R1</p><p> ACALL DELAY1</p><p> AJMP INT0SUB</p&g
75、t;<p> DEC0: MOV A,R1</p><p> JZ SETR1;如果R1為0, R1就置99,</p><p><b> DEC R1</b></p><p> ACALL DELAY1</p><p> AJMP INT0SUB</p><p> SET
76、R1: MOV R1,#63H</p><p> ACALL DELAY1</p><p> AJMP INT0SUB</p><p> BACK0: RETI </p><p> ;=====INT1(回答時(shí)間R2調(diào)整程序)=====</p><p> INT1SUB:MOV A,R2</p>
77、;<p> MOV B,#0AH</p><p><b> DIV AB</b></p><p><b> MOV R5,A</b></p><p><b> MOV R4,B</b></p><p> MOV R3,#0AH</p>&l
78、t;p> ACALL DISPLAY</p><p> JNB P3.4,INC1</p><p> JNB P3.5,DEC1</p><p> JNB P3.1,BACK1</p><p> AJMP INT1SUB</p><p> INC1: MOV A,R2</p><
79、p> CJNE A,#63H,ADD1</p><p> MOV R2,#00H</p><p> ACALL DELAY1</p><p> AJMP INT1SUB</p><p> ADD1: INC R2</p><p> ACALL DELAY1</p><p>
80、 AJMP INT1SUB</p><p> DEC1: MOV A,R2</p><p><b> JZ SETR2</b></p><p><b> DEC R2</b></p><p> ACALL DELAY1</p><p> AJMP INT1SUB&
81、lt;/p><p> SETR2: MOV R2,#63H</p><p> ACALL DELAY1</p><p> AJMP INT1SUB</p><p> BACK1: RETI </p><p> ;=====倒計(jì)時(shí)程序(搶答倒計(jì)時(shí)和回答倒計(jì)時(shí)都跳到改程序)=====</p><
82、;p> REPEAT:MOV A,R2 ;使用錦囊時(shí)重新計(jì)時(shí)</p><p><b> MOV R6,A</b></p><p><b> CLR RING </b></p><p> COUNT: MOV R0,#00H;重置定時(shí)器中斷次數(shù)</p><p> MOV TH1,#
83、3CH</p><p> MOV TL1,#0B0H;重置定時(shí)器</p><p> RECOUNT:MOV A,R6;R6保存了倒計(jì)時(shí)的時(shí)間,之前先將搶答時(shí)間或回答時(shí)間給R6</p><p> MOV B,#0AH</p><p> DIV AB;除十分出個(gè)位/十位</p><p> MOV 30H,A;十位
84、存于(30H)</p><p> MOV 31H,B;個(gè)位存于(31H)</p><p> MOV R5,30H;取十位</p><p> MOV R4,31H;取個(gè)位</p><p><b> MOV A,R6</b></p><p> SUBB A,#07H</p>&
85、lt;p> JNC LARGER;大于5s跳到LARGER,小于等于5s會(huì)提醒</p><p><b> MOV A,R0</b></p><p> CJNE A,#05H,FULL;1s中0.5s向下運(yùn)行</p><p><b> CLR RING </b></p><p> AJ
86、MP CHECK</p><p> FULL: CJNE A,#0AH,CHECK;下面是1s的情況,響并顯示號(hào)數(shù)并清R0,重新計(jì)</p><p><b> SETB RING</b></p><p><b> MOV A,R6</b></p><p> JZ QUIT;計(jì)時(shí)完畢</
87、p><p><b> DEC R6</b></p><p> MOV R0,#00H</p><p> AJMP CHECK</p><p> LARGER: MOV A,R0</p><p> CJNE A,#0AH,CHECK;如果1s向下運(yùn)行,否者跳到查"停/顯示"
88、</p><p> DEC R6;計(jì)時(shí)一秒R6自動(dòng)減1</p><p> MOV R0,#00H</p><p> CHECK: JNB P3.1,QUIT;如按下停止鍵退出</p><p> JNB OK,CHECKK ;只在回答倒計(jì)時(shí)才有效</p><p> AJMP NEXTT</p>&
89、lt;p> CHECKK:JNB P3.0,REPEAT ;判斷是否使用錦囊</p><p> NEXTT: ACALL DISPLAY</p><p> JB OK,ACCOUT;如果是搶答倒計(jì)時(shí),如是則查詢搶答,否者跳過查詢繼續(xù)倒數(shù)(這里起到鎖搶答作用)</p><p> AJMP RECOUNT</p><p> AC
90、COUT:MOV A,36H</p><p> JNB ACC.0,TRUE1</p><p> JNB ACC.1,TRUE2</p><p> JNB ACC.2,TRUE3</p><p> JNB ACC.3,TRUE4</p><p> JNB ACC.4,TRUE5</p><
91、;p> JNB ACC.5,TRUE6</p><p> JNB ACC.6,TRUE7</p><p> JNB ACC.7,TRUE8 </p><p> AJMP RECOUNT</p><p> QUIT: CLR OK;如果按下了"停止鍵"執(zhí)行的程序</p><p>&l
92、t;b> CLR RING</b></p><p> AJMP START</p><p> ;=====正常搶答處理程序=====</p><p> TRUE1:MOV R3,#01H</p><p> AJMP LOOPX0</p><p> TRUE2:MOV R3,#02H&l
93、t;/p><p> AJMP LOOPX0</p><p> TRUE3:MOV R3,#03H</p><p> AJMP LOOPX0</p><p> TRUE4:MOV R3,#04H</p><p> AJMP LOOPX0</p><p> TRUE5:MOV R3,#
94、05H</p><p> AJMP LOOPX0</p><p> TRUE6: MOV R3,#06H</p><p> AJMP LOOPX0</p><p> TRUE7:MOV R3,#07H</p><p> AJMP LOOPX0</p><p> TRUE8:MO
95、V R3,#08H</p><p> AJMP LOOPX0</p><p> ;=====犯規(guī)搶答程序=====</p><p> ERROR: MOV R0,#00H</p><p> MOV TH1,#3CH</p><p> MOV TL1,#0B0H</p><p> M
96、OV 34H,R3;犯規(guī)號(hào)數(shù)暫存與(34H)</p><p> HERE: MOV A,R0</p><p> CJNE A,#05H,FLASH;0.5s向下運(yùn)行->滅并停響</p><p><b> CLR RING </b></p><p> MOV R3,#0AH</p><p
97、> MOV R4,#0AH</p><p> MOV R5,#0AH;三燈全滅</p><p> AJMP CHECK1</p><p> FLASH: CJNE A,#0AH,CHECK1;下面是1s的情況,響并顯示號(hào)數(shù)并清R0,重新計(jì)</p><p><b> SETB RING</b></p
98、><p> MOV R0,#00H</p><p> MOV R3,34H;取回號(hào)數(shù)</p><p> MOV R5,#0BH</p><p> MOV R4,#0BH;顯示FF和號(hào)數(shù)</p><p> CHECK1: JNB P3.1,QUIT1</p><p> ACALL DISP
99、LAY</p><p><b> AJMP HERE</b></p><p> QUIT1: CLR RING</p><p><b> CLR OK</b></p><p> AJMP START</p><p> ;=====顯示程序=====</p&g
100、t;<p> DISPLAY:MOV DPTR,#DAT1;查表顯示程序,利用P0口做段選碼口輸出/P2低三位做位選碼輸出,</p><p><b> MOV A,R3</b></p><p> MOVC A,@A+DPTR</p><p> MOV P2,#0FEH</p><p><b&g
101、t; MOV P0,A</b></p><p> ACALL DELAY2</p><p> MOV DPTR,#DAT2</p><p><b> MOV A,R5</b></p><p> MOVC A,@A+DPTR</p><p> MOV P2,#0FDH<
102、/p><p><b> MOV P0,A</b></p><p> ACALL DELAY2</p><p><b> MOV A,R4</b></p><p> MOVC A,@A+DPTR</p><p> MOV P2,#0FBH</p><p
103、><b> MOV P0,A</b></p><p> ACALL DELAY2</p><p><b> RET</b></p><p> DAT1:DB 00h,06h,5bh,4fh,66h,6dh,7dh,07h,7fh,6fh,00H,71H </p><p> ;&quo
104、t;滅","1","2","3","4","5","6","7","8","9","滅","F"</p><p> DAT2:DB 3fh,06h,5bh,4fh,66h,6dh,7d
105、h,07h,7fh,6fh,00H,71H</p><p> ;第一個(gè)為零,其他與上相同,因?yàn)槭蝗绻麨榱泔@示熄滅</p><p> ;====加減時(shí)間延時(shí)(起到不會(huì)按下就加N個(gè)數(shù))======</p><p> DELAY1: MOV 35H,#08H</p><p> LOOP0: ACALL DISPLAY</p>
106、<p> DJNZ 35H,LOOP0</p><p><b> RET</b></p><p> ;=====延時(shí)4236個(gè)機(jī)器周期(去抖動(dòng)用到)=====</p><p> DELAY: MOV 32H,#12H</p><p> LOOP: MOV 33H,#0AFH</p>
107、<p> LOOP1: DJNZ 33H,LOOP1</p><p> DJNZ 32H,LOOP</p><p><b> RET</b></p><p> ;=====延時(shí)4236個(gè)機(jī)器周期(顯示用到)=====</p><p> DELAY2: MOV 32H,#43H</p>
108、<p> LOOP3: MOV 33H,#0FH</p><p> MOV A,R7 ;每隔30~35個(gè)機(jī)器周期讀一次P1口,全為1時(shí)為無效數(shù)據(jù),繼續(xù)讀,有一個(gè)不為1時(shí),轉(zhuǎn)到正常搶答處理</p><p> JNZ AAAA1 ;沒讀到有效數(shù)據(jù)時(shí)繼續(xù)轉(zhuǎn)到AAAA1</p><p> LOOP2: DJNZ 33H,LOOP2</p>
109、<p> DJNZ 32H,LOOP3</p><p><b> RET</b></p><p> ;=====讀搶答按鍵數(shù)據(jù)口程序=====</p><p> ;由于在讀搶答數(shù)據(jù)口的時(shí)候,單片機(jī)首先進(jìn)入倒計(jì)時(shí)程序,再調(diào)用顯示程序,最后才檢測按鍵口</p><p> ;然而在檢測按鍵口時(shí)動(dòng)態(tài)掃描要
110、調(diào)用三次(4ms)延時(shí)程序.這樣就會(huì)導(dǎo)致讀數(shù)據(jù)口出現(xiàn)滯后,造成1號(hào)優(yōu)先最高.8號(hào)最低.</p><p> ;故采用在延時(shí)子程序中加了讀數(shù)據(jù)口程序.保證了靈敏度和可靠性</p><p> AAAA1: MOV A,P1</p><p> CJNE A,#0FFH,AA1 ;當(dāng)不全為1時(shí)的數(shù)據(jù)為有效數(shù)據(jù)</p><p> AA0: M
111、OV 36H,A ;將有效數(shù)據(jù)送到36H暫存</p><p> AJMP LOOP2</p><p> AA1: DEC R7 </p><p><b> AJMP AA0</b></p><p> ;=====發(fā)聲程序=====</p><p> BARK: SETB RING&l
112、t;/p><p> ACALL DELAY1</p><p> ACALL DELAY1</p><p> CLR RING;按鍵發(fā)聲</p><p><b> RET</b></p><p> ;=====TO溢出中斷(響鈴程序)=====</p><p> T0
113、INT: MOV TH0,#0F5H</p><p> MOV TL0,#0FFH</p><p> JNB RING,OUT;</p><p> CPL P3.6;RING標(biāo)志位為1時(shí)候P3.6口不短取反使喇叭發(fā)出一定頻率的聲音</p><p> OUT: RETI</p><p> ;=====T1溢
114、出中斷(計(jì)時(shí)程序)=====</p><p> T1INT: MOV TH1,#3CH</p><p> MOV TL1,#0B0H</p><p><b> INC R0</b></p><p><b> RETI</b></p><p> LOOPX0:AC
115、ALL BARK</p><p><b> MOV A,R2</b></p><p> MOV R6,A;搶答時(shí)間R2送R6</p><p> MOV DPTR,#DAT1;查表顯示程序,利用P0口做段選碼口輸出/P2低三位做位選碼輸出,</p><p><b> MOV A,R3</b>&
116、lt;/p><p> MOVC A,@A+DPTR</p><p> MOV P2,#0feH</p><p><b> MOV P0,A</b></p><p> LOOPX: JB P2.7,LOOPX</p><p> CLR OK;因?yàn)榇痤}的計(jì)時(shí)不再查詢搶答,所以就鎖了搶答<
117、/p><p><b> MOV A,R2</b></p><p><b> MOV B,#10</b></p><p><b> DIV AB</b></p><p><b> MOV R5,A</b></p><p><
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《單片機(jī)課程設(shè)計(jì)》報(bào)告
- 單片機(jī)課程設(shè)計(jì)報(bào)告
- 單片機(jī)課程設(shè)計(jì)報(bào)告
- 單片機(jī)課程設(shè)計(jì)報(bào)告
- 單片機(jī)課程設(shè)計(jì)報(bào)告
- 單片機(jī)課程設(shè)計(jì)報(bào)告
- 單片機(jī)課程設(shè)計(jì)報(bào)告
- 單片機(jī)課程設(shè)計(jì)報(bào)告---單片機(jī)數(shù)字時(shí)鐘
- 單片機(jī)課程設(shè)計(jì)報(bào)告---單片機(jī)秒表系統(tǒng)設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)報(bào)告——單片機(jī)控制步進(jìn)電機(jī)
- 單片機(jī)課程設(shè)計(jì)報(bào)告---單片機(jī)控制秒表系統(tǒng)
- 單片機(jī)課程設(shè)計(jì)報(bào)告doc
- 單片機(jī)課程設(shè)計(jì)課題報(bào)告
- btec單片機(jī)課程設(shè)計(jì)報(bào)告
- 單片機(jī)應(yīng)用課程設(shè)計(jì)報(bào)告
- 單片機(jī)課程設(shè)計(jì)報(bào)告 (2)
- 單片機(jī)課程設(shè)計(jì)報(bào)告-日歷
- 單片機(jī)課程設(shè)計(jì)報(bào)告蜂鳴器
- 單片機(jī)課程設(shè)計(jì)報(bào)告 (2)
- 單片機(jī)課程設(shè)計(jì)實(shí)習(xí)報(bào)告
評論
0/150
提交評論