




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 課程設(shè)計(jì)論文 題 目:基于RDA5807的數(shù)控FM收音機(jī) 院 (系): 信息與通信學(xué)院 專 業(yè): 電子信息工程 學(xué)生姓名: 杜俊峰 學(xué) 號(hào): 1100220509 指導(dǎo)教師: 蔡曉東 2013 年 12月15日摘 要此收音機(jī)基于RDA5807收音模塊,通過(guò)STC89C52單片機(jī)來(lái)控制頻率顯示、音量控制,單片機(jī)與收音模塊之間通過(guò)IIC通信協(xié)議來(lái)進(jìn)行通信控制。該數(shù)控收音機(jī)具有噪音消除、軟靜音、低音增強(qiáng),而且靈敏度高、噪聲小,抗干擾能力強(qiáng),能夠在液晶屏上實(shí)時(shí)顯示頻率和聲音。并且體積小、方便攜帶。關(guān)鍵詞:RDA5807,STC89C52.IIC通信AbstractThis radio radio m
2、odule based RDA5807 by STC89C52 microcontroller to control the frequency display, through IIC communication protocol for communication between the control volume control, microcontroller and radio module. The digital radio with noise cancellation, soft mute, bass boost, and high sensitivity, low noi
3、se, strong anti-interference ability to display the frequency and sound in real time on the LCD screen. And small, easy to carry.Key words:RDA5807,STC89C52 、IIC目 錄引言11 設(shè)計(jì)要求及方案選擇11.1 設(shè)計(jì)要求11.2 方案選擇11.2.1 方案對(duì)比11.2.2 方案構(gòu)圖21.2.3 各部分作用22 理論分析與設(shè)計(jì)32.1 單片機(jī)最小系統(tǒng)設(shè)計(jì)32.1.1 STC89C52特性32.1.2 STC89C521引腳功能32.2 收音模塊及
4、存儲(chǔ)芯片電路設(shè)計(jì)43 電路設(shè)計(jì)63.1 硬件電路設(shè)計(jì)63.1.1單片機(jī)最小系統(tǒng)電路63.1.2 模塊電路設(shè)計(jì)64 軟件設(shè)計(jì)74.1 IIC通信協(xié)議分析74.2 程序流程圖95系統(tǒng)調(diào)試105.1 調(diào)試結(jié)果105.2 結(jié)果分析106 結(jié)論10謝 辭11參考文獻(xiàn)12附錄.13 引言 收音機(jī)在日常生活中必不可少,在信息化的今天,數(shù)字化已經(jīng)成為時(shí)代潮流,數(shù)控收音機(jī)越來(lái)越受到人們的青睞,相比于傳統(tǒng)收音機(jī),數(shù)控收音機(jī)以良好的人機(jī)互動(dòng)、操作簡(jiǎn)單化更符合人們的要求1 設(shè)計(jì)要求及方案選擇1.1 設(shè)計(jì)要求(1)65-108MHz全球FM接收頻段相容(包括日本76-91MHz和歐美87.5-108MHz)(2)具備噪
5、聲消除、軟靜音、低音增強(qiáng)等功能(3)靈敏度高、噪聲小、抗干擾能力強(qiáng)(4)具備頻率顯示功能1.2 方案選擇 在如今這個(gè)信息化時(shí)代,信息的接收和處理顯得越發(fā)重要,收音機(jī)作為傳統(tǒng)接受信息的工具,已經(jīng)深入到人們的日常生活中。在電子領(lǐng)域,對(duì)于制作調(diào)頻收音機(jī),有以下兩種方法。一是用分立元件設(shè)計(jì)收音機(jī)。二是運(yùn)用集成模塊用數(shù)控來(lái)做收音機(jī)。1.2.1 方案對(duì)比方案一:分立元件所做的收音機(jī),其缺點(diǎn)顯而易見(jiàn),調(diào)試難度大,音質(zhì)差,成本相比集成收音機(jī)高很多,在現(xiàn)在基本上已經(jīng)被淘汰了。方案二:用集成模塊做收音機(jī)。集成模塊做的收音機(jī)有以下特點(diǎn):(1)體積和功耗小。一片集成電路放大器可具有數(shù)十個(gè)晶體管、二極管、電阻和電容等所
6、組成電路的功能。但其體積和功耗僅相當(dāng)于一個(gè)小功率晶體管。 (2)可靠性高。由于集成電路外部連線和焊點(diǎn)極少,減小了出故障的可能性,故可靠性高。 (3)保真度好。由于集成電路是把所有晶體管都制在一塊片子上,晶體管的配對(duì)和靜態(tài)電流等都可處于最佳狀態(tài),所以失真度很小,一般都小于1。故用它制作的收音機(jī)保真度較好。 (4)靈敏度高。這是因?yàn)榧呻娐房梢栽谄鋬?nèi)部多制一些晶體管,從而提高整機(jī)的靈敏度。 (5)
7、功率大、音質(zhì)優(yōu)美。用集成電路和大功率晶體管共同組裝的收音機(jī)能達(dá)到幾十瓦以上的不失真功率輸出,功率余量大。因此,聲音洪亮,音質(zhì)優(yōu)美。 (6)頻響寬。集成電路放大器的開(kāi)環(huán)增益非常高,接成閉環(huán)后能減小失真和加寬頻響。其頻響范圍可從40赫到20千赫,比分立元件組裝的收音機(jī)頻響寬。 (7)穩(wěn)定性好、性能指標(biāo)高。集成電路工作穩(wěn)定,為提高整機(jī)性能,電路可設(shè)計(jì)成分立元件難以實(shí)現(xiàn)的高性能電路。 (8)集成電路中相鄰元件的參數(shù)匹配優(yōu)良,
8、故放大器的零點(diǎn)漂移和共模抑制比等直流參數(shù)得到改善。在輸入端無(wú)信號(hào)時(shí),功率輸出級(jí)的中點(diǎn)始終保持零電位,不會(huì)因溫漂而燒揚(yáng)聲器。這是目前元件所達(dá)不到的。 (9)裝配和調(diào)試比較簡(jiǎn)單。用集成元件組成的功放電路,只要焊接無(wú)誤,幾乎不需調(diào)整,即能保證放音。對(duì)于變頻和中放集成電路,則不必調(diào)整靜態(tài)工作點(diǎn)。用集成元件組成的組合式收音機(jī),只要調(diào)準(zhǔn)中頻頻率,完成三點(diǎn)統(tǒng)調(diào)即可。 (10)價(jià)格便宜。即在整機(jī)性能和功能相同的情況下,成本比分立元件收音機(jī)低很多,這樣有利于收音機(jī)的推廣普及。此外,集成電路的應(yīng)用,為收音機(jī)
9、的多功能創(chuàng)造了必備的條件。例如,自動(dòng)選臺(tái)、預(yù)選節(jié)目、頻率的數(shù)字顯示等性能,已隨著集成電路的應(yīng)用而相繼實(shí)現(xiàn)。所以我最終選擇了方案二,選用RDA5807收音模塊做調(diào)頻收音機(jī)。1.2.2 方案構(gòu)圖基于RDA5807的數(shù)控收音機(jī),在電子領(lǐng)域有許多相關(guān)的方案和設(shè)計(jì)思路,在仔細(xì)考量現(xiàn)有的條件和本身的專業(yè)能力后我選擇用STC89C52單片機(jī)作為控制系統(tǒng)來(lái)驅(qū)動(dòng)RDA5807收音模塊。由于5807的工作電壓只要3.3V,而單片機(jī)的工作電壓是5V,所以我選用AS1117降壓芯片來(lái)將5V的電壓降到3.3V來(lái)給收音模塊供電,因?yàn)閾?dān)心內(nèi)存不夠,我外加一塊24C02存儲(chǔ)芯片,與RDA5807一起通過(guò)IIC串口通信與單片機(jī)
10、最小系統(tǒng)相連。我用四個(gè)按鍵分別控制音量的加減和上下搜索頻道,并且用1602液晶來(lái)顯示當(dāng)前頻道頻率和音量大小。因?yàn)槎际悄K化的器件,所以本次的作品體積小,攜帶方便,有實(shí)用價(jià)值。方案利用的是單片機(jī)最小系統(tǒng)、液晶顯示部分、按鍵控制和收音模塊與存儲(chǔ)芯片部分共同等組成的系統(tǒng),下圖為方案系統(tǒng)框圖。液晶顯示STC89C52單片機(jī)控制系統(tǒng)收音模塊及存儲(chǔ)芯片 按鍵控制 1-1 方案系統(tǒng)框圖1.2.3 各部分的作用(1)液晶顯示。液晶顯示用1602液晶屏來(lái)顯示頻率和音量信息。單片機(jī)最小系統(tǒng)將收到的頻率和音量數(shù)據(jù)發(fā)送給液晶,讓其顯示出來(lái)。(2)按鍵控制。四個(gè)按鍵分別用來(lái)控制音量大小和頻率搜索,提供人機(jī)互動(dòng),通過(guò)單片
11、機(jī)來(lái)控制收音模塊(3)單片機(jī)最小系統(tǒng)。用STC89C52單片機(jī)來(lái)實(shí)現(xiàn)數(shù)控,接受按鍵信息來(lái)控制收音模塊,再將收音模塊反饋的信息傳給液晶。(4)收音模塊。通過(guò)和最小系統(tǒng)進(jìn)行信息交換,按要求完成用戶的指令2. 理論分析與設(shè)計(jì)2.1 單片機(jī)最小系統(tǒng)電路設(shè)計(jì)2.1.1 STC89C52特性 STC89C52是STC公司生產(chǎn)的一種低功耗、高性能CMOS8位微控制器,具有 8K 在系統(tǒng)可編程Flash存儲(chǔ)器。STC89C52使用經(jīng)典的MCS-51內(nèi)核,但做了很多的改進(jìn)使得芯片具有傳統(tǒng)51單片機(jī)不具備的功能。在單芯片上,擁有靈巧的8 位CPU 和在系統(tǒng)可編程Flash,使得STC89C52為眾多嵌入式控制應(yīng)用
12、系統(tǒng)提供高靈活、超有效的解決方案。 具有以下標(biāo)準(zhǔn)功能: 8k字節(jié)Flash,512字節(jié)RAM, 32 位I/O 口線,看門(mén)狗定時(shí)器,內(nèi)置4KB EEPROM,MAX810復(fù)位電路,3個(gè)16 位定時(shí)器/計(jì)數(shù)器,4個(gè)外部中斷,一個(gè)7向量4級(jí)中斷結(jié)構(gòu)(兼容傳統(tǒng)51的5向量2級(jí)中斷結(jié)構(gòu)),全雙工串行口。另外 STC89C52 可降至0Hz 靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU 停止工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個(gè)中斷或硬件復(fù)位為止。最高運(yùn)作頻率35MHz,6T/12T可選。STC
13、89C52實(shí)物圖2.1.2 STC89C52引腳功能1電源:VCC - 芯片電源,接+5V; VSS - 接地端; 2.時(shí)鐘: XTAL1、XTAL2 - 晶體振蕩電路反相輸入端和輸出端。 3.控制線: 控制線共有4根: ALE/PROG:地址鎖存允許/片內(nèi)EPROM編程脈沖 ALE功能:用來(lái)鎖存P0口送出的低8位地址 PROG功能:片內(nèi)有EPROM的芯片,在EPROM編程期間,此引腳輸入編程脈沖。 PSEN:外ROM讀選通信號(hào)。 RST/VPD:復(fù)位/備用電源。 RST(Re
14、set)功能:復(fù)位信號(hào)輸入端。 VPD功能:在Vcc掉電情況下,接備用電源。 EA/Vpp:內(nèi)外ROM選擇/片內(nèi)EPROM編程電源。 EA功能:內(nèi)外ROM選擇端。 Vpp功能:片內(nèi)有EPROM的芯片,在EPROM編程期間,施加編程電源Vpp。 4.I/O口線:P0、P1、P2、P3共四個(gè)八位口。 P0口是三態(tài)雙向口,通稱數(shù)據(jù)總線口,因?yàn)橹挥性摽谀苤苯佑糜趯?duì)外部存儲(chǔ)器的讀/寫(xiě)操作。P0口也用以輸出外部存儲(chǔ)器的低8位地圖1址。由于是分時(shí)輸出,故應(yīng)在外部加鎖存器將此地址數(shù)據(jù)鎖存,地址鎖存,信號(hào)用ALE。
15、160; P1口是專門(mén)供用戶使用的I/O口,是準(zhǔn)雙向口。 P2口是從系統(tǒng)擴(kuò)展時(shí)作高8位地址線用。不擴(kuò)展外部存儲(chǔ)器時(shí),P2口也可以作為用戶I/O口線使用,P2口也是準(zhǔn)雙向口。 P3口是雙功能口,該口的每一位均可獨(dú)立地定義為第一I/O功能或第二I/O功能。作為第一功能使用時(shí)操作同P1口。STC89C52的引腳圖2.2 收音模塊及存儲(chǔ)芯片電路設(shè)計(jì) “RRD-102V2.0”立體聲收音模塊( FM Stereo radio Module) 高靈敏度、低功耗、超小體積的調(diào)頻立體聲收音模組。采用RDA M
16、icroelectronics的RDA5807M(或RDA5802NM),此電路外圍元件少、噪聲系數(shù)極小。具有體積小、低功耗、低成本、應(yīng)用簡(jiǎn)單、使用范圍廣等優(yōu)點(diǎn)。是一款簡(jiǎn)單易用且具極高性價(jià)比的單芯片F(xiàn)M立體聲收音模組。它能很好的完成課設(shè)要求。由于它只需要3V電壓工作,我用as1117線性穩(wěn)壓芯片將5v的單片機(jī)工作電壓降到3V。模塊的引腳及外圍電路圖AS1117應(yīng)用電路3. 電路設(shè)計(jì)3.1 硬件電路的設(shè)計(jì) 本次課設(shè)的硬件電路主要分成兩大塊來(lái)做板,一塊是單片機(jī)最小系統(tǒng)和液晶及按鍵的部分;另一部分是以收音模塊為主的模塊部分。3.1.1 單片最小系統(tǒng)部分電路圖 單片機(jī)最小系統(tǒng)外圍電路只需要接復(fù)位電路及
17、震蕩電路就行,而顯示及按鍵只需要接到I/O口就行了。下面是其原理圖:3.1.2 模塊電路設(shè)計(jì) 由單片機(jī)給1117芯片和24C02供電,再將降壓得到的3V電壓供給RDA5807模塊,由于模塊和芯片的外圍電路都資料上都已經(jīng)給出來(lái)了,所以只需要將其連接到一起就可以了。J1接單片機(jī)電源,J3接單片機(jī)I/O口模塊原理圖4. 軟件設(shè)計(jì)4.1 IIC通信協(xié)議分析 本次課程設(shè)計(jì)硬件電路設(shè)計(jì)比較簡(jiǎn)單,但是程序比較難,它的難度在于RDA5807采用的是IIC通信模式,這種通信模式對(duì)時(shí)序要求很?chē)?yán)格。IIC通信協(xié)議有以下特點(diǎn):(1)只要求兩條總線線路 一條串行數(shù)據(jù)線SDA 一條串行時(shí)鐘線SCL (2) 每個(gè)連接到總線
18、的器件都可以通過(guò)唯一的地址和一直存在的簡(jiǎn)單的主機(jī)/從機(jī)關(guān)系軟件設(shè)定地址;主機(jī)可以作為主發(fā)送器或主機(jī)接收器 (3)它是一個(gè)真正的多主機(jī)總線,如果兩個(gè)或更多主機(jī)同時(shí)初始化數(shù)據(jù)傳輸可以通過(guò)沖突檢測(cè)和仲裁防止數(shù)據(jù)被破壞 (4)串行的 8 位雙向數(shù)據(jù)傳輸位速率在標(biāo)準(zhǔn)模式下可達(dá) 100kbit/s 快速模式下可達(dá) 400kbit/s 高速模式下可達(dá).4Mbit/s (5)片上的濾波器可以濾去總線數(shù)據(jù)線上的毛刺波保證數(shù)據(jù)完整(6) 連接到相同總線的IC數(shù)量只受到總線的最大電容400pF 限制I2C協(xié)議總線信號(hào)時(shí)序分析1 .數(shù)據(jù)的有效性:SDA線上的數(shù)據(jù)必須在時(shí)鐘的高電平周期保持穩(wěn)定數(shù)據(jù)線的高或低電平狀態(tài)只有
19、在 SCL線的時(shí)鐘信號(hào)是低電平時(shí)才能改變。2 .起始和停止條件當(dāng)SCL線是高電平時(shí),SDA線從高電平向低電平切換,這個(gè)情況表示起始條件。當(dāng)SCL線是高電平時(shí),SDA線由低電平向高電平切換表示停止條件。3. 總線空閑狀態(tài)SDA和SCL兩條信號(hào)線都處于高電平,即總線上所有的器件都釋放總線,兩條信號(hào)線各自的上拉電阻把電平拉高; 4 .數(shù)據(jù)傳輸與應(yīng)答信號(hào)ACK發(fā)送到SDA線上的數(shù)據(jù)必須是8位的。每次傳輸可以發(fā)送的數(shù)據(jù)不受限制。每個(gè)字節(jié)后必須在時(shí)鐘的第9個(gè)脈沖期間釋放數(shù)據(jù)總線(SDA為高),由接收器發(fā)送一個(gè)ACK(把數(shù)據(jù)總線的電平拉低)來(lái)表示數(shù)據(jù)成功接收。 首先傳輸?shù)氖菙?shù)據(jù)的最高位(MSB)。如果從機(jī)要
20、完成一些其他功能后(例如一個(gè)內(nèi)部中斷服務(wù)程序)才能接收或發(fā)送下一個(gè)完整的數(shù)據(jù)字節(jié),可以使時(shí)鐘SCL保持低電平迫使主機(jī)進(jìn)入等待狀態(tài)。當(dāng)從機(jī)準(zhǔn)備好接收下一個(gè)數(shù)據(jù)字節(jié)并釋放時(shí)鐘線SCL后,數(shù)據(jù)傳輸繼續(xù)。4. 地址格式數(shù)據(jù)的傳輸遵循如圖4.1 完整的數(shù)據(jù)傳送所示,在起始條件之后,發(fā)送一個(gè)7位的從機(jī)地址,緊接著第8位是數(shù)據(jù)方向(R/ W),0-表示發(fā)送數(shù)據(jù)(寫(xiě)),1-表示接收數(shù)據(jù)(讀)。數(shù)據(jù)傳輸一般由主機(jī)產(chǎn)生的停止位(P)終止。但是如果主機(jī)仍希望在總線上通訊,它可以產(chǎn)生重復(fù)起始條件(Sr),和尋址另一個(gè)從機(jī),而不是首先產(chǎn)生一個(gè)停止條件。在這種傳輸中,可能有不同的讀/寫(xiě)格式結(jié)合?,F(xiàn)代電子系統(tǒng)中,有為數(shù)眾多
21、的IC需要進(jìn)行相互之間以及與外界的通信。為了提供硬件的效率和簡(jiǎn)化電路的設(shè)計(jì),PHILIPS開(kāi)發(fā)了一種用于內(nèi)部IC控制的簡(jiǎn)單的雙向兩線串行總線I2C。I2C總線支持任何一種IC制造工藝,并且PHILIPS和其他廠商提供了種類(lèi)非常豐富的I2C兼容芯片。作為一個(gè)專利的控制總線,I2C已經(jīng)成為世界性的工業(yè)標(biāo)準(zhǔn)。 每個(gè)器件都有一個(gè)唯一的地址,而且可以是單接收的器件(例如:LCD驅(qū)動(dòng)器)或者可以接收也可以發(fā)送的器件(例如:存儲(chǔ)器)。發(fā)送器或接收器可以在主模式或從模式下操作,這取決于芯片是否必須啟動(dòng)數(shù)據(jù)的傳輸還是僅僅被尋址。I2C是一個(gè)多主總線,即它可以由多個(gè)連接的器件控制?;镜腎2C總線規(guī)范于20年前發(fā)
22、布,其數(shù)據(jù)傳輸速率最高為100Kbits/s,采用7位尋址。但是由于數(shù)據(jù)傳輸速率和應(yīng)用功能的迅速增加,I2C總線也增強(qiáng)為快速模式(400Kbits/s)和10位尋址以滿足更高速度和更大尋址空間的需求。I2C總線始終和先進(jìn)技術(shù)保持同步,但仍然保持其向下兼容性。并且最近還增加了高速模式,其速度可達(dá)3.4Mbits/s。它使得I2C總線能夠支持現(xiàn)有以及將來(lái)的高速串行傳輸應(yīng)用,例如EEPROM和Flash存儲(chǔ)器。 IIC通信協(xié)議一般的過(guò)程: 1-先向總線發(fā)出芯片地址 2-如果有芯片地址正確的芯片,會(huì)產(chǎn)生一個(gè)SDA上應(yīng)答。 3-接著主機(jī)再發(fā)出應(yīng)答過(guò)的芯片發(fā)出將要所進(jìn)行操作的片內(nèi)地址。 4-芯片地址正確的
23、芯片,會(huì)再產(chǎn)生一個(gè)SDA上應(yīng)答。 5-此時(shí)如果是讀操作,從芯片將輸出數(shù)據(jù)到SDA上。如果是寫(xiě)操作,主機(jī)會(huì)將數(shù)據(jù)寫(xiě)到SDA上。4.2 程序流程圖:根據(jù)以上資料,結(jié)合單片機(jī)知識(shí),編出了相關(guān)程序,這是程序流程圖:程序框圖初始化液晶顯示初始值檢測(cè)是否有按鍵按下模塊進(jìn)行搜索頻道和音量的相關(guān)變化液晶顯示當(dāng)前頻率和音量結(jié)束具體程序詳見(jiàn)附錄5. 系統(tǒng)測(cè)試5.1 調(diào)試結(jié)果:所能接受的頻率87.0MHZ87.1MHZ88.0M88.3M89.8M90.0M94.1M95.0M96.0M97.799.0M100.0101.1101.4101.51021041051061085.2 結(jié)果分析: 根據(jù)結(jié)果可知,其滿足了
24、87108MHZ(歐美)頻率接受要求,并且具有良好的噪音消除和抗干擾能力。液晶顯示頻率和音量,完全符合課設(shè)題目要求,因此,此作品達(dá)到老師所給要求,是成功的。6. 總結(jié)通過(guò)這段時(shí)間的辛苦努力,在老師和大家的幫助下,終于把這個(gè)課程設(shè)計(jì)題目完成了,也能夠滿足課設(shè)題目所定的要求,具有頻率顯示功能,并且能夠搜索到相應(yīng)范圍內(nèi)的頻率,采用數(shù)字控制,操作簡(jiǎn)單,攜帶方便。謝 辭 本論文設(shè)計(jì)在老師的悉心指導(dǎo)和嚴(yán)格要求下業(yè)已完成,從課題選擇到具體的寫(xiě)作過(guò)程,論文初稿與定稿無(wú)不凝聚著心血和汗水,在我的課程設(shè)計(jì)期間,老師為我提供了種種專業(yè)知識(shí)上的指導(dǎo)和一些富于創(chuàng)造性的建議,老師一絲不茍的作風(fēng),嚴(yán)謹(jǐn)求實(shí)的態(tài)度使我深受感動(dòng)
25、,沒(méi)有這樣的幫助和關(guān)懷和熏陶,我不會(huì)這么順利的完成課程設(shè)計(jì)。在此向老師表示深深的感謝和崇高的敬意!同時(shí),在論文寫(xiě)作過(guò)程中,我還參考了有關(guān)的書(shū)籍和論文,在這里一并向有關(guān)的作者表示謝意。我還要感謝同組的各位同學(xué)以及我的各位室友,在課程設(shè)計(jì)的這段時(shí)間里,你們給了我很多的啟發(fā),提出了很多寶貴的意見(jiàn),對(duì)于你們幫助和支持,在此我表示深深地感謝!參考文獻(xiàn)1 康華光. 電子技術(shù)基礎(chǔ)M.北京:高等教育出版,2006,68(3):4057.2 李強(qiáng). 51系列單片機(jī)應(yīng)用軟件編程技術(shù)M.北京:北京航空航天大學(xué),2009:7790.3 譚浩強(qiáng). C語(yǔ)言程序設(shè)計(jì)教程M.北京:高等教育出版社,1991:3032.4
26、160;樊昌信通信原理(第6版)M.北京:國(guó)防工業(yè)出版社,2006:20655 宋樹(shù)祥,周冬梅.高頻電子線路.M北京大學(xué)出版社,2007年2月 6 陳邦媛.射頻通信電子線路學(xué)習(xí)指導(dǎo).M科學(xué)出版社,2007年6月 7 吳慎山.高頻電子線路.M電子工業(yè)出版社,2007年1月 8 謝沅清.通信電子線路.M電子工業(yè)出版社,2007年7月 9 曾興雯.高頻電子線路.M高等教育出版社,2004年1月 10 楊翠娥.高頻實(shí)驗(yàn)與課程設(shè)計(jì).M哈爾濱工程大學(xué)出版社,2005年1月 1
27、1 于洪珍.通信電子線路.M清華大學(xué)出版社,2006年1月 12 陳利永.電子電路基礎(chǔ).M中國(guó)鐵道出版社,2006年7月 附 錄附錄一程序/*主程序*/#include "reg52.h"#include "intrins.h"#include "lcd.h"#include "IIC.h"#include "delay.h"sbit K1 = P21;sbit K2 = P22;sbit K3 = P23;sbit K4 = P24; unsigned
28、long frequency;/ RDA5807 寄存器unsigned char RDA_reg_data8 = 0xd0,0x00, / 02H 0x00,0x00, / 03H 0x00,0x40, / 04H 0x90,0x88, / 05H;unsigned char code cdis1 = "XiaoDU's RADIO "unsigned char code cdis2 = "FM VOL "char code reserve3_at_ 0x3b; /保留0x3b開(kāi)始的3個(gè)字節(jié)/* 連續(xù)寫(xiě)寄存器子函數(shù)*/void RDA5807_
29、write_reg(void) uchar i; I2C_start(); / 收音模塊寫(xiě)入操作 I2C_write_byte(0x20); / 寄存器連續(xù)寫(xiě)操作 for(i=0; i<8; i+) I2C_write_byte(RDA_reg_datai); I2C_stop();/* 連續(xù)讀寄存器子函數(shù)*/void RDA5807_read_reg(uchar *reg_buf) I2C_start(); / 收音模塊讀取操作 I2C_write_byte(0x21); / 寄存器連續(xù)讀操作 reg_buf0 = I2C_read_byte(I2C_ACK); reg_buf1 =
30、I2C_read_byte(I2C_ACK); reg_buf2 = I2C_read_byte(I2C_ACK); reg_buf3 = I2C_read_byte(I2C_NACK); I2C_stop();/* 模塊上電初始化子函數(shù)*/void RDA5807_power(void) delayms(50); / 發(fā)送軟件復(fù)位指令 RDA_reg_data0 = 0x00; RDA_reg_data1 = 0x02; RDA5807_write_reg(); delayms(10); / 收音模塊默認(rèn)參數(shù) RDA_reg_data0 = 0xd0; RDA_reg_data1 = 0x0
31、1; RDA5807_write_reg();/* 功能描述:收音模塊自動(dòng)尋臺(tái)模式*/void RDA5807_FM_seek(void) uint chan; uchar reg_data4 = 0x00, 0x00, 0x00, 0x00; RDA_reg_data3 &= (1 << 4); /調(diào)諧禁用 / 內(nèi)部自動(dòng)尋臺(tái)使能 RDA_reg_data0 |= (1 << 0); /SEEK位置1 RDA5807_write_reg(); / 等待STC 標(biāo)志置位 while(0 = (reg_data0 & 0x40) delayms(20); /
32、 讀取內(nèi)部狀態(tài) RDA5807_read_reg(reg_data); / 獲取當(dāng)前工作頻點(diǎn) chan = reg_data0 & 0x03; chan = reg_data1 | (chan << 8); chan = chan << 6; / 保存當(dāng)前工作頻點(diǎn) RDA_reg_data2 = (chan >> 8) & 0xff; RDA_reg_data3 = (chan & 0xff);/* 頻率顯示子函數(shù)*/void show_frequency(void) unsigned char i,display5; unsigne
33、d int temp; temp = (RDA_reg_data2*256)+(RDA_reg_data3&0xc0); /計(jì)算 temp = temp>>6; frequency = (unsigned long)(100*temp+87000)/100; for(i=0; i<5; i+) / 清顯存單元 displayi = 0x00; display0 = (frequency)/1000 ; /數(shù)據(jù)轉(zhuǎn)換 display1 = (frequency%1000)/100; display2 = (frequency%100)/10; display3 = 0x2
34、e; /小數(shù)點(diǎn) display4 = (frequency%10); if(display0 = 0) display0 = display1+0x30; display1 = display2+0x30; display2 = display3; display3 = display4+0x30; display4 = 0x20; else display0 += 0x30; display1 += 0x30; display2 += 0x30; display4 += 0x30; lcd_pos_xy(3,2); /頻率顯示 lcd_wdat(display0); lcd_wdat(dis
35、play1); lcd_wdat(display2); lcd_wdat(display3); lcd_wdat(display4);/* 音量顯示子函數(shù)*/void show_volume() unsigned char temp,display2; temp = RDA_reg_data7 & 0x0f; /取音量值 display0 = temp/10; display1 = temp%10; if(display0 = 0) /如果高位為0 display0 = display1; /低位顯存內(nèi)容進(jìn)入高位顯存 display1 = 0x20; /低位不顯示 else displ
36、ay1 += 0x30; display0 += 0x30; lcd_pos_xy(13,2); /音量值顯示 lcd_wdat(display0); lcd_wdat(display1); void main(void) P0 = 0xff; P1 = 0xff; P2 = 0xff; lcd_init(); lcd_w_string(0,1,cdis1,0); lcd_w_string(0,2,cdis2,0); RDA5807_power(); while(1) if(K1 = 0) delayms(20); if(K1 = 0) RDA_reg_data0 |= (1 <<
37、 1); /SEEK UP RDA5807_FM_seek(); while(K1 = 0); if(K2 = 0) delayms(20); if(K2 = 0) RDA_reg_data0 &= (1 << 1); /SEEK DOWN RDA5807_FM_seek(); while(K2 = 0); if(K3 = 0) delayms(20); if(K3 = 0) if(RDA_reg_data7 & 0x0f) < 0x0f) RDA_reg_data0 = 0xd0; RDA_reg_data1 = 0x01; RDA_reg_data3 &a
38、mp;= (1 << 4); RDA_reg_data7+; / 音量遞增 RDA5807_write_reg(); while(K3 = 0); if(K4 = 0) delayms(20); if(K4 = 0) if(RDA_reg_data7 & 0x0f) > 0x00) RDA_reg_data0 = 0xd0; RDA_reg_data1 = 0x01; RDA_reg_data3 &= (1 << 4); RDA_reg_data7-; / 音量遞減 RDA5807_write_reg(); while(K4 = 0); show_
39、volume(); show_frequency();/*模塊子程序*lcd.c*/#include "reg52.h"#include "intrins.h"#include "lcd.h"#include "delay.h"#define uchar unsigned char#define uint unsigned int#define DATA P1sbit LCD_RS = P00; sbit LCD_RW = P01;sbit LCD_EN = P02;/* 檢查L(zhǎng)CD忙狀態(tài) lcd_busy為1時(shí),
40、忙,等待。lcd-busy為0時(shí),閑,可寫(xiě)指令與數(shù)據(jù)。*/ bit lcd_busy() bit result; LCD_RS = 0; LCD_RW = 1; LCD_EN = 1; delay (); result = (bit)(DATA &0x80); LCD_EN = 0; return(result); /* 寫(xiě)指令數(shù)據(jù)到LCD RS=L,RW=L,E=高脈沖,D0-D7=指令碼。 Check=1,進(jìn)行忙檢測(cè)。*/void lcd_wcmd(uchar cmd, bit Check) if(Check)while(lcd_busy(); LCD_RS = 0; LCD_RW
41、 = 0; LCD_EN = 0; delay (); DATA = cmd; delay (); LCD_EN = 1; delay (); LCD_EN = 0;void lcd_wdat(uchar dat) while(lcd_busy(); /進(jìn)行忙檢測(cè) LCD_RS = 1; LCD_RW = 0; LCD_EN = 0; DATA = dat; delay (); LCD_EN = 1; delay (); LCD_EN = 0;/* LCD初始化設(shè)定*/void lcd_init() delayms(50); lcd_wcmd(0x38,0); /16*2顯示,5*7點(diǎn)陣,8位
42、數(shù)據(jù) delayms(5); lcd_wcmd(0x38,0); /不進(jìn)行忙檢測(cè),強(qiáng)制執(zhí)行。 delayms(5); lcd_wcmd(0x38,0); delayms(5);lcd_wcmd(0x38,1); /進(jìn)行忙檢測(cè) delayms(5); lcd_wcmd(0x0c,1); /顯示開(kāi),關(guān)光標(biāo) delayms(5); lcd_wcmd(0x06,1); /移動(dòng)光標(biāo) delayms(5); lcd_wcmd(0x01,1); /清除LCD的顯示內(nèi)容 delayms(5);/* 設(shè)定顯示位置*/void lcd_pos_xy(uchar pos_x,uchar pos_y) uchar pos_temp; pos_temp=pos_x & 0x0f; pos_y &= 0x0f; if(pos_y=0x01) pos_temp |= 0x80; else if(pos_y=
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 福建生物工程職業(yè)技術(shù)學(xué)院《傳播倫理與法規(guī)》2023-2024學(xué)年第二學(xué)期期末試卷
- 甘肅財(cái)貿(mào)職業(yè)學(xué)院《Python程序設(shè)計(jì)實(shí)驗(yàn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 云南醫(yī)藥健康職業(yè)學(xué)院《組織戰(zhàn)略與行為學(xué)》2023-2024學(xué)年第二學(xué)期期末試卷
- 山西醫(yī)科大學(xué)晉祠學(xué)院《電路分析基礎(chǔ)實(shí)驗(yàn)》2023-2024學(xué)年第二學(xué)期期末試卷
- 北??叼B(yǎng)職業(yè)學(xué)院《舞臺(tái)表演基礎(chǔ)》2023-2024學(xué)年第二學(xué)期期末試卷
- 2024年汽車(chē)座套項(xiàng)目資金需求報(bào)告代可行性研究報(bào)告
- 糖尿病飲食健康教育
- 2025年貴州六枝經(jīng)濟(jì)開(kāi)發(fā)區(qū)溢鑫投資開(kāi)發(fā)有限公司招聘筆試參考題庫(kù)含答案解析
- 2025年云南玉溪市市政開(kāi)發(fā)建設(shè)有限公司招聘筆試參考題庫(kù)附帶答案詳解
- 2025年安徽省六安東城經(jīng)濟(jì)建設(shè)有限公司招聘筆試參考題庫(kù)附帶答案詳解
- 珍貴新品質(zhì)管理手法介紹(工序保證能力PAC-V篇)150413
- 《老年康復(fù)學(xué)》課程考試復(fù)習(xí)題庫(kù)(含答案)
- 混凝土采購(gòu)結(jié)算單
- 先秦兩漢文學(xué)課件
- GB/T 42611-2023非公路用旅游觀光車(chē)輛制動(dòng)性能試驗(yàn)方法
- 質(zhì)檢部各崗位職責(zé)、日常管理規(guī)定及質(zhì)量工作流程
- 一艾到底艾灸知識(shí)競(jìng)賽100題
- 鐵路行車(chē)組織基礎(chǔ)智慧樹(shù)知到答案章節(jié)測(cè)試2023年西安交通工程學(xué)院
- 訂餐預(yù)定登記表模板
- 金融基礎(chǔ)高教課件 通貨膨脹與通貨緊縮
- 安全與文明施工監(jiān)理專項(xiàng)監(jiān)理細(xì)則
評(píng)論
0/150
提交評(píng)論