畢業(yè)設計--基于51單片機的數(shù)字收音機萬年歷的設計_第1頁
已閱讀1頁,還剩88頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  摘 要</b></p><p>  電子科技日新月異,人們對現(xiàn)代電子設備的智能化和微型化及其精度提出了更高的要求,而單片機因其具有穩(wěn)定可靠、 體積小、 價格低廉等特點,成為設計智能化儀器儀表的首選微控制器,因此本次我們沒有選用傳統(tǒng)的專用的時鐘芯片,而是采用了AT89S52為控制芯片,此款單片機可以使用軟件對其進行在線編程,其靈活性和可靠性都相對提高,采用

2、ds1302為時鐘芯片,ds18b20為溫度傳感芯片和tea5767的收音機芯片。</p><p>  TEA5767內(nèi)置了主頻高達75MHZ的數(shù)字信號處理器,實現(xiàn)384KBPS/48KHZ的MD級高品質(zhì)MP3音樂文件回放,加上擁有一般MP3播放器難以企及的高保真回放線路(信噪比高達95DB,THD總諧波失真率〈0.05%〉同時非常省電。 單片計算機即單片微型計算機。由RAM ,ROM,CPU構(gòu)成,定時,

3、計數(shù)和多種接口于一體的微控制器。它體積小,成本低,功能強,廣泛應用于智能產(chǎn)業(yè)和工業(yè)自動化上。而51系列單片機是各單片機中最為典型和最有代表性的一種。這次課程設計通過對它的學習,應用,從而達到學習、設計、開發(fā)軟、硬的能力。本設計主要設計了一個基于AT89S52單片機的數(shù)字收音機萬年歷。并在液晶屏(12864)顯示相應的年,月,日,時,分,秒,星期,溫度,電臺頻點,信號強度,及收音機狀態(tài),并結(jié)合LM386的雙聲道功率放大為我們?nèi)粘I钐峁?/p>

4、美妙的電臺廣播。</p><p>  關(guān)鍵詞:單片機 C語言 萬年歷 TEA5767 溫度測量 LCD液晶屏</p><p><b>  Summary</b></p><p>  Elect onic technology is changing rapidly, people are intelligent and modern

5、electronic equipment miniaturization and a higher accuracy requirements, and SCM because of its stable and reliable, small size, low price and so has become the preferred design of intelligent micro-instrumentation contr

6、oller, so this time we do not use a conventional dedicated clock chip, instead of using AT89S52 as the control chip, the microcontroller can use this section of its online programming software, its flexi</p><p

7、><b>  目 錄</b></p><p>  第一章 單片機知識簡介1</p><p>  1.1什么是單片機1</p><p>  1.2單片機應用的特點1</p><p>  1.3單片機的應用領(lǐng)域1</p><p>  1.4單片機的中斷與定時系統(tǒng)2</p>

8、<p>  1.4.1 MCS-51單片機中斷系統(tǒng)2</p><p>  1.4.2 MCS-51 單片機的定時器/計數(shù)器2</p><p>  1.5 芯片簡介4</p><p>  第二章 DS1302,TEA5767及液晶知識簡介6</p><p>  2.1 DS1302簡介6</p><p

9、>  2.2 DS1302引腳功能及結(jié)構(gòu)6</p><p>  2.3 DS1302的使用6</p><p>  2.3.1 數(shù)據(jù)傳輸(I/O)6</p><p>  2.3.1 DS1302的寄存器6</p><p>  2.4.1 TEA5767概述7</p><p>  2.4.2 TEA5767

10、基本資料7</p><p>  2.4.3 TEA5767收音原理7</p><p>  2.5 LCD(12864)簡介8</p><p>  2.5.1 概述8</p><p>  2.4.2 基本特性9</p><p>  第三章 總體方案設計10</p><p>  3.1

11、設計方案10</p><p>  3.2主程序流程圖10</p><p>  3.3按鍵掃描及流程圖11</p><p>  3.4時鐘芯片讀寫流程圖12</p><p>  3.5溫度芯片讀取流程圖12</p><p>  第四章 系統(tǒng)的硬件組成13</p><p>  4.1硬件

12、模塊的組成與功能13</p><p>  4.2 穩(wěn)壓電路13</p><p>  4.3 功放電源優(yōu)化開關(guān)電路14</p><p>  4.4 單片機最小系統(tǒng)電路14</p><p>  4.5 按鍵模塊15</p><p>  4.6 時鐘電路16</p><p>  4.7 溫

13、度傳感電路16</p><p>  4.8收音機模塊17</p><p>  4.9雙聲道功率放大電路17</p><p>  第五章 程序設計19</p><p>  5.1相關(guān)工具軟件19</p><p>  5.2部分TEA5767程序(程序清單見附錄):20</p><p&g

14、t;  第六章 性能測試與分析25</p><p>  6.1基本功能和參數(shù)26</p><p>  6.2測試的相關(guān)參數(shù)26</p><p>  第七章 結(jié)束語27</p><p><b>  致謝28</b></p><p><b>  附錄29</b><

15、;/p><p><b>  參考文獻84</b></p><p>  第一章 單片機知識簡介</p><p><b>  1.1什么是單片機</b></p><p>  在一片集成電路芯片上集成微處理器CPU(Central Process Unit),隨機存儲器RAM(Random Access

16、 Memtory),只讀存儲器ROM(Read Only Memtory),中斷系統(tǒng),定時器/計數(shù)器以及I/O接口電路,從而構(gòu)成了單芯片微型計算機,即單片機單片機具有體積小,價格低,可靠性高和易于嵌入式應用等特點,適合用作智能儀器儀表和工業(yè)測控系統(tǒng)的前端裝置。單片機本身沒有開發(fā)能力,必須借助開發(fā)機完成應用系統(tǒng)的硬件故障和軟件故障錯誤的排除,調(diào)試完程序必須固化到單片機的內(nèi)部或外部程序存儲器芯片中。新的單片機應用系統(tǒng)開發(fā)技術(shù)在近幾年有了快速

17、的發(fā)展。</p><p>  1.2單片機應用的特點</p><p><b>  控制功能和可靠性高</b></p><p>  單片機是為了滿足工業(yè)控制而設計的,所以實時控制功能特別強,其CPU可以對I/O接口直接進行操作,位操作能力更是其它計算機無法比擬的,另外,由于CPU,存儲器,以及I/O接口集成在同一芯片內(nèi),各部件之間的連接緊湊,數(shù)據(jù)

18、在傳送時受到干擾小,且不易受環(huán)境條件的影響,所以單片機的可靠性非常高。</p><p>  體積小,價格低,易于產(chǎn)品化</p><p>  每一片單片機既是一臺完整的微型計算機,對于批量的專用場合,一方面可以在眾多的單片機品種間進行匹配選擇,同時還可以專門進行芯片設計,使芯片功能與應用具有良好和對應關(guān)系。對單片機產(chǎn)品的引腳封裝方面,有的單片機引腳已減少到8個或更少,從而使應用系統(tǒng)的印刷板減

19、小,按插件減少,安裝簡單。</p><p>  在現(xiàn)代的各種電子器件中,單片機具有良好的性能價格比,這正是單片機得以廣泛應用的重要原因。</p><p>  1.3單片機的應用領(lǐng)域</p><p><b>  (1)能儀器儀表</b></p><p>  單片機用于各種儀表,一方面提高了儀表儀器的使用功能和精度,使儀器儀

20、表智能化,同時還簡化了儀器儀表的硬件結(jié)構(gòu),從而可以方便地完成儀器儀表的升級代換。如各種智能化電氣測量儀表,智能傳感器等。</p><p><b>  (2)機電一體化</b></p><p>  機電一體化產(chǎn)品是集機械技術(shù),微電子技術(shù),自動化技術(shù)和計算機技術(shù)于一體,具有智能化特征的各種機電產(chǎn)品。單片機在機電一體化產(chǎn)品的開發(fā)中可以發(fā)揮巨大的作用。典型的產(chǎn)品如:機器人,數(shù)

21、控機床,自動包裝機,點鈔機,醫(yī)療設備,打印機,傳真機,復印機等。</p><p><b>  (3)實時工業(yè)控制</b></p><p>  單片機還可以用于各種物理量的采集與控制。電流,電壓,溫度,液位,流量等物理參數(shù)的采集和控制均可以利用單片機方便地實現(xiàn)。在這類系統(tǒng)中,利用單片機作為系統(tǒng)控制器,可以根據(jù)被控對象的不同特征采用不同的智能算法,實現(xiàn)期望的控制指標,從而

22、提高生產(chǎn)效率和產(chǎn)品質(zhì)量。典型應用如電動機轉(zhuǎn)速控制,溫度控制,自動生產(chǎn)線等。</p><p>  (4)分布系統(tǒng)的前端模式</p><p>  在較復雜的工業(yè)系統(tǒng)中,經(jīng)常要采用分布式控制系統(tǒng)完成大量的分布參數(shù)的采集。在這類系統(tǒng)中,采用單片機作為分布式系統(tǒng)的前端采集模塊。系統(tǒng)具有運行可靠,數(shù)據(jù)采集方便靈活,成本低廉等一系列有點。</p><p><b>  (

23、5)家用電器</b></p><p>  家用電器是單片機的又一重要應用領(lǐng)域,前景十分廣泛如空調(diào),電冰箱,洗衣機、電飯煲,高檔洗浴設備,高檔玩具。另外,交通領(lǐng)域中,汽車,火車,飛機,航天等均有單片機的廣泛應用。</p><p>  1.4單片機的中斷與定時系統(tǒng)</p><p>  1.4.1 MCS-51單片機中斷系統(tǒng)</p><p&

24、gt;  中斷是一項重要的計算機技術(shù),這一技術(shù)在單片機中得到了充分的繼承。Cpu在面對多項任務,但是由于資源有限,有可能出現(xiàn)資源競爭的局面,即多個任務來爭奪一個CPU。而中斷技術(shù)就是解決資源競爭的有效方法。采用中斷技術(shù)可以使多項任務共享一個資源,所以中斷技術(shù)實質(zhì)上就是一種資源共享技術(shù)。在單片機中,中斷技術(shù)主要用于實時控制。所謂實時控制,就是要求計算機能及時地響應被控對象提出的分析,計算和控制等請求,使被控對象保持在最佳工作狀態(tài),以達到預

25、定的控制效果。由于這些控制參量的請求都是隨機發(fā)出的,而且要求單片機必須作出快速響應并及時處理,因此,只有靠中斷技術(shù)才能實現(xiàn)。</p><p>  1.4.2 MCS-51 單片機的定時器/計數(shù)器</p><p>  單片機的控制應用中,定時是必不可少的,可供選擇的定時方法有:</p><p><b>  (1) 軟件定時</b></p&g

26、t;<p>  軟件定時是靠執(zhí)行一個循環(huán)程序以進行的時間延遲.軟件定時的特點是時間精確,且不需外加硬件電路。但軟件定時要占用CPU,增加CPU開銷,因此軟件定時的時間不易太長。此外,軟件定時方法在某些情況下無法使用。</p><p><b>  (2) 硬件定時</b></p><p>  對于時間較長的定時,常使用硬件電路完成。硬件定時方法的特點是定時

27、功能全部由硬件電路完成,不占CPU時間。但需通過改變電路中的元件參數(shù)來調(diào)節(jié)定時時間,在使用上不過靈活,方便。</p><p>  (3) 可編程定時器定時</p><p>  這種定時的方法是對通過系統(tǒng)時鐘脈沖的計數(shù)來實現(xiàn)。計數(shù)值通過程序設定,改變計數(shù)值,也就改變了定時時間,使用起來即方便,又靈活。此外,由于采用計數(shù)方法實現(xiàn),因此,可編程定時器都兼有計數(shù)的功能,可以對外來脈沖進行計數(shù)。&l

28、t;/p><p>  單片機應用中,定時與計數(shù)的需求較多,為了使用方便并增加單片機的功能,就干脆把定時電路集成在芯片中,成為定時器/計數(shù)器。MCS-51內(nèi)部就有兩個定時器/計數(shù)器。</p><p>  定時器/計數(shù)器的定時和計數(shù)功能 </p><p>  作為基本組成內(nèi)容,MCS-51單片機共有2個可編程的定時器/計數(shù)器,分別稱定時器/計數(shù)器和定時器/計數(shù)器1。它們都是

29、16位加法計數(shù)結(jié)構(gòu),分別由TH0(地址是8CH)和TL0(地址是8AH)及TH1(地址是8DH)和TL1(地址是8BH)l兩個8位計數(shù)器組成。這4個計數(shù)器均屬專用寄存器之列。</p><p><b>  計數(shù)功能</b></p><p>  所謂計數(shù)是指對外部時間進行計數(shù)。外部時間的發(fā)生以輸入脈沖表示,因此計數(shù)功能的實質(zhì)就是對外來脈沖進行計數(shù)。MCS-51芯片有T0

30、和T1兩個信號的引腳,分別是兩個計數(shù)器的計數(shù)輸入端。外部輸入的脈沖在負跳變時有效,進行計數(shù)器加1(加法計數(shù))。</p><p><b>  定時功能</b></p><p>  定時功能也是通過計數(shù)器的計數(shù)來實現(xiàn)的,不過此時的計數(shù)脈沖來自單片機的內(nèi)部,即每個機器周期產(chǎn)生一個計數(shù)脈沖。也就是每個機器周期計數(shù)器加1,由于一個機器周期等于12個振蕩脈沖周期,因此計數(shù)頻率為振

31、蕩頻率的1/12。如果單片機采用12MHZ晶體,則計數(shù)器頻率為1Mhz,即每微妙計數(shù)器加1。這樣不但可以根據(jù)計數(shù)器計算出定時時間,也可以反過來按定時時間的要求計算出計數(shù)器的預置值。</p><p><b>  1.5 芯片簡介</b></p><p>  AT89S52單片機引腳如圖1.4.1:</p><p>  AT89S52單片機是標準的

32、40引腳雙列直插式集成電路芯片,其各引腳功能如下:</p><p>  VCC:+5V電源。</p><p><b>  GND:接地。</b></p><p>  RSTE:復位信號。當輸入的復位信號延續(xù)兩個機器周期以上的高電平時即為有效,用完成單片機的復位初始化操作。</p><p>  XTAL1和XTAL2:外接

33、晶體引線端。當使用芯片內(nèi)部時鐘時,此二引線端用于外接石英晶體和微調(diào)電容;當使用外部時鐘時,用于接外部時鐘脈沖信號。</p><p>  P0口:P0口為一個8位漏極開路雙向I/O口,當作輸出口使用時,必須接上拉電阻才能有高電平輸出;當作輸入</p><p>  圖1.4.1 AT89s52引腳圖</p><p>  口使用時,必須先向電路中的鎖存器寫入“1”,使F

34、ET截止,以避免鎖存器為“0”狀態(tài)時對引腳讀入的干擾。</p><p>  P1口:P1口是一個內(nèi)部提供上拉電阻的8位雙向I/O口,它不再需要多路轉(zhuǎn)接電路MUX;因此它作為輸出口使用時,無需再外接上拉電阻,當作為輸入口使用時,同樣也需先向其鎖存器寫“1”,使輸出驅(qū)動電路的FET截止。</p><p>  P2口:P2口電路比P1口電路多了一個多路轉(zhuǎn)接電路MUX,這又正好與P0口一樣。P2口

35、可以作為通用的I/O口使用,這時多路轉(zhuǎn)接電路開關(guān)倒向鎖豐存器Q端。</p><p>  P3口:P3口特點在于,為適應引腳信號第二功能的需要,增加了第二功能控制邏輯。當作為I/O口使用時,第二功能信號引線應保持高電平,與非門開通,以維持從鎖存器到輸出端數(shù)據(jù)輸出通路的暢通。當輸出第二功能信號時,該位應應置“1”,使與非門對第二功能信號的輸出是暢通的,從而實現(xiàn)第二功能信號的輸出,具體第二功能如表1所示。</p&

36、gt;<p>  第二章 DS1302,TEA5767及液晶知識簡介</p><p>  2.1 DS1302簡介</p><p>  DS1302 是美國DALLAS公司推出的一種高性能、低功耗、帶RAM的實時時鐘電路,它可以對年、月、日、周日、時、分、秒進行計時,具有閏年補償功能,工作電壓 為2.5V~5.5V。采用三線接口與CPU進行同步通信,并可采用突發(fā)方式一次傳送

37、多個字節(jié)的時鐘信號或RAM數(shù)據(jù)。DS1302內(nèi)部有一個31×8的 用于臨時性存放數(shù)據(jù)的RAM寄存器。DS1302是DS1202的升級產(chǎn)品,與DS1202兼容,但增加了主電源/后背電源雙電源引腳,同時提供了對后背 電源進行涓細電流充電的能力。</p><p>  2.2 DS1302引腳功能及結(jié)構(gòu)</p><p>  DS1302的引腳排列,其中Vcc1 為后備電源,VCC2為主電

38、源。在主電源關(guān)閉的情況下,也能保持時鐘的連續(xù)運行。DS1302由Vcc1或Vcc2兩者中的較大者供電。當Vcc2大于 Vcc1+0.2V時,Vcc2給DS1302供電。當Vcc2小于Vcc1時,DS1302由Vcc1供電。X1和X2是振蕩源,外接 32.768kHz晶振。RST是復位/片選線,通過把RST輸入驅(qū)動置高 圖2.2.1 DS1302引腳圖

39、 電平來啟動所有的數(shù)據(jù)傳送。RST輸入有兩種功能:首先,RST接通控制邏輯, 允許地址/命令序列送入移位寄存器;其次,RST提供終止單字節(jié)或多字節(jié)數(shù)據(jù)的傳送手段。當RST為高電平時,所有的數(shù)據(jù)傳送被初始化,允許對 DS1302進行操作。如果在傳送過程中RST置為低電平,則會終止此次數(shù)據(jù)傳送,I/O引腳變?yōu)楦咦钁B(tài)。上電運行時,在Vcc>2.0V之 前,RST必須保持低電平。只有在SCLK為低電平時,才能將RST置

40、為高電平。I/O為串行數(shù)據(jù)輸入輸出端(雙向),后面有詳細說明。</p><p>  2.3 DS1302的使用</p><p>  2.3.1 數(shù)據(jù)傳輸(I/O)</p><p>  在控制指令字輸入后的下一個SCLK時鐘的上升沿時,數(shù)據(jù)被寫入DS1302,數(shù)據(jù)輸入從低位即位0開始。同樣,在緊跟8位的控制指令字后的下一個SCLK脈沖的下降沿讀出DS1302的數(shù)據(jù),讀

41、出數(shù)據(jù)時從低位0位到高位7</p><p>  2.3.1 DS1302的寄存器</p><p>  DS1302有12個寄存器,其中有7個寄存器與日歷、時鐘相關(guān),存放的數(shù)據(jù)位為BCD碼形式,其日歷、時間寄存器及其控制字見相關(guān)數(shù)據(jù)手冊。 </p><p>  此外,DS1302 還有年份寄存器、控制寄存器、充電寄存器、時鐘突發(fā)寄存器及與RAM相關(guān)的寄存器等。時鐘突發(fā)

42、寄存器可一次性順序讀寫除充電寄存器外的所有寄存器內(nèi)容。 DS1302與RAM相關(guān)的寄存器分為兩類:一類是單個RAM單元,共31個,每個單元組態(tài)為一個8位的字節(jié),其命令控制字為C0H~FDH,其中奇數(shù)為 讀操作,偶數(shù)為寫操作;另一類為突發(fā)方式下的RAM寄存器,此方式下可一次性讀寫所有的RAM的31個字節(jié),命令控制字為FEH(寫)、FFH(讀)。</p><p>  2.4.1 TEA5767概述</p>

43、;<p>  TEA5767是飛利浦公司生產(chǎn)的一款收音機芯片,很多手機,MP3、MP4里的收音機功能都是于他實現(xiàn)的。圖2.4.1為TEA5767實物。 </p><p><b>  圖2.4.1</b></p><p>  2.4.2 TEA5767基本資料</p><p>  高靈敏、低噪聲高頻放大器, </p>

44、<p>  收音頻率:87.6MHz~108MHz,(支持頻率范圍在76MHz~87.5MHz 之間的校園收音頻道), </p><p>  LC 調(diào)諧振蕩器使成本更低,RF AGC 電路 </p><p>  內(nèi)置調(diào)頻中頻選擇 ,I2C 總線控制 </p><p>  內(nèi)置FM 立體聲解調(diào)器 ,PLL 合成調(diào)諧解碼器 </p><p&

45、gt;  兩個可編程端口 ,軟靜音,SNC(立體聲噪聲消除) </p><p>  自適應立體聲解碼,自動搜索功能 </p><p>  等待模式,需要一個7.6MHz晶體 </p><p>  40 腳LQFP 封裝</p><p>  2.4.3 TEA5767收音原理 </p><p>  TEA5767內(nèi)置了主

46、頻高達75MHZ的數(shù)字信號處理器,384KBPS/48KHZ的MD級高品質(zhì)MP3音樂文件回放,加上擁有一般MP3播放器難以企及的高保真回放線路(信噪比高達95DB,THD總諧波失真率〈0.05%〉同時非常省電。 </p><p>  TEA5767中的UESR模式給人的印象最為深刻,感覺有點像艾麗和中的3D效果,能很好并且充分表現(xiàn)出各個音色的質(zhì)地,讓人聽起來十分的舒服,音質(zhì)個人主觀意想占比較大的份額,有的人喜歡低

47、音偏重些,有的人喜歡高音明朗些,所以對于音質(zhì)的探討還是自己親身體驗一下是最好的選擇,不過話說回來TEA5767給人的印象十分出色,很對的起他自身的價值! </p><p>  高清晰度FM廣播:支持移動存儲,多種音樂格式MP3,WMA;錄音功能非常出色,可以直接對輸入音頻進行MP3編碼,也就是說即使你沒有PC機 也可以從CD機/卡帶機等音頻設備上獲得動聽的音樂,還支持FM轉(zhuǎn)錄功能:A—B復讀;更具個性化設計是可自

48、定義設計開機畫面。 </p><p>  FM收音功能,這個功能主要是有FM收音模塊來完成。其中FM收音模塊的核心就是下面的Philips(飛利浦)TEA5767。這是一塊性能比較良好的FM收音芯片,很多的MP3都是用這個型號來實現(xiàn)FM收音功能。</p><p>  2.5 LCD(12864)簡介</p><p><b>  2.5.1 概述</b

49、></p><p>  12864LED是一種具有4位/8位并行、2線或3線串行多種接口方式,內(nèi)部含有國標一級、二級簡體中文字庫的點陣圖形液晶顯示模塊;其顯示分辨率為128×64, 內(nèi)置8192個16*16點漢字,和128個16*8點ASCII字符集.利用該模塊靈活的接口方式和簡單、方便的操作指令,可構(gòu)成全中文人機交互圖形界面。可以顯示8×4行16×16點陣的漢字. 也可完成圖

50、形顯示.低電壓低功耗是其又一顯著特點。由該模塊構(gòu)成的液晶顯示方案與同類型的圖形點陣液晶顯示模塊相比,不論硬件電路結(jié)構(gòu)或顯示程序都要簡潔得多,且該模塊的價格也略低于相同點陣的圖形液晶模塊。</p><p>  圖2.5.1 LCD 128X64實物圖</p><p>  2.4.2 基本特性</p><p> ?。?)、低電源電壓(VDD:+3.0--+5.5V)(2

51、)、顯示分辨率:128×64點 (3)、內(nèi)置漢字字庫,提供8192個16×16點陣漢字(簡繁體可選) (4)、內(nèi)置 128個16×8點陣字符 (5)、2MHZ時鐘頻率 (6)、顯示方式:STN、半透、正顯 (7)、驅(qū)動方式:1/32DUTY,1/5BIAS (8)、視角方向:6點 (9)、背光方式:側(cè)部高亮白色LED,功耗僅為普通LED的1/5—1/10 (10)、通訊方式:串行、并口可選 (11)、內(nèi)置D

52、C-DC轉(zhuǎn)換電路,無需外加負壓 (12)、無需片選信號,簡化軟件設計(13)、工作溫度: 0℃ - +55℃ ,存儲溫度: -20℃ - +60℃</p><p>  第三章 總體方案設計</p><p><b>  3.1設計方案</b></p><p>  數(shù)字鐘是一個將“年”,“月”,“日”“時”,“分”,“秒”,“溫度”,“星期”顯示

53、于人的視覺器官的計時裝置。它的計時周期為100年,顯示滿刻度為2099年12月31日23時59分59秒,另外應有校時功能和溫度測量顯示等附加功能,溫度測量范圍為-55~125℃。因此,一個基本的數(shù)字鐘電路主要有穩(wěn)壓電路、單片機最小系統(tǒng)電路、18b20單總線電路、ds1302時鐘電路、LCD12864控制電路及按鍵電路組成。</p><p>  各個模塊均由單片機進行控制、讀取、數(shù)據(jù)處理。單片機讀取時鐘芯片及溫度傳

54、感器的數(shù)據(jù)進行處理,將時間和溫度值送給LCD12864控制顯示輸出,使時間及溫度值能被人所直接讀出。當修改時間時單片機通過人機交換得到時間信息然后轉(zhuǎn)換成時鐘芯片所認同的數(shù)據(jù)格式后修改時鐘芯片的時間值。</p><p>  單片機在常態(tài)時不斷讀取并刷新時間及溫度值、不斷掃描按鍵,從而使時間及溫度正確實時更新顯示、按鍵及時處理爭強人機交換的實時性。</p><p><b>  3.2

55、主程序流程圖</b></p><p>  如圖3.2.1所示為數(shù)字收音機萬年歷的主框圖</p><p>  如圖3.2.2所示為電子時鐘的主程序流程圖</p><p>  程序初始化后循環(huán)掃描溫度、時間、按鍵、顯示為時間、溫度的實時顯示及人機交換的隨時進行提供了保證。程序初始化后循環(huán)掃描溫度、時間、按鍵、顯示為時間、溫度、</p><

56、p>  時顯示及人機交換的隨時進行提供了保證。</p><p>  圖3.3.1 按鍵掃描流程圖</p><p>  3.3按鍵掃描及流程圖</p><p>  按鍵消抖采用軟件延時方式消抖。由于主程序在以很快的速度反復掃描按鍵,為避免一次按鍵被程序多次掃描而造成誤讀故采用松鍵作為單片機相應程序的方式。在鍵已被按下時單片機仍需要做其他工作以確保時間、溫度實時更

57、新故在鍵長期按下時程</p><p>  序要能退出按鍵掃描程序,而在退出按鍵掃描程序后若有已被按下的鍵松開則單片機要能相應該鍵已被釋放做相應動作。此時需要一個按鍵標志位key_bz,若key_bz=1則記錄該建議被按下,下次掃描時則直接檢查改進是否松開一響應并執(zhí)行。由于四個按鍵流程相同故作其中一按鍵流程圖如圖3.3.1。</p><p>  3.4時鐘芯片讀寫流程圖</p>

58、<p>  根據(jù)時鐘芯片數(shù)據(jù)手冊繪制一下讀寫流程圖:</p><p>  圖3.4.1時鐘芯片讀寫流程</p><p>  3.5溫度芯片讀取流程圖</p><p><b>  根據(jù)溫度傳感芯片</b></p><p>  數(shù)據(jù)手冊繪制一下讀取流</p><p><b>  

59、程圖:</b></p><p>  圖3.5.1溫度芯片讀寫流程圖</p><p>  第四章 系統(tǒng)的硬件組成</p><p>  4.1硬件模塊的組成與功能</p><p>  穩(wěn)壓電路:LM7805、電容。</p><p>  功能:為系統(tǒng)提穩(wěn)定的+5V直流電源。</p><p>

60、;  功放電源優(yōu)化開關(guān)電路:光耦合器,LED,NPN三極管,模擬單刀雙擲開關(guān)。</p><p>  功能:為雙聲道功率放大電路提供兩種電壓,以應對不同場合,同時有數(shù)字式開關(guān),控制信號有單片機提供。</p><p>  單片機最小系統(tǒng):單片機、振蕩電路、復位電路。</p><p>  功能:控制其他模塊及系統(tǒng)的運行。</p><p><b

61、>  按鍵:普通按鍵。</b></p><p>  功能:為系統(tǒng)提供人機交換數(shù)據(jù)。</p><p>  時鐘芯片:ds1302、備用電源。晶振。</p><p>  功能:為系統(tǒng)提供時間數(shù)據(jù)。</p><p>  溫度傳感:ds18b20。 </p><p>  功能:為系統(tǒng)提供溫度數(shù)據(jù)。</p

62、><p>  數(shù)字收音機模塊:TEA5767,TDA1308。</p><p>  功能:在單片機的控制下提供音頻信號。</p><p>  雙聲道功率放大電路:LM36.</p><p>  功能:提高音頻帶負載能力,以提供更強大的音頻信號。</p><p><b>  4.2 穩(wěn)壓電路</b>&l

63、t;/p><p>  本穩(wěn)壓電路采用三端穩(wěn)壓集成電路LM7805,具有性能穩(wěn)定、設計簡單、易于實現(xiàn)等優(yōu)點,也提供了電源指示燈,采用的是時下最流行的LED發(fā)光管,LED具有發(fā)光強度高并節(jié)能的優(yōu)點。具體電路如下:</p><p>  圖4.2.1 LM7805穩(wěn)壓電路</p><p>  4.3 功放電源優(yōu)化開關(guān)電路</p><p>  該系統(tǒng)的功

64、率放大電路采用LM386,LM386的電源范圍很寬,因此結(jié)合這一點我們就采用了單刀雙擲的模擬開關(guān)來切換功率放大電路的電源。一應對不同的場合。</p><p>  同時為了更加完善本單元的電路和提高功放的可用性,在LM386電源前有加上一級,來控制功率放大電路電源的通斷,當收音機打開時,同時從單片機送來一個高電平經(jīng)過光耦合器控制NPN型的三極管來打開LM386的電源;當收音機關(guān)斷的時候呢,從單片機送來一個低電平經(jīng)光

65、耦控制NPN型三極管來關(guān)斷LM386的電源。電路圖如下:</p><p>  圖4.3.1為功放電源優(yōu)化開關(guān)電路</p><p>  4.4 單片機最小系統(tǒng)電路</p><p>  單片機的復位只需使REST引腳的高電平持續(xù)兩個機器周期以上,簡單RC復位電路既能滿足其要求。如圖4.2.1當上電瞬間電容兩端壓差為零REST引腳被拉為高電平且持續(xù)兩個機器周期以上完成復位

66、。由于此復位方式只在上電時才有效又稱“上電復位”。</p><p>  單片機由其內(nèi)部固化程序在12 MHZ晶振的準確支持運行,將時鐘芯片中的時、分讀取到緩沖區(qū)內(nèi),并將時、分送到顯示電路, </p><p>  圖4.4.1所示為時鐘電路和復位電路原理圖,在AT89S51芯片內(nèi)部有一個高增益反相放大器,其輸入端為芯片引腳XTAL1,輸出端為引腳XTAL2。而在芯片內(nèi)部,XTAL1和XTAL

67、2之間跨接晶體振蕩器和微調(diào)電容,從而構(gòu)成一個穩(wěn)定的自激振蕩器。時鐘電路產(chǎn)生的振蕩脈沖經(jīng)過觸發(fā)器進行十二分頻之后,才成為單片機的時鐘脈沖信號。</p><p>  圖4.4.1 晶振與復位電路</p><p><b>  4.5 按鍵模塊</b></p><p>  按建模塊用來切換顯示時間或日期,以及對時間和日期進行校正修改和相關(guān)設置功能,同時

68、還有一個控制收音機和功放的開關(guān)的按鍵。該系統(tǒng)只使用了五個獨立按鍵。如下圖所示:</p><p>  圖4.5.1 按鍵模塊原理圖</p><p><b>  4.6 時鐘電路</b></p><p>  DS1302采用雙電源供電,其中Vcc1 為后備電源,VCC2為主電源。在主電源關(guān)閉的情況下,也能保持時鐘的連續(xù)運行。DS1302由Vcc1或

69、Vcc2兩者中的較大者供電。當Vcc2大于 Vcc1+0.2V時,Vcc2給DS1302供電。當Vcc2小于Vcc1時,DS1302由Vcc1供電。X1和X2是振蕩源,外接 32.768kHz晶振。設計電路如下:</p><p>  圖4.6.1時鐘電路</p><p>  4.7 溫度傳感電路</p><p>  DS18B20為單總線通訊方式一根數(shù)據(jù)線電路設計尤

70、為簡單。</p><p>  圖4.7.1溫度傳感電路</p><p><b>  收音機模塊</b></p><p>  該系統(tǒng)采用的是tea5767做收音機模塊的核心部件,預放大電路采用的是tda1308,tda1308具有一片就能實現(xiàn)雙聲道的放大。大大節(jié)省了資源。</p><p>  此模塊在單片機(89S52)通

71、過iic協(xié)議的控制下為制作者提供美妙的電臺廣播。此模塊通過單片機還可以實現(xiàn)調(diào)臺和提供電臺信號強度等功能。電路圖如下:</p><p>  圖4.8.1為收音機模塊電路圖</p><p><b>  雙聲道功率放大電路</b></p><p>  此單元電路采用lm386做功放主要部件。Lm386具有體積小,效率高,外圍原件少等優(yōu)點。</p

72、><p>  U7和U10為此單元的主要部件,左右聲道的音頻信號通過兩個做在一起的電位器調(diào)節(jié)后通往lm386進行功率放大。音頻信號輸出端采用耳機座,可以方便連接外部大功率揚聲器。電路圖如下:</p><p>  圖4.9.1為雙聲道功率放大電路</p><p><b>  第五章 程序設計</b></p><p><

73、b>  5.1相關(guān)工具軟件</b></p><p>  本次設計中與用到的相關(guān)軟件如圖5.1.1和圖5.1.2所示:</p><p>  圖5.1.1 Keil uVision4使用界面圖</p><p>  圖5.1.2 SPI在線燒錄軟件界面</p><p>  5.2部分TEA5767程序(程序清單見附錄):</

74、p><p>  /********************************/ </p><p>  //由頻率計算PLL </p><p>  void get_pll(void) </p><p><b>  { </b></p><p>  uchar hlsi; </p>

75、<p>  uint twpll=0; </p><p>  hlsi=radio_write_data[2]&0x10; </p><p>  if (hlsi) </p><p>  pll=(uint)((float)((frequency+225)*4)/(float)32.768); //頻率單位:k </p><

76、;p><b>  else </b></p><p>  pll=(uint)((float)((frequency-225)*4)/(float)32.768); //頻率單位:k </p><p><b>  } </b></p><p>  //由PLL計算頻率 </p><p>

77、  void get_frequency(void) </p><p><b>  { </b></p><p>  uchar hlsi; </p><p>  uint npll=0; </p><p>  npll=pll; </p><p>  hlsi=radio_write_data[

78、2]&0x10; </p><p>  if (hlsi) </p><p>  frequency=(ulong)((float)(npll)*(float)8.192-225); //頻率單位:KHz </p><p><b>  else </b></p><p>  frequency=(ulong

79、)((float)(npll)*(float)8.192+225); //頻率單位:KHz </p><p><b>  } </b></p><p><b>  //寫5767 </b></p><p>  void radio_write(void) </p><p><b> 

80、 { </b></p><p><b>  uchar i; </b></p><p>  iic_start(); </p><p>  iic_write_byte(0xc0); //TEA5767寫地址 </p><p>  iic_yinda(); </p><p&g

81、t;  for(i=0;i<5;i++) </p><p><b>  { </b></p><p>  iic_write_byte(radio_write_data[i]); </p><p>  iic_yinda(); </p><p><b>  } </b></p>

82、<p>  iic_stop(); </p><p><b>  } </b></p><p>  //讀TEA5767狀態(tài),并轉(zhuǎn)換成頻率 </p><p>  void radio_read(void) </p><p><b>  { </b></p><p

83、><b>  uchar i; </b></p><p>  uchar temp_l,temp_h; </p><p><b>  pll=0; </b></p><p>  iic_start(); </p><p>  iic_write_byte(0xc1); //TEA

84、5767讀地址 </p><p>  iic_yinda(); </p><p>  for(i=0;i<5;i++) </p><p><b>  { </b></p><p>  radio_read_data[i]=iic_read_byte(); </p><p>  iic_ack

85、(); </p><p><b>  } </b></p><p>  iic_stop(); </p><p>  temp_l=radio_read_data[1]; </p><p>  temp_h=radio_read_data[0]; </p><p>  temp_h&=0x

86、3f; </p><p>  pll=temp_h*256+temp_l; </p><p>  get_frequency(); </p><p><b>  }</b></p><p>  第六章 性能測試與分析</p><p>  本系統(tǒng)以89S52單片機作為控制核心,使用LCD顯示模塊、時

87、鐘模塊、溫度傳感、按鍵模塊,實現(xiàn)時間的顯示,年月日顯示及相應校正和設置功能.除具有括時鐘顯示、日期顯示外,還有校正時間和日期.實際運行效果良好,并可進行進一步的擴展.萬年歷能以秒為最小時間單位計時,同時應能用數(shù)字直觀顯示當前的時與分,秒,以及切換到日期顯示界面,還可以手動校時和調(diào)整日期。</p><p>  圖6.1為數(shù)字收音機萬年歷實物正面圖</p><p>  圖6.2為數(shù)字收音機萬年

88、歷實物背面圖</p><p>  先根據(jù)原理圖逐次檢查各個模塊電路焊接是否正常,排除硬件可能存在的故障。</p><p>  6.1基本功能和參數(shù)</p><p>  1.時制式為24小時制。</p><p>  2.采用LCD顯示年、月、日、時、分、秒、星期及溫度均采用數(shù)字顯示。</p><p>  3.具有方便的時

89、間調(diào)校功能。</p><p>  4.計時穩(wěn)定,可精確校正計時精度。</p><p>  6.能準確顯示實時溫度精度為1℃。</p><p>  6.2測試的相關(guān)參數(shù)</p><p> ?。?)小計時時間單位為1s。</p><p> ?。?)秒和分的范圍是00~59,小時的計時范圍是00~23,日的計時范圍是01~

90、30,月的計時范圍是01~12,年的計時范圍是2000~2099,溫度顯示范圍-55~125℃。</p><p> ?。?)可手動將時間顯示和日期顯示互相切換,并可分別對分鐘、小時、日期和月份進行校正。</p><p>  圖6.2.1 測試結(jié)果現(xiàn)象圖</p><p><b>  第七章 結(jié)束語</b></p><p>

91、  單片機作為我們主要的專業(yè)課程之一,我覺得單片機課程設計很有必要,而且很有意義。但當拿到題目時,確實不知道怎么著手,有些迷茫,上網(wǎng)查資料,問老師,在老師的幫助下,歷時兩個星期,解決一個又一個的困難,終于完成任務。</p><p>  在這次課程設計中,運用到了很多以前的專業(yè)知識,雖然過去從未獨立應用過它們,但在學習的過程中帶著問題去學我發(fā)現(xiàn)效率很高,這是我做這次課程設計的一大收獲。另外,要做好一個課程設計,就必

92、須做到:在設計程序之前,對所用單片機的內(nèi)部結(jié)構(gòu)有一個系統(tǒng)的了解,知道該單片機內(nèi)有哪些資源;要有一個清晰的思路和一個完整的的軟件流程圖;在設計程序時,不能妄想一次就將整個程序設計好,反復修改、不斷改進是程序設計的必經(jīng)之路;要養(yǎng)成注釋程序的好習慣,一個程序的完美與否不僅僅是實現(xiàn)功能,而應該讓人一看就能明白你的思路,這樣也為資料的保存和交流提供了方便;在設計課程過程中遇到問題是很正常德,但我們應該將每次遇到的問題記錄下來,并分析清楚,以免下次

93、再碰到同樣的問題。課程設計結(jié)束了,但是從中學到的知識會讓我受益終身。發(fā)現(xiàn)、提出、分析、解決問題和實踐能力的提高都會受益于我在以后的學習、工作和生活中。設計過程,好比是我們?nèi)祟惓砷L的歷程,常有一些不如意,但畢竟這是第一次做,難免會遇到各種各樣的問題。在設計的過程中發(fā)現(xiàn)了自己的不足之處,對以前所學過的知識理解得不夠深刻,掌握得不夠牢固,不能靈活運用。</p><p>  通過這次設計,我懂得了學習的重要性,了解到理論

94、知識與實踐相結(jié)合的重要意義,學會了堅持、耐心和努力,這將為自己今后的學習和工作做出了最好的榜樣。另外,要非常感謝我的指導老師,是她指引我克服一個由一個的困難,讓我學會對困難無所畏懼,以及對問題的一些很重要的思考方法。</p><p><b>  致謝</b></p><p>  經(jīng)過幾個月的查資料、整理材料、寫作論文,今天終于可以順利的完成設計的最后的謝辭了,時光匆匆

95、飛逝,隨著論文的完成,終于讓大學的生活,得以劃下了完美的句點。本論文設計在王春霞老師的悉心指導和嚴格要求下業(yè)已完成,從課題選擇到具體的寫作過程,無不凝聚著王老師的心血和汗水,在我的畢業(yè)論文寫作期間,王老師為我提供了種種專業(yè)知識上的指導和一些富于創(chuàng)造性的建議,沒有這樣的幫助和關(guān)懷,我不會這么順利的完成畢業(yè)論文。在此向王老師表示深深的感謝和崇高的敬意。  在臨近畢業(yè)之際,我還要借此機會向在這三年中給予了我?guī)椭椭笇У乃欣?/p>

96、師表示由衷的謝意,感謝他們?nèi)陙淼男燎谠耘唷2环e跬步何以至千里,各位任課老師認真負責,在他們的悉心幫助和支持下,我能夠很好的掌握和運用專業(yè)知識,并在設計中得以體現(xiàn),順利完成畢業(yè)論文。  同時,在論文寫作過程中,我還參考了有關(guān)的書籍和論文,在這里一并向有關(guān)的作者表示謝意。    我還要感謝同組的各位同學,在畢業(yè)設計的這段時間里,你們給了我很多的啟發(fā),提出了很多寶貴的意見,對于你們幫助

97、和支持,在此我表示深深地感謝。</p><p><b>  附錄</b></p><p>  #include<reg52.h></p><p>  #define uint unsigned int </p><p>  #define uchar unsigned char</p><

98、;p>  #define ulong unsigned long</p><p>  #define max_freq 108000 </p><p>  #define min_freq 87500</p><p>  /*******************************/</p><p>  sbit rs=P2^7;&

99、lt;/p><p>  sbit wr=P2^6; </p><p>  sbit en=P2^5;</p><p>  //sbit psb=P2^1;</p><p>  //sbit rst1=P2^3;</p><p>  /*******************/</p><

100、;p>  sbit clk=P2^2;</p><p>  sbit sda=P2^3;</p><p>  sbit rst=P2^4;</p><p>  sbit scl=P3^7; </p><p>  sbit sda1=P3^6;</p><p>  sbit s1=P1^1;</p>

101、<p>  sbit s2=P1^4;</p><p>  sbit s3=P1^2;</p><p>  sbit s4=P1^3;</p><p>  sbit s5=P1^0;</p><p>  sbit gf=P3^0;</p><p>  sbit dq=P2^0;</p><

102、p>  //sbit led=P1^0;</p><p>  sbit ACC_7=ACC^7;</p><p>  /*********************/</p><p>  /************************************/</p><p>  uchar b,num,ys,i;</p>

103、<p>  /************************/</p><p>  uint default_pll=0x2d56;//0x2d56; //默認存臺的pll,95.3MHz </p><p>  uint pll; </p><p>  ulong frequency; </p><p>  

104、/*************************/</p><p>  uchar code table0[]="關(guān)";</p><p>  uchar code table[]="11年11月09日周3 頻率:104.1MHZ ";</p><p>  uchar code table1[]="12點11分

105、12秒21℃FM開信號強度:10 ";</p><p>  uchar write_reg[7]={0x80,0x82,0x84,0x86,0x88,0x8a,0x8c};</p><p>  uchar read_reg[7]={0x81,0x83,0x85,0x87,0x89,0x8b,0x8d};</p><p>  uchar write_date

106、[7]={30,30,12,24,8,3,11};</p><p>  uchar read_sj[7];</p><p>  /********************************/</p><p>  uchar radio_write_data[5]={0x2d,0x56,0x20,0x11,0x00}; //要寫入TEA5767的數(shù)

107、據(jù) </p><p>  uchar radio_read_data[5]; //TEA5767讀出的狀態(tài) </p><p>  uchar zjp_ma[4];</p><p>  /*************************************/</p><p>  void delay2us()</p&g

108、t;<p><b>  {;;}</b></p><p>  void delay8us()</p><p>  {;;;;;;;;}</p><p>  void delayms(uint z)</p><p><b>  {</b></p><p><

109、b>  uint x,y;</b></p><p>  for(x=z;x>0;x--)</p><p>  for(y=110;y>0;y--);</p><p><b>  }</b></p><p>  void delayus(uint t)</p><p>

110、<b>  {</b></p><p>  while(t--);</p><p><b>  }</b></p><p>  /**********************************************************/</p><p>  //啟動I2C總線的函數(shù),當s

111、cl為高電平時使sda產(chǎn)生一個負跳變 </p><p>  void iic_start() </p><p><b>  { </b></p><p><b>  sda1=1; </b></p><p>  delay2us(); </p><p><b>

112、  scl=1;</b></p><p>  delay2us(); </p><p><b>  sda1=0;</b></p><p>  delay2us(); </p><p>  scl=0; </p><p><b>  } </b

113、></p><p>  //終止I2C總線,當scl為高電平時使sda產(chǎn)生一個正跳變 </p><p>  void iic_stop() </p><p><b>  { </b></p><p><b>  sda1=0; </b></p><p>  delay

114、2us();</p><p><b>  scl=1; </b></p><p>  delay2us(); </p><p><b>  sda1=1; </b></p><p>  delay2us(); </p><p>&l

115、t;b>  scl=0;</b></p><p><b>  } </b></p><p><b>  //發(fā)送應答信號 </b></p><p>  void iic_ack() </p><p><b>  { </b></p><p

116、><b>  sda1=0; </b></p><p>  delay2us();</p><p><b>  scl=1; </b></p><p>  delay2us();</p><p><b>  scl=0; </b></p><p>

117、  delay2us();</p><p><b>  sda1=1; </b></p><p><b>  } </b></p><p>  void iic_yinda()</p><p><b>  {</b></p><p>  uchar i=

118、0;</p><p><b>  scl=1;</b></p><p>  delay2us();</p><p>  while((sda1==1)&&(i<250))i++;</p><p><b>  scl=0;</b></p><p>  de

119、lay2us();</p><p><b>  }</b></p><p><b>  //發(fā)送一個字節(jié) </b></p><p>  void iic_write_byte(uchar date) </p><p><b>  { </b></p><p

120、><b>  uchar i;</b></p><p>  for(i=0;i<8;i++)</p><p><b>  {</b></p><p><b>  scl=0;</b></p><p><b>  date<<=1;</b&

121、gt;</p><p><b>  sda1=CY;</b></p><p><b>  scl=1;</b></p><p>  delay2us();</p><p><b>  }</b></p><p><b>  scl=0;<

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論