2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩37頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p>  《單片機(jī)原理及應(yīng)用》</p><p><b>  課程設(shè)計(jì)報告書</b></p><p><b>  機(jī)電與控制工程學(xué)院</b></p><p><b>  年 月 日</b></p><p><b>  任務(wù)書</b><

2、/p><p><b>  本次課題是:</b></p><p>  設(shè)計(jì)一個以單片機(jī)為核心的音樂播放器,該音樂播放器具有音樂的循環(huán)播放及播放時的音樂顯示等功能。</p><p><b>  具體要求如下:</b></p><p>  設(shè)計(jì)三個鍵分別實(shí)現(xiàn):播放/停止、下一曲、上一曲;同時用LED顯示器顯示

3、播放曲目,為了節(jié)省電源,LED顯示器在播放期間設(shè)計(jì)為關(guān)閉狀態(tài),只有當(dāng)一首歌演奏結(jié)束或選曲時顯示器才顯示曲目信息。</p><p>  當(dāng)播放鍵打開時音樂開始播放,同時LED顯示器顯示,假如是第一首歌則LED顯示器顯示數(shù)字1,當(dāng)打開下一曲按鍵時播放器開始播放第二首歌,同時LED顯示器顯示數(shù)字2。聲音經(jīng)過三級管放大后由蜂鳴器輸出。</p><p>  音樂可以給我們的生活帶來樂趣,音樂可以放松

4、我們的心情,音樂可以讓我們得到釋懷。而且通過這次設(shè)計(jì)我們可以學(xué)到關(guān)于單片機(jī)在實(shí)際生活中的設(shè)計(jì)應(yīng)用,同時也使我們加深了對單片機(jī)的認(rèn)識,提高了我們的編程能力,為我們能夠更好的學(xué)習(xí)單片機(jī)有很大的幫助。</p><p><b>  目 錄</b></p><p><b>  1.緒論1</b></p><p><b>

5、;  2.方案論證2</b></p><p><b>  3.方案說明2</b></p><p>  4.硬件方案設(shè)計(jì)3</p><p>  5.軟件方案設(shè)計(jì)13</p><p><b>  6.調(diào)試15</b></p><p><b>  7

6、.小結(jié)17</b></p><p><b>  8.參考文獻(xiàn)18</b></p><p><b>  9.附錄19</b></p><p><b>  緒論</b></p><p>  二十世紀(jì)九十年代以來,計(jì)算機(jī)、信息、電子、控制、通信等技術(shù)得到迅速發(fā)展,現(xiàn)

7、代家庭更加注重生活品質(zhì),健康、安全、舒適、便捷成為人們的迫切需要。智能家電控制系統(tǒng)為智能家居的一個重要組成部分,為人們提供方便、安全、智能化、舒適的數(shù)字化生活提供解決方案。</p><p>  隨著電子技術(shù)的迅速發(fā)展,特別是隨大規(guī)模集成電路出現(xiàn),給人類生活帶來了根本性的改變。由其是單片機(jī)技術(shù)的應(yīng)用產(chǎn)品已經(jīng)走進(jìn)了千家萬戶。</p><p>  首先描述系統(tǒng)硬件工作原理,并附以系統(tǒng)結(jié)構(gòu)框圖加以

8、說明,著重介紹了本系統(tǒng)所應(yīng)用的各硬件接口技術(shù)和各個接口模塊的功能及工作過程,其次,詳細(xì)闡述了程序的各個模塊和實(shí)現(xiàn)過程。</p><p>  本設(shè)計(jì)以數(shù)字集成電路技術(shù)為基礎(chǔ),單片機(jī)技術(shù)為核心。本文編寫的主導(dǎo)思想是軟硬件相結(jié)合,以硬件為基礎(chǔ),來進(jìn)行各功能模塊的編寫。</p><p>  系統(tǒng)以單片機(jī)的匯編語言進(jìn)行軟件設(shè)計(jì),增加了程序的可讀性和可移植性,為了便于擴(kuò)展和更改,軟件的設(shè)計(jì)采用模塊化結(jié)

9、構(gòu),使程序設(shè)計(jì)的邏輯關(guān)系更加簡潔明了。系統(tǒng)通過揚(yáng)聲器為載體發(fā)出聲音,所以具有人性化的操作和悅耳的歌聲。</p><p>  要產(chǎn)生音頻信號,只要算出某一音頻的周期(頻率的倒數(shù)),將此周期除以2即為半周期的時間,利用定時器計(jì)時此半周期時間,計(jì)時到后取反輸出,重復(fù)此過程即得到此頻率的聲音信號。此信號從P1.7腳輸出。</p><p>  定時器T0工作在定時方式1,改變TH0及TL0,產(chǎn)生不同

10、的音頻頻率。必須考慮到中斷響應(yīng)時間的影響,尤其在高音部分,若忽略中斷響應(yīng)時間,會使音頻頻率比標(biāo)準(zhǔn)值低幾十Hz,相當(dāng)于1/4音程,很容易聽出來,對低音部分影響不大。一般中斷響應(yīng)時間為3~6個機(jī)器周期,經(jīng)過反復(fù)試驗(yàn)取5個機(jī)器周期作為校正最為恰當(dāng),表1中所給的定時初值就是考慮中斷響應(yīng)后的定時常數(shù)。另外,為避免T1中斷可能引起雜音,應(yīng)將定時器T0中斷設(shè)為高優(yōu)先級。這樣編寫出來的程序播放的音與標(biāo)準(zhǔn)音叉進(jìn)行差頻校音,非常準(zhǔn)確和諧。</p>

11、;<p><b>  方案論證</b></p><p>  首先設(shè)定三個鍵分別將三個開關(guān)鍵接到單片機(jī)的三個端口P1.0—P1.2,P3.5作為輸出接口。8255的A口接LED顯示器的字形控制端口,PC0接位控制端口,并將片選信號接口接好。將輸出信號通過三極管放大后由蜂鳴器輸出,三極管的一端接高電平,一段接低電平,另一端接地。</p><p><b&

12、gt;  3.方案說明</b></p><p>  當(dāng)打開播放鍵時系統(tǒng)經(jīng)過判別選出第一首歌曲,首先將歌曲地址送到寄存器中,然后調(diào)用音樂頻率數(shù)碼表,經(jīng)過P3.5口輸出,再經(jīng)三極管放大,最后由蜂鳴器發(fā)出音樂。同時在音樂播放期間,顯示電路通過并行方式與單片機(jī)擴(kuò)展的8255的PA口相連,用74LS244譯碼后接到顯示上。假如是第一首歌則顯示器顯示1,第二首則顯示相應(yīng)的數(shù)字2。同時也可以通過相應(yīng)的開關(guān)選擇相應(yīng)的

13、歌曲。</p><p><b>  4.硬件方案設(shè)計(jì)</b></p><p><b>  4.1單片機(jī)的選擇</b></p><p>  單片機(jī)采用應(yīng)用最為普遍的MCS-51系列單片機(jī)。MCS-51單片機(jī)是由8位CPU、只讀存儲器EPROM/ROM、讀寫存儲器RAM、并行I/O口、串行I/O口、定時器/計(jì)數(shù)器、中斷系統(tǒng)、振

14、蕩器和時鐘電路等部分組成,各部分之間通過內(nèi)部總線相連。</p><p>  MCS-51系列單片機(jī)的主要性能有:1)8位字長CPU和指令系統(tǒng);2)1個片內(nèi)時鐘振蕩器和時鐘電路;3)64K外部數(shù)據(jù)存儲器的地址空間;4)64K外部程序存儲器的地址空間;</p><p>  5)32條雙向且分別可位尋址的I/O口線;6)128B的片內(nèi)RAM;7)2個16位定時器/計(jì)數(shù)器;8)具有2個優(yōu)先級的5個

15、中斷源結(jié)構(gòu);9)1個全雙工串行口;10)1個布爾處理器。</p><p>  MCS-51單片機(jī)的核心部分是中央處理器CPU,它由運(yùn)算器和控制器兩大部分組成。運(yùn)算器用來完成算術(shù)運(yùn)算、邏輯運(yùn)算和進(jìn)位操作,由算術(shù)邏輯單元(ALU)、位處理器、累加器ACC、寄存器B、暫存器TMP1和TMP2等組成,與一般運(yùn)算器的作用類似。 &

16、lt;/p><p>  控制器是用來統(tǒng)一指揮和控制計(jì)算機(jī)進(jìn)行工作的部件,它由定時和控制邏輯、內(nèi)部振蕩電路OSC、指令寄存器及其譯碼器、程序計(jì)數(shù)器PC及其增量器、程序地址寄存器、程序狀態(tài)寄存器PSW、RAM地址寄存器、數(shù)據(jù)指針DPTR、堆棧指針SP等部分組成。</p><p>  4.2 時鐘電路的設(shè)計(jì)</p><p>  單片機(jī)工作的時間基準(zhǔn)是由時鐘電路提供的。在單片機(jī)

17、的XTAL1和XTAL2兩個管腳,接一只晶振及兩只電容就構(gòu)成了單片機(jī)的時鐘電路。電路中,電容器C1和C2對振蕩頻率有微調(diào)作用,通常的取值范圍為(30+10)pF。石英晶體選擇6MHz或12MHz都可以,其結(jié)果只是機(jī)器周期時間不同,影響計(jì)數(shù)器的計(jì)數(shù)初值。如圖所示:</p><p>  4.3 復(fù)位電路的設(shè)計(jì)</p><p>  單片機(jī)的RST管腳為主機(jī)提供一個外部復(fù)位信號輸入端口。復(fù)位信號是

18、高電平有效,高電平有效的持續(xù)時間應(yīng)為2個機(jī)器周期以上。單片機(jī)的復(fù)位方式有上電自動復(fù)位和手工復(fù)位兩種。 </p><p>  4.4 8255A芯片的簡介</p><p>  Intel 8086/8088 系列的可編程外設(shè)接口電路(Programmable Peripheral Interface)簡稱 PPI,型號為8255(改進(jìn)型為8255A及8255A-5),具有24條輸入/輸出引腳

19、、可編程的通用并行輸入/輸出接口電路。它是一片使用單一+5V電源的40腳雙列直插式大規(guī)模集成電路。8255A的通用性強(qiáng),使用靈活,通過它CPU可直接與外設(shè)相連接。</p><p>  4.4.1 8255SA的內(nèi)部結(jié)構(gòu)</p><p>  可編程并行接口Intel8255A, 其內(nèi)部結(jié)構(gòu)如圖3.4.1所示,由以下4個部分組成:</p><p>  圖4.4.1

20、8255A內(nèi)部結(jié)構(gòu)</p><p>  1.輸入/輸出端口A、B、C 。這三個端口均可看作是I/O端口,但它們的結(jié)構(gòu)和功能也稍有不同。A口和B口是一個獨(dú)立的8位I/O口。C口:可以看作是一個獨(dú)立的8位I/O口;也可以看作是兩個獨(dú)立的4位I/O口。 </p><p>  2.A組和B組控制電路。這是兩組根據(jù)CPU命令控制8255A工作方式的電路,這些控制電路內(nèi)部設(shè)有控制寄存器,可以根據(jù)CPU

21、送來的編程命令來控制8255A的工作方式,也可以根據(jù)編程命令來對C口的指定位進(jìn)行置/復(fù)位的操作。A組控制電路用來控制A口及C口的高4位;B組控制電路用來控制B口及C口的低4位</p><p>  3.讀/寫控制邏輯 。(同上:它負(fù)責(zé)管理8255A的數(shù)據(jù)傳輸過程。它接收CS*及RD*、WR*、RESET,還有來自系統(tǒng)地址總線的口地址選擇信號A0和A1。將這些信號組合后,得到對A組控制部件和B組控制部件的控制命令,并

22、將命令發(fā)給這兩個部件,以完成對數(shù)據(jù)、狀態(tài)信息和控制信息的傳輸。)</p><p>  4.數(shù)據(jù)總緩沖器 。(同上:它是8位的雙向的三態(tài)緩沖器。作為8255A與系統(tǒng)總線連接的界面,輸入/輸出的數(shù)據(jù),CPU的編程命令以及外設(shè)通過8255A傳送的工作狀態(tài)等信息,都是通過它來傳輸?shù)摹?lt;/p><p>  4.4.2 8255A的引腳信號 </p><p>  如圖3.4.2

23、所示是8255A的芯片引腳信號。除了電源和地以外,其他信號可以分為兩組。</p><p>  1.和外設(shè)一邊相連的: </p><p>  PA7-PA0:A組數(shù)據(jù)信號 </p><p>  PB7-PB0:B組數(shù)據(jù)信號 </p><p>  PC7-PC0:C組數(shù)據(jù)信號 </p><p>  2.和CPU一邊相連的:

24、 </p><p>  RESET:復(fù)位信號,低電平有效。</p><p>  當(dāng)RESET信號來到時,所有內(nèi)部寄</p><p>  存器就被清除,同時,3個數(shù)據(jù)端口</p><p>  被自動設(shè)為輸入端口。</p><p>  D7-D0:它們是8255A的數(shù)據(jù)線,和系統(tǒng)數(shù)據(jù)總線相連。 </p>&l

25、t;p>  CS\:芯片選擇信號,低電平有</p><p>  效。在一個系統(tǒng)中,一般根據(jù)全部接口芯片來分配 若干較低位地址(比如A5、A4、A3)來組 成各種芯片選擇碼,當(dāng)這幾位地址組成某一個代碼時,譯</p><p>  碼器便往8255A的CS*端輸出一個低電平,于是8255A被選中。只有當(dāng) CS\有效時,讀信號RD\和寫信號WR\才對8255A有效。 </p>

26、<p>  RD*:芯片讀出信號低電平有效。 </p><p>  WR*:芯片寫入信號低電平有效。 </p><p>  A1、A0:端口選擇信號。 8255A內(nèi)部有3個數(shù)據(jù)端口和一個控制端口,共四個端口。規(guī)定當(dāng)A1、A0為00時,選中A端口;為01時,選中B端口;為10時,選中C端口;為11時,選中控制口。</p><p>  8255A的幾個控制信號

27、和傳輸動作之間的關(guān)系如下表</p><p>  8255A的控制信號與傳輸動作的對應(yīng)關(guān)系 </p><p>  4.4.3 8255A的控制</p><p><b>  1.工作方式控制字</b></p><p>  8255有三種工作方式:方式0、方式1、方式2。兩組端口可分別指定不同的工作方式。每組端口在某種工作方式

28、下,并不要求各信號同為輸入或同為輸出,而是可以分別指定。方式選擇控制字的格式如 圖3.4.3所示。</p><p>  圖3.4.3 方式選擇控制字的格式</p><p><b>  2.PC口控制字 </b></p><p>  PC口的各信號線常作為控制線來使用,因此,經(jīng)常需要單獨(dú)對每根信號線置1或置0。這種操作用向PC口控制字寄存器送

29、出PC口控制字來實(shí)現(xiàn)。PC口控制字格式如圖3.4.4所示。</p><p>  應(yīng)用注意 :PC口控制字雖然是對端口C操作,但應(yīng)寫入到控制口地址,而不是寫入到PC數(shù)據(jù)口。 </p><p>  編程舉例:設(shè) PA數(shù)據(jù)口地址 00E0H,PB數(shù)據(jù)口地址 00E2H,PC數(shù)據(jù)口地址 00E4H,控制口 00E6H</p><p>  例子一:當(dāng)要求端口A工作在方式0,輸

30、出;端口B工作在方式1,輸入;端口C的高4位為輸入,低4位為輸出;則方式控制字為 10001110B或8EH,如圖3.4.5所示 </p><p><b>  匯編指令如下:</b></p><p>  MOV DX,00E4H </p><p>  MOV AL,8EH</p><p>  OUT DX,AL <

31、/p><p>  例子二:當(dāng)要求端口A工作在方式1,輸入;端口B工作在方式0,輸入;端口C的高4位為輸出,低4位為輸出;則方式控制字為 10110010B或0B2H,如圖3.4.6所示</p><p><b>  匯編指令如下:</b></p><p>  MOV DX,00E4H </p><p>  MOV AL,0B2

32、H</p><p>  OUT DX,AL </p><p>  4.5 LED顯示電路設(shè)計(jì)</p><p>  單片機(jī)應(yīng)用系統(tǒng)中,通常都需要進(jìn)行人機(jī)對話。這包括人對應(yīng)用系統(tǒng)的狀態(tài)干預(yù)與數(shù)據(jù)輸入,以及應(yīng)用系統(tǒng)向人們顯示運(yùn)行狀態(tài)與運(yùn)行結(jié)果等。顯示器、鍵盤電路就是用來完成人機(jī)對話活動的人機(jī)通道。</p><p>  常用的LED數(shù)碼顯示器由7個發(fā)

33、光二極管組成7段LED顯示器,其排列形狀</p><p>  如圖所示。此外,其中的dp用于顯示小數(shù)點(diǎn)。通過7個發(fā)光二極管亮暗的不同組合,可以顯示多種數(shù)字、字母以及其他符號。LED顯示器中的發(fā)光二極管共有兩種連接方法:共陽極接法和共陰極接法。</p><p>  共陰極接法共陽極接法</p><p>  LED顯示器的驅(qū)動是一個非常重要的問題,顯示電路由LED顯示

34、器、段驅(qū)動電路和位驅(qū)動電路組成。由于單片機(jī)的并行口不能直接驅(qū)動LED顯示器,必須采用專用的驅(qū)動電路芯片,使之產(chǎn)生足夠大的電流,顯示器才能夠正常工作。如果驅(qū)動電路能力差,即負(fù)載能力不夠,顯示器亮度就低,而且驅(qū)動電路長期在超負(fù)荷下運(yùn)行容易損壞。</p><p>  LED顯示器的顯示控制方式分為靜態(tài)顯示和動態(tài)顯示兩種,若選擇靜態(tài)顯示,則LED驅(qū)動器的選擇較為簡單,只要驅(qū)動器的驅(qū)動能力與顯示器電流相匹配即可,而且一般只

35、需考慮段的驅(qū)動;動態(tài)顯示則不同,由于一位數(shù)據(jù)的顯示是由段和位選信號共同配合完成的,因此,要同時考慮段和位的驅(qū)動能力,而且段的驅(qū)動能力決定位的驅(qū)動能力。</p><p>  下圖所示是使用8255作6位LED顯示器動態(tài)顯示的借口電路。8255作為輸出鎖存口。其中C口為位控口,以PC5—PC0輸出位控線。由于位控線的驅(qū)動電流較大,8段全亮?xí)r約40—60mA,因此PC口輸出加集電極開路門74LS06進(jìn)行反相和提高驅(qū)動能

36、力,然后再接各LED顯示器的位控端。A口為段控口,輸出8位字形代碼。段控線的負(fù)載電流約為8mA,為提高顯示亮度,通常用74LS244進(jìn)行段控輸出驅(qū)動。</p><p><b>  數(shù)碼管驅(qū)動電路圖</b></p><p>  4.6 蜂鳴器電路的設(shè)計(jì)</p><p>  設(shè)計(jì)要求有音樂播放,可選擇一個蜂鳴器來實(shí)現(xiàn)這一功能。壓電式蜂鳴器工作時約需

37、10mA的驅(qū)動電流,并設(shè)計(jì)一個相應(yīng)的驅(qū)動及控制電路,電路設(shè)計(jì)如圖所示。蜂鳴器作為三極管VT的集電極負(fù)載,當(dāng)VT導(dǎo)通時,蜂鳴器發(fā)出聲音;VT截止時,蜂鳴器不發(fā)聲。R是限流電阻。</p><p>  蜂鳴器電路與單片機(jī)的接口:VT的基極接到單片機(jī)P3口的P3.7管腳,P3.7管腳作為輸出口使用。當(dāng)P3.7=0時,VT導(dǎo)通時,使蜂鳴器的兩個管腳間獲得將近5V的直流電壓,蜂鳴器中有電流通過,而產(chǎn)生蜂鳴音;當(dāng)P3.7=1時

38、,VT截止,蜂鳴器的兩管腳間的直流電壓接近0V,蜂鳴器不發(fā)音。</p><p><b>  蜂鳴器電路圖</b></p><p>  5.1 軟件方案設(shè)計(jì)</p><p>  5.1.1 軟件方案設(shè)計(jì)確定</p><p>  可以把系統(tǒng)軟件按照其功能可分為6個模塊,每個獨(dú)立的模塊通過程序聯(lián)系成一個完整的系統(tǒng)程序。<

39、/p><p>  系統(tǒng)的6個功能模塊是:</p><p><b>  主程序模塊</b></p><p><b>  數(shù)碼管動態(tài)掃描模塊</b></p><p><b>  調(diào)用歌曲模塊</b></p><p><b>  延時模塊</b&g

40、t;</p><p><b>  顯示模塊</b></p><p><b>  蜂鳴器輸出模塊</b></p><p>  圖5.1 音樂播放器系統(tǒng)軟件模塊</p><p><b>  5.2 主程序設(shè)計(jì)</b></p><p>  主程序的內(nèi)容一般

41、包括:主程序起始地址、有關(guān)存儲單元及相關(guān)元</p><p>  件的初始化和一些子程序調(diào)用等。對8255進(jìn)行初始化,設(shè)定8255的輸入輸出方式。</p><p><b>  6.調(diào)試</b></p><p><b>  (1).輸入源程序</b></p><p>  先輸入源程序并對源程序進(jìn)行匯編和

42、改錯</p><p><b>  (2).調(diào)試方案</b></p><p>  在調(diào)試程序前認(rèn)真分析源程序,確定各功能程序運(yùn)行的預(yù)期結(jié)果。然后結(jié)合源程序應(yīng)達(dá)到的結(jié)果,通過某些關(guān)鍵參數(shù)和實(shí)驗(yàn)現(xiàn)象檢驗(yàn)程序運(yùn)行結(jié)果正確與否。并針對具體的分析和觀察對象選擇較合適的調(diào)試方法。如單步運(yùn)行、跟蹤運(yùn)行、連續(xù)運(yùn)行、快速運(yùn)行至光標(biāo)處、設(shè)置斷點(diǎn)等調(diào)試方法。 </p><

43、p><b>  (3).調(diào)試程序</b></p><p>  1) 調(diào)試子程序。由于程序比較多,整體調(diào)試不容易發(fā)現(xiàn)和改正錯誤,故采取子程序調(diào)試的方法,但要明確子程序的具體功能。例如:調(diào)試顯示子程序時,只將顯示子程序進(jìn)行匯編,確認(rèn)無誤后單步執(zhí)行,觀察CPU窗口和DATA窗口以及CODE窗口相應(yīng)單元的變化是否跟預(yù)期的一樣。如果有問題找出問題所在。采取各個擊破的方法調(diào)試好各個子程序。<

44、/p><p>  2)確定各子程序無誤后,再調(diào)試完整的程序,要注意各子程序之間的銜接以及和主程序之間的調(diào)用和返回。</p><p><b>  (4).調(diào)試結(jié)果</b></p><p>  程序運(yùn)行時將播放鍵打開,此時可以聽到播放的歌曲,并可以看到顯示的歌曲的信息,當(dāng)分別切換不同的鍵時可以聽取不同的歌。</p><p>  

45、(5).調(diào)試過程中的問題</p><p>  鍵的設(shè)定沒有設(shè)定好,上一曲鍵和下一曲鍵不管用</p><p>  在歌曲播放期間不能暫停</p><p>  在歌曲播放期間顯示器不能設(shè)計(jì)為關(guān)閉狀態(tài)</p><p><b>  7.結(jié)束語</b></p><p>  一寸光陰一寸金,寸金難買寸光陰,雖

46、然我們努力節(jié)約一切可以利用的時間,但是兩周的單片機(jī)課程設(shè)計(jì)如白駒過隙般匆匆而逝,讓我們對時間的飛逝嘆息不已。</p><p>  此次課程設(shè)計(jì)我設(shè)計(jì)的題目是音樂播放器,剛開始拿到題目真是一頭的霧水,還好馬上老師給我們一些建議,馬上我們來到圖書館借閱相應(yīng)的書籍。設(shè)計(jì)得以繼續(xù)下去。如此用去了兩天的時間,對課題總算有了點(diǎn)了解。然后就開始進(jìn)行程序的設(shè)計(jì),這時發(fā)現(xiàn)自己知道的知識太少了,在程序設(shè)計(jì)中遇到了許多困難,自己又查書

47、問老師,困難總算解決了,就這樣一周的時間過完了。但是由于盲目的理論設(shè)計(jì)結(jié)果許多設(shè)計(jì)好的芯片我們操作的實(shí)驗(yàn)臺上并沒有大半個星期的努力附之流水,但我們沒有放棄,馬上更換設(shè)計(jì)方案。第二周是進(jìn)行程序調(diào)試,問題又出現(xiàn)了,一開始沒有聲音顯示也不對,沒辦法只好再次去老師那里尋找?guī)椭?,老師對我們說程序應(yīng)該是一步一步調(diào)試,然后把各個部分整合起來,這讓我茅塞頓開,于是我先調(diào)試放歌的程序,然后不斷的修改程序,這部分調(diào)試好了又進(jìn)行顯示程序的調(diào)試,最后又總體進(jìn)行

48、調(diào)試,這一周就是在不斷的調(diào)試,不斷的修改程序中度過的,功夫不負(fù)有心人最后總算調(diào)試成功了,心里還是有點(diǎn)高興的對自己的成果。</p><p>  這次的課程設(shè)計(jì)使我深深的認(rèn)識到實(shí)踐能力的重要性。在這個知識競爭激烈的社會中,擁有知識就相當(dāng)于擁有了一切。但是對于我們在校大學(xué)生,實(shí)踐能力相對薄弱,除了應(yīng)當(dāng)好好的學(xué)好知識,擴(kuò)展自己的知識面外,還應(yīng)該努力的提高自己的實(shí)踐能力,為將來走進(jìn)社會,走上工作崗位做出貢獻(xiàn)。</p&

49、gt;<p>  這次的課程設(shè)計(jì)不僅提高了自己的動手設(shè)計(jì)、操作能力,而且自己也從中學(xué)到了不少知識。</p><p><b>  8.參考文獻(xiàn)</b></p><p>  《單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)》 何立民 編 北航出版社</p><p>  《單片機(jī)原理及應(yīng)用》 王迎旭 主編 機(jī)械工業(yè)出版社</p><p>

50、  《51系列單片機(jī)設(shè)計(jì)實(shí)例》 樓然苗 等編 北航出版社</p><p>  4、《51單片機(jī)應(yīng)用系統(tǒng)開發(fā)典型實(shí)例》戴家 等編 中國電力出版社</p><p>  5、《單片微型計(jì)算機(jī)原理及接口技術(shù)》陳光東 等編 華中科技大學(xué)出版社</p><p>  6、《單片機(jī)實(shí)用系統(tǒng)設(shè)計(jì)技術(shù)》房小翠 編 國防工業(yè)出版社4.3歌曲</p><p&g

51、t;<b>  9.附錄</b></p><p><b>  設(shè)計(jì)程序如下:</b></p><p>  0RG 0000H</p><p>  LJMP START</p><p>  0RG 0003h</p><p>  ljmp musib0<

52、;/p><p>  ORG 000BH ;中斷入口</p><p>  INC 20H</p><p>  ;中斷服務(wù)程序,中斷計(jì)數(shù)器加1</p><p>  MOV TH0,#0D8H</p><p>  MOV TL0,#0EFH ;12M晶振,形成10毫秒中斷&

53、lt;/p><p>  ORG 001Bh</p><p>  LJMP musiD0</p><p><b>  0023h</b></p><p>  ljmp musiC0</p><p>  ;中斷服務(wù)程序,中斷計(jì)數(shù)器加1</p><p>  MOV T

54、H0,#0D8H</p><p>  MOV TL0,#0EFH ;12M晶振,形成10毫秒中斷</p><p><b>  RETI</b></p><p><b>  START:</b></p><p>  MOV SP,#50H</p><p>

55、;  MOV TH0,#0D8H</p><p>  MOV TL0,#0EFH</p><p>  MOV TMOD,#01H ;設(shè)定定時器工作方式</p><p>  MOV IE,#82H</p><p>  mov dptr, #0cfa3h;8051初始化</p><

56、p>  MOV A,#80H</p><p>  MOVX @DPTR,A</p><p>  MOV DPTR,#0CFA0H;PA口 送初值</p><p>  MOV A,#3FH</p><p>  MOVX @DPTR,A ;PB口位選通</p><p>  MOV DPTR,#0CFA1H<

57、/p><p>  LOOP2:JNB p3.0,music0 ;掃描開關(guān)信號</p><p>  LOOP3:JNB p3.4,musib0 </p><p>  loop4:jnb p3.5,musid0</p><p>  ajmp loop2</p><p>  MUSIC0:mov r3,#1 ;送歌曲

58、編號給R3 </p><p>  lcall dir;調(diào)用顯示子程序</p><p><b>  NOP</b></p><p>  MOV DPTR,#DAT ;表頭地址送DPTR</p><p>  MOV 20H,#00H ;中斷計(jì)數(shù)器清0</p><p&

59、gt;  MOV B,#00H ;表序號清0</p><p><b>  MUSIC1:</b></p><p><b>  NOP</b></p><p>  CLR A</p><p>  MOVC A,@A+DPTR ;查表取代碼</p&

60、gt;<p>  JZ END0 ;是00H,則結(jié)束</p><p>  CJNE A,#0FFH,MUSIC5</p><p>  LJMP MUSIC3</p><p><b>  MUSIC5:</b></p><p><b>  NOP<

61、/b></p><p>  MOV R6,A</p><p>  INC DPTR</p><p>  MOV A,B</p><p>  MOVC A,@A+DPTR ;取節(jié)拍代碼送R7</p><p>  MOV R7,A</p>

62、<p>  SETB TR0 ;啟動計(jì)數(shù)</p><p><b>  MUSIC2:</b></p><p><b>  NOP</b></p><p>  CPL P3.3</p><p>  MOV A,R6</p>

63、<p>  MOV R3,A</p><p>  CPL A</p><p>  MOV P1,A ;顯示(修改者加入的顯示)</p><p>  CPL A</p><p>  LCALL DEL</p><p>  MOV A

64、,R7</p><p>  CJNE A,20H,MUSIC2 ;中斷計(jì)數(shù)器(20H)=R7否?</p><p><b>  ;不等,則繼續(xù)循環(huán)</b></p><p>  MOV 20H,#00H ;等于,則取下一代碼</p><p>  INC DPTR</p>

65、<p>  LJMP MUSIC1</p><p><b>  MUSIC3:</b></p><p><b>  NOP</b></p><p>  CLR TR0 ;休止100毫秒</p><p>  MOV R2,#0DH</p

66、><p><b>  MUSIC4:</b></p><p><b>  NOP</b></p><p>  MOV R3,#0FFH</p><p>  LCALL DEL</p><p>  DJNZ R2,MUSIC4</p><p&g

67、t;  INC DPTR</p><p>  LJMP MUSIC1</p><p><b>  END0:</b></p><p><b>  NOP</b></p><p>  MOV R2,#64H ;歌曲結(jié)束,延時1秒后繼續(xù)</p>&

68、lt;p><b>  MUSIC6:</b></p><p>  MOV R3,#00H</p><p>  LCALL DEL</p><p>  DJNZ R2,MUSIC6</p><p>  LJMP loop2</p><p><b>  RET&

69、lt;/b></p><p>  MUSIb0:mov r3,#2;送歌曲編號</p><p>  lcall dir;調(diào)用顯示子程序</p><p><b>  NOP</b></p><p>  MOV DPTR,#Dab ;表頭地址送DPTR</p><p>  MO

70、V 20H,#00H ;中斷計(jì)數(shù)器清0</p><p>  MOV B,#00H ;表序號清0</p><p><b>  MUSIb1:</b></p><p><b>  NOP</b></p><p>  CLR A</p>

71、<p>  MOVC A,@A+DPTR ;查表取代碼</p><p>  JZ END0 ;是00H,則結(jié)束</p><p>  CJNE A,#0FFH,MUSIb5</p><p>  LJMP MUSIb3</p><p><b>  MUSIb5:&l

72、t;/b></p><p><b>  NOP</b></p><p>  MOV R6,A</p><p>  INC DPTR</p><p>  MOV A,B</p><p>  MOVC A,@A+DPTR ;取節(jié)拍代碼送R7

73、</p><p>  MOV R7,A</p><p>  SETB TR0 ;啟動計(jì)數(shù)</p><p><b>  MUSIb2:</b></p><p><b>  NOP</b></p><p>  CPL P3.3

74、</p><p>  MOV A,R6</p><p>  MOV R3,A</p><p>  CPL A</p><p>  MOV P1,A ;顯示(修改者加入的顯示)</p><p>  CPL A</p><p>

75、  LCALL DEL</p><p>  MOV A,R7</p><p>  CJNE A,20H,MUSIb2 ;中斷計(jì)數(shù)器(20H)=R7否?</p><p><b>  ;不等,則繼續(xù)循環(huán)</b></p><p>  MOV 20H,#00H ;等于,則取下一

76、代碼</p><p>  INC DPTR</p><p>  LJMP MUSIb1</p><p><b>  MUSIb3:</b></p><p><b>  NOP</b></p><p>  CLR TR0 ;休止10

77、0毫秒</p><p>  MOV R2,#0DH</p><p><b>  MUSIb4:</b></p><p><b>  NOP</b></p><p>  MOV R3,#0FFH</p><p>  LCALL DEL</p>

78、<p>  DJNZ R2,MUSIb4</p><p>  INC DPTR</p><p>  LJMP MUSIb1</p><p><b>  END1:</b></p><p><b>  NOP</b></p><p>  MOV

79、 R2,#64H ;歌曲結(jié)束,延時1秒后繼續(xù)</p><p><b>  MUSIb6:</b></p><p>  MOV R3,#00H</p><p>  LCALL DEL</p><p>  DJNZ R2,MUSIb6</p><p>  LJ

80、MP loop2</p><p><b>  MUSID0: </b></p><p>  mov r3,#3; 送歌曲編號</p><p><b>  lcall dir</b></p><p><b>  NOP</b></p><p>  

81、MOV DPTR,#DAc ;表頭地址送DPTR</p><p>  MOV 20H,#00H ;中斷計(jì)數(shù)器清0</p><p>  MOV B,#00H ;表序號清0</p><p><b>  MUSId1:</b></p><p><b>  

82、NOP</b></p><p>  CLR A</p><p>  MOVC A,@A+DPTR ;查表取代碼</p><p>  JZ END0 ;是00H,則結(jié)束</p><p>  CJNE A,#0FFH,MUSId5</p><p>

83、  LJMP MUSId3</p><p><b>  MUSId5:</b></p><p><b>  NOP</b></p><p>  MOV R6,A</p><p>  INC DPTR</p><p>  MOV A,

84、B</p><p>  MOVC A,@A+DPTR ;取節(jié)拍代碼送R7</p><p>  MOV R7,A</p><p>  SETB TR0 ;啟動計(jì)數(shù)</p><p><b>  MUSId2:</b></p><p>&l

85、t;b>  NOP</b></p><p>  CPL P3.3</p><p>  MOV A,R6</p><p>  MOV R3,A</p><p>  CPL A</p><p>  MOV P1,A ;顯示(修改者加入

86、的顯示)</p><p>  CPL A</p><p>  LCALL DEL</p><p>  MOV A,R7</p><p>  CJNE A,20H,MUSId2 ;中斷計(jì)數(shù)器(20H)=R7否?</p><p><b>  ;不等,則繼續(xù)循環(huán)</b&

87、gt;</p><p>  MOV 20H,#00H ;等于,則取下一代碼</p><p>  INC DPTR</p><p>  LJMP MUSId1</p><p><b>  MUSId3:</b></p><p><b>  NOP<

88、/b></p><p>  CLR TR0 ;休止100毫秒</p><p>  MOV R2,#0DH</p><p><b>  MUSId4:</b></p><p><b>  NOP</b></p><p>  MOV

89、 R3,#0FFH</p><p>  LCALL DEL</p><p>  DJNZ R2,MUSId4</p><p>  INC DPTR</p><p>  LJMP MUSId1</p><p><b>  END2:</b></p><

90、;p><b>  NOP</b></p><p>  MOV R2,#64H ;歌曲結(jié)束,延時1秒后繼續(xù)</p><p><b>  MUSId6:</b></p><p>  MOV R3,#00H</p><p>  LCALL DEL</p&

91、gt;<p>  DJNZ R2,MUSId6</p><p>  LJMP loop2</p><p>  DEL: ;延時子程序</p><p><b>  NOP</b></p><p><b>  DEL3:</b&g

92、t;</p><p>  MOV R4,#05H</p><p><b>  DEL4:</b></p><p><b>  NOP</b></p><p>  DJNZ R4,DEL4</p><p><b>  NOP</b></

93、p><p>  DJNZ R3,DEL3</p><p><b>  RET</b></p><p>  dir: MOV A,R3; 顯示子程序</p><p>  MOV DPTR,#TAB</p><p>  MOVC A,@A+DPTR</p><p>  MOV D

94、PTR,#0CFA0H</p><p>  MOVX @DPTR,A</p><p>  MOV DPTR,#0CFA1H</p><p>  MOV A,#11111110B</p><p>  MOVX @DPTR,A</p><p><b>  ORG 1000H</b></p>

95、<p>  TAB:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH;表址</p><p>  DB 6FH,77H,7CH,39H,5EH,79H,71H,00H</p><p>  DAT: ;數(shù)據(jù)表格存放在ROM中。</p><p>  DB 18H, 30H, 1CH, 10H ;歌曲八月桂花香表地

96、址</p><p>  DB 20H, 40H, 1CH, 10H</p><p>  DB 18H, 10H, 20H, 10H</p><p>  DB 1CH, 10H, 18H, 40H</p><p>  DB 1CH, 20H, 20H, 20H</p><p>  DB 1CH, 20H, 18H, 20

97、H</p><p>  DB 20H, 80H, 0FFH,20H</p><p>  DB 30H, 1CH, 10H, 18H</p><p>  DB 20H, 15H, 20H, 1CH</p><p>  DB 20H, 20H, 20H, 26H</p><p>  DB 40H, 20H, 20H, 2B

98、H</p><p>  DB 20H, 26H, 20H, 20H</p><p>  DB 20H, 30H, 80H, 0FFH</p><p>  DB 20H, 20H, 1CH, 10H</p><p>  DB 18H, 10H, 20H, 20H</p><p>  DB 26H, 20H, 2BH, 2

99、0H</p><p>  DB 30H, 20H, 2BH, 40H</p><p>  DB 20H, 20H, 1CH, 10H</p><p>  DB 18H, 10H, 20H, 20H</p><p>  DB 26H, 20H, 2BH, 20H</p><p>  DB 30H, 20H, 2BH, 4

100、0H</p><p>  DB 1CH, 20H, 18H, 20H</p><p>  DB 20H, 80H, 0FFH,20H</p><p>  DB 30H, 1CH, 10H, 18H</p><p>  DB 20H, 15H, 20H, 1CH</p><p>  DB 20H, 20H, 20H, 2

101、6H</p><p>  DB 40H, 20H, 20H, 2BH</p><p>  DB 20H, 26H, 20H, 21H</p><p><b>  dab: </b></p><p>  DB26H,20H,20H,20H,20H,20H,26H,10H,20H,10H,20H,80H,26H,20

102、H,30H,20H;;歌曲祝你平安表地址</p><p>  DB 30H,20H,39H,10H,30H,10H,30H,80H,26H, 20H,20H,20H,20H,20H,1CH,20H</p><p>  DB 20H,80H,2bH,20H,26H,20H,20H,20H,2bH,10H,26H,10H,2bH,80H,26H,20H</p><p>

103、;  DB 30H,20H,30H,20H,39H,10H,26H,10H,26H,60H,40H,10H,39H,10H, 26H,20H</p><p>  DB 30H,20H,30H,20H,39H,10H,26H,10H,26H,80H,26H, 20H,2bH,10H, 2bH,10H</p><p>  DB 2bH,20H,30H,10H,39H,10H,26H,10

104、H,2bH,10H,26H,20H, 2bH,40H, 40H,20H</p><p>  DB 20H,10H,20H,10H,2bH,10H,26H,30H,30H,80H,18H,20H, 18H,20H, 26H,20H</p><p>  DB 20H,20H,20H,40H,26H,20H,2bH,20H,30H,20H,30H,20H, 1CH,20H, 20H,20H&

105、lt;/p><p>  DB 20H,80H,1CH,20H,1CH,20H,1CH,20H,30H,20H,26H,60H,39H,10H,30H,10H</p><p>  DB 20H,20H,2bH,10H,26H,10H,2bH,10H,26H,10H,26H,10H,2bH,10H,2bH,80H</p><p>  DB 18H,20H,18H,20H,

106、26H,20H,20H, 20H,20H,60H,26H,10H,2bH,20H,30H,20H</p><p>  DB 30H,20H,1CH,20H, 20H,20H ,20H,80H,26H,20H,30H,10H,30H,10H,30H,20H</p><p>  DB 39H,20H,26H,10H,2Bh,10H,2bH,20H,2bH,40H,40H,10H,40H,10H

107、,20H,10H</p><p><b>  dac: </b></p><p>  DB 20H, 30H, 1CH, 10H ;;歌曲兩只老虎表地址</p><p>  DB 18H, 40H, 1CH, 20H</p><p>  DB 20H, 20H, 26H, 40H</p><p&g

108、t;  DB 13H, 60H, 18H, 20H</p><p>  DB 30H, 20H, 2BH, 40H</p><p>  DB 20H, 30H, 1CH, 10H</p><p>  DB 18H, 20H, 15H, 20H</p><p>  DB 1CH, 20H, 20H, 20H</p><p&g

109、t;  DB 26H, 40H, 20H, 20H</p><p>  DB 2BH, 20H, 26H, 20H</p><p>  DB 20H, 20H, 30H, 30H</p><p>  DB 20H, 30H, 1CH, 10H</p><p>  DB 18H, 40H, 1CH, 20H</p><p&g

110、t;  DB 20H, 20H, 26H, 40H</p><p>  DB 13H, 60H, 18H, 20H</p><p>  DB 20H, 20H, 30H, 30H</p><p>  DB 20H, 30H, 1CH, 10H</p><p>  DB 18H, 40H, 1CH, 20H</p><p&g

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論