基于.單片機(jī)的數(shù)字FM收音機(jī)設(shè)計(jì)_第1頁(yè)
基于.單片機(jī)的數(shù)字FM收音機(jī)設(shè)計(jì)_第2頁(yè)
基于.單片機(jī)的數(shù)字FM收音機(jī)設(shè)計(jì)_第3頁(yè)
基于.單片機(jī)的數(shù)字FM收音機(jī)設(shè)計(jì)_第4頁(yè)
基于.單片機(jī)的數(shù)字FM收音機(jī)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩26頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

...wd......wd......wd...題目:基于單片機(jī)的數(shù)字FM收音機(jī)設(shè)計(jì)Title:DigitalFMradioDesigningbasedonMCU姓 名:XXX學(xué)號(hào):XXXXXXXX學(xué)院:機(jī)械與電子工程學(xué)院指導(dǎo)教師:XXX摘要現(xiàn)在人們常使用的收音機(jī)為手動(dòng)調(diào)頻收臺(tái),使用較為麻煩,而且由于接收靈敏度不高,所接收的頻段較窄。TEA5767具有高性能的RFAGC電路,其接收靈敏度高、參考頻率選擇靈活、可實(shí)現(xiàn)自動(dòng)搜臺(tái)。本課題采用STC89C52單片機(jī)和TEA5767為核心器件,用I2C通信方式聯(lián)接單片機(jī)與TEA5767,實(shí)現(xiàn)數(shù)字FM收音機(jī)系統(tǒng)。通過(guò)編寫(xiě)軟件利用單片機(jī)控制TEA5767實(shí)現(xiàn)手動(dòng)活自動(dòng)調(diào)頻,收到的信號(hào)通過(guò)TAD2822功放器件放大后,再用揚(yáng)聲器輸出信號(hào)。在調(diào)頻的過(guò)程中可以通過(guò)LCD1602液晶顯示屏來(lái)隨時(shí)查看信號(hào)的頻率。關(guān)鍵詞:數(shù)字調(diào)頻;STC89C52;TEA5767;TDA2030ABSTRACTNowadayspeopleusuallyusetheradioformanualFMaccept,itismuchtrouble,andbecausetherxsensitivityisnothigh,thefrequencybandreceivedisverynarrow。TEA5767hashigh-performanceRFAGCcircuit,highsensitivityreceiving,referencefrequencyselectionflexibleanditcanbetherealizationofautomaticsearchplatform。SointhisdesigningIwillusetheSTC89C52single-chipmicrocomputerandTEA5767asthecorecomponentsofdigitalFMradiosystemandUsetheI2CcommunicationtoconnectbetweenSTC89C52andTEA5767chip。ThroughthesoftwarewrittenandusingsinglechipcomputercontrolTEA5767achievemanuallylivetobeautomaticFM,receivedsignalthroughtheTAD2030amplifieramplificationdevice,thenusethespeakeroutputthesignal。IntheprocessofFMthefrequencyofthesignalcanbecheckedbyLCD1602。Keywords:DigitalFM;STC89C52;TEA5767;TAD2030TOC\o"1-3"\h\u目錄25862緒論4201201基于單片機(jī)的FM收音機(jī)工作原理5244121.1FM收音機(jī)的基本工作原理 567391.2數(shù)字調(diào)節(jié)FM收音機(jī)的工作原理 5247261.3用單片機(jī)完成數(shù)字調(diào)節(jié)的FM收音機(jī)的功能設(shè)計(jì) 6111442硬件電路設(shè)計(jì)7102262.1硬件組成 7142442.1.1數(shù)字FM收音機(jī)系統(tǒng)控制中心單片機(jī) 7255142.1.3PT2257音量模塊 9205992.1.4FM收音模塊 10288972.2FM電路及其設(shè)計(jì) 13283852.3單片機(jī)控制與顯示電路 14235782.4供電電路與放大電路 1540803軟件設(shè)計(jì)16118693.1鍵盤(pán)與顯示函數(shù)設(shè)計(jì) 17245693.1.1LCD液晶顯示函數(shù) 17134193.1.2鍵盤(pán)讀鍵子程序: 1829313.2數(shù)字調(diào)節(jié)與收音控制程序設(shè)計(jì) 1963253.2.1EA5767HN讀寫(xiě)存放器 19193483.2.4收音模塊的初始化2411763結(jié)論2713580致謝2730608參考文獻(xiàn)2816714附錄299790附錄一主程序 293882附錄二TEA5767讀寫(xiě)子程序 3212918附錄三按鍵子程序 37緒論雖然手機(jī)、計(jì)算機(jī)、電視等各種電子娛樂(lè)設(shè)施已經(jīng)越來(lái)越普遍,但是收音機(jī)在豐富的娛樂(lè)媒介中仍然占有重要地位。隨著消費(fèi)類(lèi)電子的興起和繁榮以及數(shù)字電子技術(shù)的開(kāi)展,收音機(jī)逐漸數(shù)字化,集成化,而且成本越來(lái)越低,這使得在各種設(shè)備中嵌入收音機(jī)的現(xiàn)象更加普遍。廣闊從事消費(fèi)類(lèi)電子設(shè)計(jì)的廠商都不忘在諸如MP3、智慧手機(jī)、便攜式Video播放器等產(chǎn)品中嵌入FM局部。TEA5767系列單片數(shù)字元收音機(jī)就被廣泛地應(yīng)用在各類(lèi)電子產(chǎn)品中。利用TEA5767設(shè)計(jì)數(shù)字FM收音機(jī)與傳統(tǒng)的超外差式收音機(jī)的調(diào)諧方式不太一樣,傳統(tǒng)的超外差式收音機(jī)的固定頻率為10.7MZ,而TEA5767系列數(shù)字元收音機(jī)的固定中頻為225KHz,由于固定中頻不同,鎖相環(huán)系統(tǒng)的軟件控制就有很大的差異,這就給廣闊芯片應(yīng)用設(shè)計(jì)者帶來(lái)一定的難度。本設(shè)計(jì)將采用宏晶STC89C52芯片來(lái)控制Philips公司的TEA5767收音模塊,從而做成一個(gè)數(shù)位收音機(jī)。該收音機(jī),具有抗干擾能力強(qiáng)、體積小、方便攜帶、調(diào)頻范圍寬等優(yōu)點(diǎn)。1基于單片機(jī)的FM收音機(jī)工作原理1.1FM收音機(jī)的基本工作原理FM收音機(jī)由輸入回路、高放回路、本振回路、混頻回路、中放回路、鑒頻回路和音頻功率放大器組成。如圖1-1所示。調(diào)頻的接收天線以耳機(jī)的地線替代,也可直接插上配給的天線ANT,二者工作原理一樣。調(diào)頻播送的高頻信號(hào)輸入回路直接經(jīng)電容C、L組成的LC振蕩回路,實(shí)際上構(gòu)成一帶通濾波器,其通頻帶為88MHz—108MHz。在集成塊內(nèi)部承受的調(diào)頻信號(hào)經(jīng)過(guò)高頻放大,諧振放大。被放大的信號(hào)與本地振蕩器產(chǎn)生的本振信號(hào)在內(nèi)部進(jìn)展FM混頻,混頻后輸出。圖1-1

FM收音機(jī)原理框圖FM混頻信號(hào)由FM中頻回路進(jìn)展選擇,提取以中頻10.7MHz為載波的調(diào)頻波。該中頻選擇回路由10.7MHz濾波器構(gòu)成。中頻調(diào)制波經(jīng)中放電路進(jìn)展中頻放大,然后進(jìn)展鑒頻得到音頻信號(hào),經(jīng)功率放大輸出,耦合到揚(yáng)聲器,復(fù)原為聲音。此外,因在調(diào)頻波段未收到電臺(tái)信號(hào)時(shí),內(nèi)部增益處于失控而產(chǎn)生的噪聲很大。為此,通過(guò)檢出無(wú)信號(hào)時(shí)的控制電平,控制靜噪電路工作,使音頻放大器處于微放大狀態(tài),從而到達(dá)靜噪功能。1.2數(shù)字調(diào)節(jié)FM收音機(jī)的工作原理此設(shè)計(jì)的基本原理與上述傳統(tǒng)收音機(jī)的原理相似,在此不再累述。主要組成局部有單片機(jī)、存儲(chǔ)器、功放、收音芯片。此處介紹不同之處。此方案通過(guò)單片機(jī)根據(jù)鍵盤(pán)輸入,通過(guò)I2C對(duì)TEA5767模塊的控制存放器進(jìn)展讀寫(xiě)操作,以實(shí)現(xiàn)TEA5767模塊的自動(dòng)手動(dòng)搜索功能,音頻信號(hào)經(jīng)過(guò)由TDA2822構(gòu)成的功放電路放大處理由揚(yáng)聲器輸出。并將從TEA5767模塊中讀取的頻率字換算后顯示在LCD上。按存儲(chǔ)鍵時(shí),單片機(jī)將頻率字寫(xiě)入24c02實(shí)現(xiàn)存臺(tái)功能,按讀取鍵即可收聽(tīng)所存電臺(tái)。1.3用單片機(jī)完成數(shù)字調(diào)節(jié)的FM收音機(jī)的功能設(shè)計(jì)該設(shè)計(jì)分為兩局部:硬件電路和程序。硬件電路包括控制模塊、FM調(diào)頻模塊、電源供電模塊和接收模塊四局部。主控制器采用的是單片機(jī)STC89C52,調(diào)頻模塊采用的是TEA5767芯片,電源供電模塊可采用電池直接供電或通過(guò)變壓設(shè)備得到要求的電源。本設(shè)計(jì)采用模塊化設(shè)計(jì),整個(gè)系統(tǒng)由、控制模塊、TEA576模塊、音量控制模塊和功放模塊顯示模塊組成,系統(tǒng)的整體方案框圖如圖1-2圖1-2系統(tǒng)框圖從圖1-2中可以看出,控制模塊僅僅通過(guò)I2C總線與收音模塊連接并控制收音機(jī)工作。本設(shè)計(jì)使用單片機(jī)P3口的兩個(gè)I/O腳來(lái)模擬I2C總線的SDA和SCL時(shí)序并與TEA5767通信;TEA5767輸出的左右聲道音頻信號(hào)可通過(guò)音量控制模塊進(jìn)展前級(jí)放大及音量控制,然后輸入到TDA7057進(jìn)展后級(jí)功率放大,最后輸出到揚(yáng)聲器。單片機(jī)可通過(guò)I2C總線進(jìn)展音量調(diào)節(jié);ROM存儲(chǔ)模塊主要用于存儲(chǔ)電臺(tái)數(shù)據(jù)、音量數(shù)據(jù)和時(shí)鐘數(shù)據(jù),為存儲(chǔ)和讀取數(shù)據(jù)帶來(lái)方便。系統(tǒng)可通過(guò)按鍵進(jìn)展操作,通過(guò)MCU檢測(cè)按鍵信號(hào)并經(jīng)單片機(jī)實(shí)現(xiàn)手動(dòng)搜臺(tái)、自動(dòng)搜臺(tái)、音量控制、時(shí)鐘調(diào)整等功能,各項(xiàng)操作提示和操作結(jié)果均可通過(guò)LCD顯示出來(lái)。穩(wěn)壓電源模塊產(chǎn)生的5V和3.3V電壓可分別為各個(gè)模塊器件供電。2硬件電路設(shè)計(jì)2.1硬件組成基于單片機(jī)的數(shù)字FM收音機(jī)需要用到的主要硬件設(shè)施有STC89C52單片機(jī)、TDA2030功放芯片、PT2257音量模塊、TEA5767FM收音模塊,各個(gè)硬件之間互相連接后,組成整個(gè)收音機(jī)的硬件系統(tǒng)。2.1.1數(shù)字FM收音機(jī)系統(tǒng)控制中心單片機(jī)在本設(shè)計(jì)中,需要選用單片機(jī)作為整個(gè)系統(tǒng)的控制中心,由于對(duì)單片機(jī)的要求不高,可以選用普通的51系列單片機(jī)。考慮到引腳數(shù)量和經(jīng)濟(jì)實(shí)惠等諸多因素,此設(shè)計(jì)將采用STC89C52芯片,STC89C52是一種低功耗、高性能CMOS8位微控制器,具有8K在系統(tǒng)可編程Flash存儲(chǔ)器。在單芯片上,擁有靈巧的8位CPU和在系統(tǒng)可編程Flash,具有以下標(biāo)準(zhǔn)功能:8k字節(jié)Flash,512字節(jié)RAM,32位I/O口線,看門(mén)狗定時(shí)器,內(nèi)置4KBEEPROM,MAX810復(fù)位電路,三個(gè)16位定時(shí)器/計(jì)數(shù)器,一個(gè)6向量2級(jí)中斷構(gòu)造,全雙工串行口。另外STC89X52可降至0Hz靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式??臻e模式下,CPU停頓工作,允許RAM、定時(shí)器/計(jì)數(shù)器、串口、中斷繼續(xù)工作。外形圖和引腳圖如圖2-1所示圖2-1STC89C52單片機(jī)外形圖及引腳圖STC89C52在本設(shè)計(jì)中發(fā)揮著至關(guān)重要的作用,它是這個(gè)系統(tǒng)的控制核心。STC89C52與外圍的硬件相連,向FM收音模塊發(fā)出指令,決定自動(dòng)搜索或手動(dòng)搜索模式。再通過(guò)讀按鍵的方式判斷外圍電路的指令,該指令經(jīng)過(guò)單片機(jī)分析后直接向收音模塊發(fā)出信號(hào),收音模塊在收到信號(hào)后,響應(yīng)外圍電路的指令,調(diào)整收音的頻道。收音的頻道經(jīng)過(guò)單片機(jī)的處理之后,將所搜索到的頻率顯示在LCD1602液晶顯示屏上。2.1.2收音功放芯片TDA2030收音機(jī)系統(tǒng)直接接收到的信號(hào)一般都比較微弱,因此需要用通過(guò)功率放大器把信放大之后在用揚(yáng)聲器輸出。這個(gè)環(huán)節(jié)需要選用一個(gè)體積小、輸出功率大、失真小的音頻功放芯片。德律風(fēng)根生產(chǎn)的TDA2030采用V型5腳單列直插式塑料封裝構(gòu)造。按引腳的形狀引可分為H型和V型。該集成電路廣泛應(yīng)用于汽車(chē)立體聲收錄音機(jī)、中功率音響設(shè)備,具有內(nèi)部保護(hù)電路。具體外形如圖2-2,引腳功能如表2-1,具體參數(shù)如表2-2圖2-2TDA2030外形圖表2-1TDA2030功能引腳引腳功能1正向輸入端2反向輸入端3負(fù)電源輸入端4功率輸出端5正電源輸入端表2-2TDA2030主要參數(shù)表A2030極限參數(shù)參數(shù)名稱極限值單位電源電壓〔Vs〕±18V輸入電壓〔Vin〕VsV差分輸入電壓〔Vdi〕±15V峰值輸出電流〔Io〕3.5A耗散功率〔Ptot〕〔Vdi〕20V工作結(jié)溫〔Tj〕-40±150℃存儲(chǔ)結(jié)溫〔Tstg〕-40±150℃2.1.3PT2257音量模塊在收音系統(tǒng)中還需要一個(gè)芯片來(lái)控制收音機(jī)輸出的音量,PT22257是由CMOS技術(shù)制造而成的2聲道音量控制IC,只有8個(gè)腳位,采用I2C控制界面,具備0~-79dB的衰減范圍,低噪聲,高立體別離度及使用極少的周邊原件。內(nèi)部連接圖2-3和外觀圖分別如圖2-4圖2-3PT2257內(nèi)部電路圖圖2-4PT2257外觀圖表2-3PT2257引腳引腳名稱I/O表達(dá)引腳編號(hào)LINI左聲道輸入,需加一交連電容后連接至訊源1LOUTO左聲道輸出,需加一交連電容后連接至輸出端2Vss-地線3SDAII2C介面DATA輸入腳位4SCLII2C介面CLOCK輸入腳位5VDD-正電源輸入端6ROUTO右聲道輸出,需加一交連電容后連接至輸出端7RINI右聲道輸入,需加一交連電容后連接至訊源82.1.4FM收音模塊FM模塊的控核心芯片采用飛利浦公司的TEA5767數(shù)字立體聲FM芯片,該芯片把所有的FM功能都集成到一個(gè)缺乏6*6平方米的用HVQFN40封裝的小方塊中。芯片工作電壓2.5V~5.0V,典型值是3V;RF接收頻率范圍是76~108MHz,(最強(qiáng)信號(hào)+噪聲)/噪聲的值在60dB左右,失真度在0.4%左右;雙聲道音頻輸出的電壓在60~90mV左右,帶寬為22.5KHz。芯片的引腳分布及其引腳定義分別見(jiàn)圖2-3和表2-3。圖2-3TEA5767芯片引腳分布表2-3引腳定義管腳定義管腳定義1空腳21空腳2鎖相環(huán)輸出22左聲道輸出3本振23右聲道輸出4本振24軟靜音時(shí)間常數(shù)5本振電源25檢波輸出6數(shù)字地26基準(zhǔn)7數(shù)字電源27中頻中心頻率調(diào)整時(shí)間常數(shù)8數(shù)據(jù)線28中頻限幅器退藕19時(shí)鐘線29中頻限幅退藕210空腳30空腳11三線讀寫(xiě)控制31空腳12總線模式選擇32增益控制13總線使能端33模擬地14軟口134模擬電源15軟口235射頻輸入116晶振36高頻地17晶振37射頻輸入218相位濾波38高放AGC時(shí)間常數(shù)19導(dǎo)頻低通濾波39鎖相環(huán)開(kāi)關(guān)輸出20空腳40空腳該芯片具有以下優(yōu)點(diǎn):〔1〕集成高靈敏度的低噪聲放大器;〔2〕內(nèi)置的FM解調(diào)器可以省去外部鑒頻器,并且FM的中頻選擇性可在芯片內(nèi)部完成;〔3〕可以采用32.768KHz或13MHz的振蕩器產(chǎn)生參考時(shí)鐘或可以直接輸入6.5MHz的時(shí)鐘信號(hào);〔4〕可以通過(guò)I2C或三線串行總線來(lái)獲取中頻計(jì)數(shù)器值或接收的高頻信號(hào)電平,以便進(jìn)展自動(dòng)調(diào)諧功能〔5〕射頻具有自動(dòng)增益控制功能,并且LC調(diào)諧振蕩器只需固定片裝電感。其基本工作原理分析:〔1〕天線輸入電路:RFANT天線經(jīng)過(guò)C1耦合送入LI、C2、C4組成的RF帶通濾波器〔87.6MHz~108MHz和76MHz~87.5MHz〕送入TEA5767的35、37腳,通過(guò)TEA5767內(nèi)部高通放大。模擬電源由FM3V3經(jīng)過(guò)R1限流C5濾波后送入TEA5767的34腳?!?〕可調(diào)式LC諧振回路:2、3、4腳接內(nèi)部VCO,外接變?nèi)荻O管D1、D2。2腳為調(diào)諧電壓輸出,自動(dòng)搜索時(shí)電壓在1V內(nèi)變化。VCO供電由FM3V3經(jīng)過(guò)R4限流C13濾波送如TEA5767的第5腳。〔3〕I2C控制總線:內(nèi)置I2C接口,通過(guò)TEA5767的8、9腳控制,CPU通過(guò)I2C對(duì)其進(jìn)展搜臺(tái)、選臺(tái)操作。數(shù)字電源由FM3V3經(jīng)過(guò)R7限流C19濾波送如TEA5767的第7腳?!?〕CO震蕩電路:CO震蕩電路主要由XT1〔32.768〕、C14送入TEA5767的17腳輸入,再?gòu)?8腳輸出到C15,產(chǎn)生32.768的基本時(shí)鐘。〔5〕音頻輸出電路:經(jīng)過(guò)TEA5767處理后的模擬音頻信號(hào)從23〔右聲道〕、22〔左聲道〕輸出到后級(jí)功放電路放大。原理框圖如圖2-4圖2-4原理框圖2.2FM電路及其設(shè)計(jì)FM接收電路是系統(tǒng)硬件電路中的核心局部之一,本硬件系統(tǒng)采用單芯片TEA5767HN模塊作為FM接收電路的核心元器件。Philips公司提供的TEA5767HN模塊芯片為低電壓、低功耗和低價(jià)位的全集成單芯片立體聲無(wú)線電產(chǎn)品,它只需要極少的外圍元件,并且基本上不需要外部對(duì)高頻信號(hào)的手動(dòng)調(diào)準(zhǔn)。另外,其頻帶范圍較寬,可以完全免費(fèi)調(diào)到歐洲、美國(guó)和日本的調(diào)頻波段。其模塊應(yīng)用接線圖如圖2-5所示。圖2-5FM模塊應(yīng)用接線圖圖2-5中VCC接3.3V的電源,并通過(guò)磁珠及電容器件進(jìn)展干擾抑制,注意磁珠FB應(yīng)選用特征頻率為100MHz,直流電阻的貼片元件,這樣有利于對(duì)高頻噪聲進(jìn)展抑制但同時(shí)又不是系統(tǒng)產(chǎn)生過(guò)多的直流損耗22uF的電容最好選用鉭電容,2個(gè)0.1uF的電容可選用介電常數(shù)高、高頻性能好的陶瓷電容,這樣就保證了整個(gè)FMModule的電源系統(tǒng)的穩(wěn)定。BUS-MODE是用來(lái)選擇CPU與FMModule,串口通信的方式,為I2C的通信方式DATA和CLK即為I2C通信的數(shù)據(jù)線和時(shí)鐘線,系統(tǒng)的CPU通過(guò)I2C接口即可對(duì)FMModule進(jìn)展控制。W/READ在該系統(tǒng)沒(méi)有使用,此時(shí)FMModule通過(guò)W/READ,CLK,DATA與系統(tǒng)的CPU實(shí)現(xiàn)三線方式串行通信。BUS-ENABLE為總線使能信號(hào),當(dāng)BUS-ENABLE為邏輯低時(shí)使FMModule進(jìn)入省電模式,該系統(tǒng)中把其直接拉高,是因?yàn)镕MModule可以通過(guò)I2C接口控制其進(jìn)入省電模式。FM_ANT為FMModule的天線接口即射頻信號(hào)輸入腳,目前在此類(lèi)消費(fèi)電子產(chǎn)品中,天線大多采用耳機(jī)線代替,該產(chǎn)品也不例外,上圖中的J3即為立體聲耳機(jī)接口。耳機(jī)左右聲道信號(hào)線上感應(yīng)到的毫伏級(jí)的FM信號(hào)即可通過(guò)J3腳的腳③進(jìn)入到FMNodule中。當(dāng)然這么小的信號(hào)不會(huì)對(duì)耳機(jī)上的音質(zhì)有什么影響,而且由于有上圖中的3個(gè)0.22uH空心電感的隔離作用,F(xiàn)M的信號(hào)可以損耗很小的地被FMModule接收。值得注意的是3個(gè)空心電感應(yīng)該在電路板上緊靠耳機(jī)接口放置以增加接收的靈敏度,并且電感的直流阻抗應(yīng)盡量小,這樣可以減少音頻的功率損耗。3個(gè)電感的選用考慮到空心構(gòu)造的、可能外形尺寸比較大,不太適宜于便攜式產(chǎn)品的應(yīng)用,可以選用陶瓷支架的電感。盡量不要選用非線性比較大的鐵氧支架電感,因?yàn)檫@有可能影響耳機(jī)的音質(zhì)。2.3單片機(jī)控制與顯示電路微控制器局部以STC89C52為核心,包括復(fù)位電路,晶振電路和按鍵控制電路,特別注意的是電源輸入要加上去藕電容,電路原理圖見(jiàn)圖2-6圖2-6單片機(jī)控制電路顯示電路采用LCD1602為主器件,具體電路如圖2-7圖2-7LCD1602顯示電路2.4供電電路與放大電路供電電路直接輸入DC9V,經(jīng)過(guò)ASM1117-5V進(jìn)展5V穩(wěn)壓輸出。模塊3.3V電源由ASM1117-3.3直接提供。如圖2-8圖2-8供電電路放大電路如圖2-9該電路工功能是放大收音機(jī)收到的信號(hào)圖2-9放大電路3軟件設(shè)計(jì)基于STC89C52的單片機(jī)控制平臺(tái)的TEA5767數(shù)字收音機(jī)的軟件設(shè)計(jì)主要包括六個(gè)局部:I2C總線通信協(xié)議、TEA5767HN收音模塊控制、PT2257音量控制、AT24C02存儲(chǔ)模塊控制、鍵盤(pán)掃描及狀態(tài)顯示。本文的軟件系統(tǒng)設(shè)計(jì)應(yīng)當(dāng)著重分析TEA5767HN收音模塊控制、PT2257音量模塊這兩局部的工作原理以及編程思路。

本系統(tǒng)程序使用C語(yǔ)言編寫(xiě),主程序由啟動(dòng)、初始化、鍵盤(pán)掃描、按鍵處理、液晶顯示等5大模塊組成。其中系統(tǒng)初始化包括STC89C52的初始化、TEA5767HN的初始化和LCD的初始化;按鍵處理通過(guò)調(diào)用函數(shù)的方法實(shí)現(xiàn)按鍵復(fù)用功能,可實(shí)現(xiàn)手動(dòng)搜臺(tái)、自動(dòng)搜臺(tái)、音量控制、時(shí)間調(diào)整、鬧鐘調(diào)整等操作;顯示模塊可顯示系統(tǒng)的各個(gè)工作狀態(tài)。3.1鍵盤(pán)與顯示函數(shù)設(shè)計(jì)3.1.1LCD液晶顯示函數(shù)液晶顯示模塊是一個(gè)慢顯示器件,所以在執(zhí)行每條指令之前一定要確認(rèn)模塊的忙標(biāo)志位低電平,表示不忙,否那么指令失效。要顯示字符時(shí)要先輸入顯示字符地址,也就是告訴模塊哪里顯示字符,圖3-1是1602的內(nèi)部顯示地址 圖3-1LCD1602內(nèi)部地址LCD1602初始化指令:延時(shí)15mS寫(xiě)指令38H〔不檢測(cè)忙信號(hào)〕延時(shí)5mS寫(xiě)指令38H〔不檢測(cè)忙信號(hào)〕延時(shí)5mS寫(xiě)指令38H〔不檢測(cè)忙信號(hào)〕以后每次寫(xiě)指令和讀/寫(xiě)數(shù)據(jù)操作均需要檢測(cè)忙信號(hào)寫(xiě)指令38H:顯示模式設(shè)置寫(xiě)指令08H:顯示關(guān)閉寫(xiě)指令01H:顯示清零寫(xiě)指令06H:顯示光標(biāo)移動(dòng)設(shè)置寫(xiě)指令0CH:顯示開(kāi)及光標(biāo)設(shè)置3.1.2鍵盤(pán)讀鍵子程序:圖3-2流程圖charreadkey(void){ chartemp,temp1,charkey; temp=p3;delay(100);if((temp1=p3)==temp){ temp=temp&0x0f; switch(temp) { case0x0e:key=1;break; case 0x0d:key=2;break; case0x0b:key=3;break; case0x07:key=4;break; default;key=0;}}returnkey;} 3.2數(shù)字調(diào)節(jié)與收音控制程序設(shè)計(jì)3.2.1EA5767HN讀寫(xiě)存放器吃透芯片的存放器是編好程序的關(guān)鍵TEA5767HN有5個(gè)寫(xiě)存放器和5個(gè)讀存放器,每個(gè)存放器可存儲(chǔ)8位數(shù)據(jù)。寫(xiě)存放器可以存儲(chǔ)控制信息,包括軟件靜音、模式選擇、PLL可編程計(jì)數(shù)器的設(shè)置、向上向下搜索模式選擇、靜左/右音頻、可編程端口的設(shè)置、待機(jī)節(jié)能模式、歐洲/日本頻段選擇、晶振頻率選擇、ADC門(mén)限設(shè)置、去加重設(shè)置等。

讀存放器可檢測(cè)接收電路狀態(tài),反響控制信息,包括搜索到有效電臺(tái)標(biāo)志位、搜索到有效電臺(tái)后PLL可編程計(jì)數(shù)器的狀態(tài)、4bADC的輸出、以及7bIF中頻輸出。下面就對(duì)芯片的存放器進(jìn)展詳細(xì)說(shuō)明?!?〕芯片存放器地址的格式如下:表3-1芯片存放器地址格式R/W=0為讀模式;R/W=1為寫(xiě)模式〔2〕寫(xiě)模式下5個(gè)數(shù)據(jù)字節(jié)的格式及各位的描述。=1\*GB3①數(shù)據(jù)字節(jié)1a〕字節(jié)格式表3-2數(shù)據(jù)字節(jié)1字節(jié)格式位7〔高位〕位6位5位4位3位2位1位0〔低位〕MUTESMPLL13PLL12PLL1PLL10PLL9PLL8b〕位描述表3-3數(shù)據(jù)字節(jié)1位描述位號(hào)符號(hào)描述7MUTE如果MUTE=1那么左右聲道被靜音MUTE=0左右聲道正常工作。6SM如果SM=1,那么處于搜索模式;SM=0,不處于搜索模式。5到0PLL[13:8]設(shè)定用于搜索和預(yù)設(shè)的可編程頻率合成器。=2\*GB3②數(shù)據(jù)字節(jié)2a〕字節(jié)格式表3-4數(shù)據(jù)字節(jié)2字節(jié)格式位7〔高位〕位6位5位4位3位2位1位0〔低位〕PLL7PLL6PLL5PLL4PLL3PLL2PLL1PLL0b〕位描述表3-5數(shù)據(jù)字節(jié)2位描述位號(hào)符號(hào)描述7到0PLL[7:0]設(shè)定用于搜索和預(yù)設(shè)的可編程頻率合成器。=3\*GB3③數(shù)據(jù)字節(jié)3a〕字節(jié)格式表3-6數(shù)據(jù)字節(jié)3字節(jié)格式位7〔高位〕位6位5位4位3位2位1位0〔低位〕SUDSSL1SSL0HLSIMSMLMRSWP1b〕位描述表3-7數(shù)據(jù)字節(jié)3位描述位號(hào)符號(hào)描述7SUDSUD=1,增加頻率搜索;SUD=0,減小頻率搜索。6和5SLL[1:0]搜索停頓標(biāo)準(zhǔn):見(jiàn)下表1。4HLSI高/低充電電流切換:HLSI=1,高充電電流;HLSI=0,低充電電流。3MS立體聲/單聲道:MS=1,單聲道;MS=0,立體聲。2ML左聲道靜音:ML=1,左聲道靜音并置立體聲,ML=0,左聲道正常。1MR右聲道靜音:MR=1,右聲道靜音并置立體聲,MR=0,右聲道正常。0SWP1軟件可編程端口1SWP1=1端口1高電平SWP1=0端口1低電平。注:搜索停頓標(biāo)準(zhǔn)設(shè)定表3-8搜索停頓標(biāo)準(zhǔn)SSL1SSL2搜索停頓標(biāo)準(zhǔn)00在搜索模式下制止01低:ADC輸出大小為510中:ADC輸出大小為711高:ADC輸出大小為10=4\*GB3④數(shù)據(jù)字節(jié)4a〕字節(jié)格式表3-9數(shù)據(jù)字節(jié)4字節(jié)格式位7〔高位〕位6位5位4位3位2位1位0〔低位〕SWP2STBYBLXALSMUTEHCCSNCSI=5\*GB3⑤數(shù)據(jù)字節(jié)5a〕字節(jié)格式表3-10數(shù)據(jù)字節(jié)5字節(jié)格式位7〔高位〕位6位5位4位3位2位1位0〔低位〕PLLREFDTCb〕位描述表3-11數(shù)據(jù)字節(jié)5位描述位號(hào)符號(hào)描述7PLLREF假設(shè)PLLREF=1,6.5Mz的鎖相環(huán)參考頻率啟用;假設(shè)PLLREF=0,6.5Mz的鎖相環(huán)參考頻率關(guān)閉。6DTC假設(shè)DTC=1,去加重時(shí)間常數(shù)為75us;假設(shè)DTC=0,去加重時(shí)間常數(shù)為50us。5到0未用,狀態(tài)不必考慮?!?〕寫(xiě)模式下5個(gè)數(shù)據(jù)字節(jié)的格式及各位的描述。=1\*GB3①數(shù)據(jù)字節(jié)1a〕字節(jié)格式表3-12數(shù)據(jù)字節(jié)1字節(jié)格式位7〔高位〕位6位5位4位3位2位1位0〔低位〕RFBLFPLL13PLL12PLL1PLL10PLL9PLL8b〕位描述表3-14位描述位號(hào)符號(hào)描述7RF準(zhǔn)備好標(biāo)志RF=一個(gè)頻道被搜到或者一個(gè)制式已經(jīng)符合RF=,沒(méi)有頻道被搜到。6BLF波段制式:BLF=1,一個(gè)制式已經(jīng)符合;BLF=0,沒(méi)有制式已經(jīng)符合。5到0PLL[13:8]用于搜索和預(yù)設(shè)后的可編程頻率合成器設(shè)定結(jié)果。=2\*GB3②數(shù)據(jù)字節(jié)2a〕字節(jié)格式表3-15數(shù)據(jù)字節(jié)1位描述位7〔高位〕位6位5位4位3位2位1位0〔低位〕PLL7PLL6PLL5PLL4PLL3PLL2PLL1PLL0b〕位描述表3-16數(shù)據(jù)字節(jié)2位描述位號(hào)符號(hào)描述7到0PLL[7:0]設(shè)定用于搜索和預(yù)設(shè)后的可編程頻率合成器設(shè)定結(jié)果。位7〔高位〕位6位5位4位3位2位1位0〔低位〕STEREOIF6IF5IF4IF3IF2IF1IF0=3\*GB3③數(shù)據(jù)字節(jié)3a〕字節(jié)格式表3-17數(shù)據(jù)字節(jié)3字節(jié)格式位7〔高位〕位6位5位4位3位2位1位0〔低位〕STEREOIF6IF5IF4IF3IF2IF1IF0b〕位描述表3-18數(shù)據(jù)字節(jié)3位描述位號(hào)符號(hào)描述7STEREO立體聲標(biāo)志位:STEREO=1,立體聲接收;STEREO=0,單聲道接收。6到0IF[6:0]中頻計(jì)數(shù)器結(jié)果。=4\*GB3④數(shù)據(jù)字節(jié)4a〕字節(jié)格式表3-19數(shù)據(jù)字節(jié)4字節(jié)格式位7〔高位〕位6位5位4位3位2位1位0〔低位〕LEV3LEV2LEV1LEV0CI3CI2CI10b〕位描述表3-20數(shù)據(jù)字節(jié)4位描述位號(hào)符號(hào)描述7到4LEV[3:0]ADC的輸出。3到1CI[3:1]芯片驗(yàn)證號(hào)。0該位內(nèi)部置0。=5\*GB3⑤數(shù)據(jù)字節(jié)5字節(jié)格式表3-21數(shù)據(jù)字節(jié)5字節(jié)格式位7〔高位〕位6位5位4位3位2位1位0〔低位〕00000000在采用I2C協(xié)議進(jìn)展通信時(shí),輸入電壓小于0.2VCCD就被認(rèn)為是高電平,大于0.45VCCD就被認(rèn)為是高電平,高電平和低電平的持續(xù)時(shí)間必須要大于1us,在編程模擬I2C協(xié)議時(shí)要特別注意到這個(gè)時(shí)間。3.2.2TEA5767HN的數(shù)據(jù)傳輸

TEA5767HN的數(shù)據(jù)順序是:地址、字節(jié)1、字節(jié)2、字節(jié)3、字節(jié)4、字節(jié)5,數(shù)據(jù)傳送必須按照這個(gè)順序。每個(gè)字節(jié)將控制不同的功能。

每個(gè)字節(jié)的第七位為最高位,并作為字節(jié)的第一位傳送。在時(shí)鐘的下降沿,數(shù)據(jù)變?yōu)橛行盘?hào)。在每一字節(jié)后面加停頓信號(hào)可以縮短傳送時(shí)間。在整個(gè)傳輸完成之前,發(fā)送一個(gè)停頓條件,其保存的字節(jié)將包含以前的信息。如果一個(gè)字節(jié)沒(méi)有傳送完,新的字節(jié)將被使用,但新的調(diào)諧周期不會(huì)開(kāi)場(chǎng)。3.2.3TEA5767HN的讀寫(xiě)流程

根據(jù)TEA5767HN的讀寫(xiě)協(xié)議,調(diào)用公用I2C驅(qū)動(dòng)即可編寫(xiě)出TEA5767HN的讀寫(xiě)函數(shù):radio_write(),radio_read()。它們可為手動(dòng)搜臺(tái)、自動(dòng)搜臺(tái)等FM功能調(diào)用,以實(shí)現(xiàn)程序的模塊化,優(yōu)化程序構(gòu)造。TEA5767HN的讀寫(xiě)流程如圖3-3所示。其中I2C_Start(FM)和I2C_Stop(FM)分別表示啟動(dòng)和停頓I2C總線,Check_(FM)為應(yīng)答信號(hào)。圖3-3TEA5767HN讀寫(xiě)流程圖3.2.4收音模塊的初始化

TEA5767HN在上電復(fù)位時(shí),靜音位設(shè)置為“1〞,其他所有位設(shè)置為“0〞。為了初始化集成塊,所有位都必須重新設(shè)定。所以,上電后必須重新給TEA5767HN寫(xiě)入數(shù)據(jù),以初始化收音模塊。圖3-4TEA5767HN初始化流程圖TEA5767HN的初始化流程圖如圖3-4所示。圖中的radio_write_data[]分別為要寫(xiě)入TEA5767HN的5個(gè)字節(jié)數(shù)據(jù)。本系統(tǒng)寫(xiě)入數(shù)據(jù)讓TEA5767HN接收的頻率為88100kHz,選擇歐洲制式和32.768MHz晶振,同時(shí)采用立體聲輸出。函數(shù)get_pll()是根據(jù)當(dāng)前頻率計(jì)算出PLL值的函數(shù)。調(diào)用get_pll()函數(shù)計(jì)算出PLL值后,應(yīng)再把PLL高6位送給字節(jié)1的低6位,接著把PLL的低8位送給字節(jié)2。頻率顯示那么可直接調(diào)用fm_disp()函數(shù)來(lái)完成。3.3PT2257的音量控制設(shè)計(jì)本系統(tǒng)使用PT2257來(lái)控制收音機(jī)輸出的音量,以實(shí)現(xiàn)數(shù)字化音量控制。PT2257的地址為88H。單片機(jī)可與PT2257通過(guò)I2C進(jìn)展通信。PT2257的寫(xiě)操作先由單片機(jī)發(fā)出啟動(dòng)信號(hào)寫(xiě)入PT2257的片地址0x88,然后,由PT2257送回應(yīng)答信號(hào),單片機(jī)收到應(yīng)答信號(hào)后,即向PT2257發(fā)送音量衰減量數(shù)據(jù),單片機(jī)再次收到應(yīng)答信號(hào)后,即發(fā)出停頓信號(hào),如此即可完成一次控制過(guò)程。PT2257衰減量數(shù)據(jù)Vol由十位和個(gè)位兩局部組成。數(shù)據(jù)的傳輸順序是先發(fā)送十位數(shù)據(jù),再發(fā)送個(gè)位數(shù)據(jù)。寫(xiě)入的十位數(shù)據(jù)為(Vol/10)|TenDB,個(gè)位數(shù)據(jù)為(Vol%10)|OneDB。其中TenDB=0xe0,OneDB=0xd0。衰減量的大小為十位和個(gè)位值的合并,圖3-5和圖3-6給出了PT2257的寫(xiě)流程和音量控制流程。圖3-5PT2257寫(xiě)流程圖圖3-6PT2257音量控制流程圖結(jié)論軟硬件都設(shè)計(jì)好之后,要把編號(hào)的程序下載到單片機(jī)內(nèi)。下載工具可以用此前實(shí)習(xí)時(shí)焊接的簡(jiǎn)易單片機(jī)開(kāi)發(fā)板,下載軟件可以用STC_ISP_V480。在調(diào)試軟件時(shí),由于開(kāi)場(chǎng)時(shí)沒(méi)有定義好參數(shù),導(dǎo)致程序雖沒(méi)錯(cuò)誤卻難以實(shí)現(xiàn)預(yù)想的功能,后經(jīng)反復(fù)仔細(xì)檢查終于發(fā)現(xiàn),并解決了問(wèn)題。在調(diào)試整機(jī)系統(tǒng)時(shí)能夠搜索的頻率范圍為87.5~108MHz,能夠接收到6~8個(gè)電臺(tái),由于沒(méi)有專(zhuān)用天線,電路板質(zhì)量也不高,再加上電臺(tái)本身信號(hào)強(qiáng)度的問(wèn)題,有3~4個(gè)電臺(tái)的音質(zhì)效果不是很好,干擾很大??傮w來(lái)說(shuō)本次課題還是比較成功的。致謝從整體上來(lái)講,基于單片機(jī)的FM收音機(jī)設(shè)計(jì)是一個(gè)成功的設(shè)計(jì)。反觀整個(gè)過(guò)程,掌握好存放器的功能是整個(gè)設(shè)計(jì)的關(guān)鍵。從這個(gè)設(shè)計(jì)中,我學(xué)會(huì)〔1〕通過(guò)軟件模擬I2C總線通信協(xié)議〔2〕編程操作串口〔3〕熟悉芯片的工作原理同時(shí)也發(fā)現(xiàn)了自己有很多缺乏的地方:焊接技術(shù)不夠好,同時(shí)編程能力也很薄弱。在以后的工作學(xué)習(xí)中一定要多加強(qiáng)練習(xí)。本論文是在李教師的悉心教誨下完成的,是他在我最困難的時(shí)候給了我及時(shí)的提醒與幫助。字里行間都流露著導(dǎo)師的諄諄教誨。本人在與導(dǎo)師的屢次交流過(guò)程中被導(dǎo)師誨人不倦的態(tài)度和淵博的知識(shí)深深地所折服。正是因?yàn)橛辛藢?dǎo)師如此敬業(yè)的指導(dǎo),本人才能順利完成本篇論文。參考文獻(xiàn)【1】 C語(yǔ)言程序設(shè)計(jì)/譚浩強(qiáng)著.-2版.-北京:清華大學(xué)出版社,2008.11【2】 模擬電子技術(shù)根基/童詩(shī)白,華成英主編;清華大學(xué)教研組編.-4版.-北京:高等教育出版社, 2006.5【3】 單片機(jī)原理與應(yīng)用/朱兆優(yōu)等編著.-北京:電子工業(yè)出版社,2010.9【4】 王輝平.基于IIC總線數(shù)字收音機(jī)的控制實(shí)現(xiàn)[J].儀表技術(shù),2008〔11〕:56-58.【5】 余修武.USB接口技術(shù)在嵌入式系統(tǒng)中的應(yīng)用研究[J].電子技術(shù)應(yīng)用,2008〔10〕:151-153【6】 林峰.采用TEA5767的調(diào)頻收音電路設(shè)計(jì)[J].電聲技術(shù),2005〔4〕:35-36.【7】 PhilipsSemiconductors.TEA5767HNDatasheet.2002【8】 辛友順.單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[M].福州:福建科學(xué)技術(shù)出版社,2005.【9】 馮建華.單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)與產(chǎn)品開(kāi)發(fā)[M].北京:人民郵電出版社,2004.【10】 沈紅衛(wèi).單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì)實(shí)例與分析[M].北京:北京航空航天大學(xué)出版社,2003.【11】 徐明雪.用單片機(jī)控制TEA5768HL設(shè)計(jì)數(shù)字調(diào)諧FM收音機(jī)[J].無(wú)線電,2005(7): 9293.【12】 張俊謨.單片機(jī)中級(jí)教程——原理與應(yīng)用.北京:北京航空航天大學(xué)出版社,2006年10月.【13】 郭天祥.新概念51單片機(jī)C語(yǔ)言教程:入門(mén)、提高、開(kāi)發(fā)、拓展全攻略.北京:電子工業(yè)出版社.2009 〔01〕【14】 張有德等.單片微型機(jī)原理、應(yīng)用與實(shí)驗(yàn).上海:復(fù)旦大學(xué)出版社.2006【15】 康華光.?電子技術(shù)根基?〔模擬局部第五版〕高等教育出版社,2006附錄附錄一主程序#include"reg52.h"#defineucharunsignedchar#defineuintunsignedint#include"mylib.h"ucharinput_frq_lab=0;ucharinput_sti_lab=0;ucharfrq_wei=0;uchartai_wei=0;ucharfrq[10]={0};uchartai[4]={0};uchartemp_wei=0;ucharst_num=0;codeuchardis_fr[]="_";codeuchardis_fb[]="";externucharflash;externucharsti_flash;externucharflash_temp=0;ucharstion_h[2];externunsignedcharradio_write_data1[5];voidset_stions(uchara){EA=0; rdnbyt(0xa0,a*2,2,stion_h);radio_write_data1[0]=stion_h[0];radio_write_data1[1]=stion_h[1];radio_write_data1[2]=0x20;radio_write_data1[3]=0x11;radio_write_data1[4]=0x00; radio_write(); radio_read(); frequency=frequency+20; EA=1;}voidmain(void)//主程序{uchara,b,key;//按鍵所要的變量ini_int();//中斷和系統(tǒng)設(shè)置init();//屏幕初始化set_stions(1);//設(shè)置第一個(gè)電臺(tái)radio_write();//寫(xiě)電臺(tái)頻率disp_chin_st("調(diào)頻收音機(jī)",24,0);disp_chin_st("電臺(tái)頻率:",0,2);disp_chin_st("電臺(tái)編號(hào):",0,4);disp_uchar(st_num,55,4);disp_chin_st("調(diào)頻收音機(jī)",0,6);//frq[0]=1;frq[1]=0;frq[2]=7;frq[3]=5;set_frq(frq);//設(shè)置電臺(tái)頻率并送數(shù)據(jù)到收音頭////while(1)//auto_search(0);//鍵盤(pán)掃描開(kāi)場(chǎng)while(1){for(a=0;a<4;a++)//讓行線依次出現(xiàn)底電平〔四次同樣的循環(huán)〕{P2=~(0X80>>a);//讓行線依次出現(xiàn)底電平,列線為輸入狀態(tài)〔這里把高4位做行線,低四位做列線〕if((P2&0x0f)==0x0f)//假設(shè)沒(méi)按鍵按下,這時(shí)候,列線不會(huì)檢測(cè)到低電平{key=0;}else{for(b=0;b<4;b++)//假設(shè)按鍵按下,這時(shí)候,列線會(huì)檢測(cè)到低電平{P2=~(0X08>>b);if((P2>>4)!=0X0F)break;//讓列線依次出現(xiàn)低電平行線檢測(cè),看哪列有按鍵按下}P2=0X0F;while((P2&0X0F)!=0X0F);key=a*4+b+1;//每行有四個(gè)按鍵,所以所得到的行數(shù)*4加按鍵的列數(shù),就是被按下的位置,這里加1是想跳過(guò)0。break;}}//鍵盤(pán)掃描完畢switch(key){case0:break;case16:auto_search(0);disp_int(frequency/10,55,2);break;case12:auto_search(1);disp_int(frequency/10,55,2);break;key=0;}}}附錄二TEA5767讀寫(xiě)子程序#include"reg52.h"#include"24c02.h"#include"lcm.h"#definemax_freq108000#definemin_freq87500unsignedcharradio_write_data[5]={0xb1,0xa0,0x20,0x11,0x00};//要寫(xiě)入TEA5767的數(shù)據(jù)unsignedcharradio_write_data1[5]={0x31,0xa0,0x20,0x11,0x00};//要寫(xiě)入TEA5767的數(shù)據(jù)unsignedcharradio_read_data[5];//TEA5767讀出的狀態(tài)unsignedintdefault_pll=0x29c2;//0x29f9;//默認(rèn)存臺(tái)的pll,87.8MHzunsignedintpll=0;floatfrequency=0;voidget_frequency(void);externvoidsta();externvoidwrbyt(unsignedcharbyt);externbitiic_testack();externvoidmack();externvoidstop();externunsignedcharrdbyt();externucharfrq[10];sbitds_1302=P1^5;voidradio_write(void){unsignedchari; stop();sta();wrbyt(0xc0);//TEA5767寫(xiě)地址if(!iic_testack()){for(i=0;i<5;i++){wrbyt(radio_write_data1[i]);mack();}}stop();}//讀TEA5767狀態(tài),并轉(zhuǎn)換成頻率voidradio_read(void){unsignedchari;unsignedchartemp_l,temp_h;pll=0; stop();sta();wrbyt(0xc1);//TEA5767讀地址if(!iic_testack()){for(i=0;i<5;i++){radio_read_data[i]=rdbyt();mack();}}stop();temp_l=radio_read_data[1];temp_h=radio_read_data[0];temp_h&=0x3f;pll=temp_h*256+temp_l;get_frequency();}//由頻率計(jì)算PLLvoidget_pll(void){unsignedcharhlsi;unsignedinttwpll=0;hlsi=radio_write_data[2]&0x10;if(hlsi)pll=(unsignedint)((float)((frequency+225)*4)/(float)32.768);//頻率單位:kelsepll=(unsignedint)((float)((frequency-225)*4)/(float)32.768);//頻率單位:k}//由PLL計(jì)算頻率voidget_frequency(void){unsignedcharhlsi;unsignedintnpll=0;npll=pll;hlsi=radio_write_data[2]&0x10;if(hlsi)frequency=(unsignedlong)((float)(npll)*(float)8.192-225);//頻率單位:KHzelsefrequency=(unsignedlong)((float)(npll)*(float)8.192+225);//頻率單位:KHz}//手動(dòng)設(shè)置頻率,mode=1,+0.1MHz;mode=0:-0.1MHz,不用考慮TEA5767用于搜臺(tái)的相關(guān)位:SM,SUDvoidsearch(bitmode){radio_read();if(mode){frequency+=50;if(frequency>max_freq)frequency=min_freq;}else{frequency-=50;if(frequency<min_freq)frequency=max_freq;}EA=0;get_pll();radio_write_data1[0]=pll/256;radio_write_data1[1]=pll%256;radio_write_data1[2]=0x20;radio_write_data1[3]=0x11;radio_write_data1[4]=0x00; radio_write(); EA=1;}voidset_frq(uchar*frq_m){EA=0;frequency=(float)((*frq_m)*1000+(*(frq_m+1))*100+(*(frq_m+2))*10+(*(frq_m+3)))*100; if((frequency<87500)||(frequency>108500)) { EA=1; *frq_m=0; *(frq_m+1)=0; *(frq_m+2)=0; *(frq_m+3)=0; return; }get_pll();radio_write_data1[0]=pll/256;radio_write_data1[1]=pll%256;radio_write_data1[2]=0x20;radio_write_data1[3]=0x11;radio_write_data1[4]=0x00; radio_write(); EA=1;}voidauto_search(uchardec){intk=0;unsignedcharaa[6]={0};ds_1302=0;radio_write();if(dec){while(frequency<max_freq){get_pll();radio_write_data1[0]=pll/256;radio_write_data1[1]=pll%256;radio_write_data1[2]=0xA0;radio_write_data1[3]=0x11;radio_write_data1[4]=0x00;radio_write_data1[0]|=0x40; radio_write();for(k=0;k<20000;k++) EA=0;radio_read();if((radio_read_data[0]&0x80)){EA=0;frequency+=50;return;}}frequency=min_freq;}else{while(frequency>min_freq){get_pll();radio_write_data1[0]=pll/256;radio_write_data1[1]=pll%256;radio_write_data1[2]=0x20;radio_write_data1[3]=0x11;radio_write_data1[4]=0x00;radio_write_data1[0]|=0x40; radio_write();for(k=0;k<20000;k++) EA=0;radio_read();if((radio_read_data[0]&0x80)){EA=0;frequency-=50;return;}}frequency=max_freq;}}附錄三按鍵子程序#include"reg51.h"#defineucharunsignedchar#defineuintunsigendintxdatauchardelay_1s=0;//連按時(shí)間存放xdataucharhave_down=0;//有下降按件按下xdataucharkey=0;xdataucharoldkey=0;//上次按件號(hào)xdataucharnewkey=0;//本次按件號(hào)xdatauchareq_time=0;xdatauchareq_key_lab=0;//連按標(biāo)志xdataucharinputtime=0;xdataucharinput_sttime=0;xda

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論