基于單片機(jī)和TEA5767HN的FM收音機(jī)系統(tǒng)的設(shè)計(jì)
TEA5767HN的初始化流程圖如圖4所示。圖中的radio_write_data[]分別為要寫入TEA5767HN的5個(gè)字節(jié)數(shù)據(jù)。本系統(tǒng)寫入數(shù)據(jù)讓TEA5767HN接收的頻率為88100 kHz,選擇歐洲制式和32.768 MHz晶振,同時(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ù)來完成。
3.1.5 手動(dòng)搜臺
手動(dòng)搜臺主要由按鍵掃描和調(diào)用radio_write()等函數(shù)來完成。操作兩個(gè)按鍵(down,up)可完成向下向上調(diào)臺。當(dāng)按下up鍵時(shí),當(dāng)前的頻率將增加100 kHz,然后調(diào)用函數(shù)get_pll()將十進(jìn)制的頻率值轉(zhuǎn)化為14位的PLL值,然后再將PLL值進(jìn)一步轉(zhuǎn)化為兩個(gè)二進(jìn)制分別寫入TEA57 67HN的寫寄存器的第一和第二個(gè)字節(jié)。頻率顯示可直接調(diào)用fm_disp()函數(shù)來完成。
3.1.6 自動(dòng)搜臺與讀臺
自動(dòng)搜臺主要使系統(tǒng)從最低頻率87.5 MHz開始全頻率搜索,每次步進(jìn)100 kHz,如此不斷地寫入和讀出,同時(shí)調(diào)用頻率顯示函數(shù)不斷地刷新頻率。當(dāng)搜索到最高頻率108MHz時(shí),自動(dòng)退出搜臺模式。在自動(dòng)搜臺過程中,可通過讀寄存器中的ADC與中頻IF來辨別是否搜到有效電臺。若ADC>3,同時(shí)中頻IF在0x30~0x3E范圍內(nèi),則說明搜到有效電臺,此時(shí)讀出TEA5767讀寄存器中的字節(jié)1和字節(jié)2,然后將這兩個(gè)字節(jié)的數(shù)據(jù)轉(zhuǎn)化為PLL,最后通過寫ROM把搜到的電臺信息即PLL值存儲到AT24C02的片地址中,以方便讀臺使用。
讀臺是一個(gè)讀ROM和寫TEA5767的操作。將ROM中的電臺信息讀取出來,然后將信息再一次寫入TEA5767即可。在自動(dòng)搜臺中,由于存儲的信息是14位的PPL值,所以還必須調(diào)用函數(shù)將PLL轉(zhuǎn)化為十進(jìn)制的頻率frequency,然后再送進(jìn)LCD顯示。
3.2 PT2257的音量控制設(shè)計(jì)
本系統(tǒng)使用PT2257來控制收音機(jī)輸出的音量,以實(shí)現(xiàn)數(shù)字化音量控制。PT2257的地址為88H。單片機(jī)可與PT2257通過I2C進(jìn)行通信。PT2 257的寫操作先由單片機(jī)發(fā)出啟動(dòng)信號寫入PT2257的片地址0x88,然后,由PT2257送回應(yīng)答信號,單片機(jī)收到應(yīng)答信號后,即向PT2257發(fā)送音量衰減量數(shù)據(jù),單片機(jī)再次收到應(yīng)答信號后,即發(fā)出停止信號,如此即可完成一次控制過程。
PT2257衰減量數(shù)據(jù)Vol由十位和個(gè)位兩部分組成。數(shù)據(jù)的傳輸順序是先發(fā)送十位數(shù)據(jù),再發(fā)送個(gè)位數(shù)據(jù)。寫入的十位數(shù)據(jù)為(Vol/10)|TenDB,個(gè)位數(shù)據(jù)為(Vol%10)|OneDB。其中TenDB=0xe0,OneDB=0xd0。衰減量的大小為十位和個(gè)位值的合并,圖5給出了PT2257的寫流程和音量控制流程。本文引用地址:http://www.ex-cimer.com/article/172635.htm
4 電路設(shè)計(jì)說明
本設(shè)計(jì)在硬件方面以經(jīng)典電路為主,所以在常規(guī)電路設(shè)計(jì)方面不難。但是,由于本設(shè)計(jì)涉及到高頻與低頻信號的處理,所以要特別注重抗干擾電路的設(shè)計(jì)。在設(shè)計(jì)樣品的調(diào)試過程中,為提高抗干擾能力,作者得出以下經(jīng)驗(yàn):
(1)I2C總線的布線技巧
在TEA5767HN收音模塊設(shè)計(jì)時(shí),由于I2C總線與32.768 kHz的布線靠得太近,信噪比和靈敏度都可能很差。因此,筆者在做PCB板時(shí),把I2C總線通過跳線的方式走到下層。
(2)磁珠的應(yīng)用
磁珠一般專門用于抑制信號線、電源線上的高頻噪聲和尖峰干擾,同時(shí)還具有吸收靜電脈沖的能力。本設(shè)計(jì)中的磁珠用來吸收超高頻信號(如一些RF電路、PLL、振蕩電路、含超高頻存儲器電路等)。為了盡量減少電源對收音模塊的干擾,本設(shè)計(jì)使用了特征頻率為100 MHz的磁珠串接入3.3 V電路中。
(3)電路中“電流聲”的處理
電路中經(jīng)常會有“電流聲”。這是因?yàn)殡娐樊a(chǎn)生了一定的振蕩,電流只要有變化,就會有噪音,這樣,根據(jù)電流聲的頻率就可以有針對性的進(jìn)行處理。具體抑制措施有兩個(gè):一是用電感或電阻把干擾隔離在敏感區(qū)域外;另一方面,也可以用電容把噪音泄放到地。
因此,筆者根據(jù)設(shè)計(jì)實(shí)踐和相關(guān)資料,歸納出提高電路抗干擾能力的三字訣,那就是“避”、“堵”、“疏”。其中的避,就是指合理布局,躲開敏感區(qū),如設(shè)跳線或屏蔽敏感區(qū)等方式;堵,就是用電感/電阻把干擾隔離在敏感區(qū)域之外;疏,就是用電容把噪音釋放到地。另外,還要遵循兩大原則,分別是:“高頻信號點(diǎn)觸接地;低頻信號處處接地。”
5 結(jié)語
以TEA5767HN和單片機(jī)為硬件核心的立體聲FM數(shù)字收音機(jī)與傳統(tǒng)收音機(jī)相比,其PCB板布局小,硬件調(diào)試較為簡單,在音效處理和性能方面都更加可靠。通過軟硬件的結(jié)合,本系統(tǒng)可實(shí)現(xiàn)手動(dòng)搜臺、自動(dòng)搜臺、數(shù)控音量和鬧鐘等功能。在軟件設(shè)計(jì)上也可通過公用I2C使單片機(jī)與多個(gè)IC進(jìn)行通信,并可通過軟件實(shí)現(xiàn)按鍵復(fù)用功能,因而大大降低了產(chǎn)品體積。
評論