

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 基于單片機的數字FM收音機設計</p><p> 學院名稱: 電氣信息工程學院 </p><p> 專 業(yè): 測控技術與儀器 </p><p> 班 級: </p><p> 學 號:
2、 </p><p> 姓 名: 某某某 </p><p> 指導教師姓名: 某某老師 </p><p> 指導教師職稱: 副教授 </p><p> 二〇一三 年 六 月</p><p> 基于單片機的數字
3、FM收音機設計</p><p> 摘要:本文在具體分析了STC89C52單片機的技術特點與數字FM收音機的基礎上,提出了采用單片機控制收音機實現數字調頻的方法,并給出了具體的軟硬件設計。該系統利主要由STC89C52單片機、液晶顯示器、按鍵、調頻收音模塊TEA5767、功放LM386組成[1]。實際運行時,用TEA5767搜索頻率,利用單片機STC89C52控制處理,經LM386芯片放大音頻功率同時再通過液晶顯
4、示器顯示頻率,最終實現87.5MHz~108MHz調頻廣播的接收。相關的功能驗證實驗表明,本系統達到了既定的設計目標。</p><p> 關鍵詞:單片機技術;收音機;頻率搜索;液晶顯示</p><p> The Design of Digital FM Radio Which Based on Single Chip Microcomputer</p><p>
5、 Abstract: This paper mainly proposes the method of using single chip computer to control digital FM radio . It gives the specific hardware and software design which based on a detailed analysis on of the technical char
6、acteristics of STC89C52 SCM and digital FM radio. The system uses STC89C52 SCM as CPU for overall control, mainly composed of STC89C52 SCM, LCD display, keypad, FM radio module TEA5767 and LM386 amplifier. When it operat
7、es, firstly you should use the TEA5767 display to show the sea</p><p> Keywords:SCM technology; Radio; Frequency search;Liquid-crystal display</p><p><b> 目 錄</b></p><p
8、> 序 言......................................................................................................1</p><p> 第1章 課題分析與方案論證..................................................................2<
9、;/p><p> 1.1 課題任務分析...................................................................................2</p><p> 1.2 方案論證...........................................................................
10、...............2</p><p> 第2章 硬件電路......................................................................................5</p><p> 2.1主控電路........................................................
11、...................................5</p><p> 2.2音頻輸出電路....................................................................................9 </p><p> 2.3FM收音電路..................................
12、....................................................12</p><p> 2.4LCD1062液晶屏模塊..........................................................................15</p><p> 2.5按鍵電路 .....................
13、...................................................................16</p><p> 2.6I2C總線簡介.....................................................................................16</p><p> 2.7電路裝配注
14、意事項............................................................................18</p><p> 第3章 軟件設計.....................................................................................19</p><p>
15、 3.1主程序設計......................................................................................19</p><p> 3.2液晶屏顯示控制子程序.....................................................................21</p><
16、;p> 3.3收音機控制子程序............................................................................23</p><p> 第4章 系統測試.....................................................................................25</
17、p><p> 4.1硬件測試..........................................................................................25</p><p> 4.2軟件測試.........................................................................
18、.................25</p><p> 4.3整機調試..........................................................................................26</p><p> 4.4調試結果.................................................
19、.........................................26</p><p> 結束語......................................................................................................27</p><p> 參考文獻....................
20、..............................................................................28</p><p> 致 謝....................................................................................................29</p>
21、<p> 附 錄....................................................................................................30</p><p> 附錄1 程序清單.....................................................................
22、...............30</p><p> 附錄2 硬件原理圖.................................................................................42</p><p> 附錄3 硬件實物圖........................................................
23、.........................43</p><p> 附錄4 外文資料原文..............................................................................44</p><p> 外文資料譯文...................................................
24、...........................50</p><p><b> 序 言</b></p><p> 當前時代,雖然電視、手機、互聯網等媒體和各種便攜式娛樂設備已經普及到千家萬戶,但傳統的收音機在豐富的娛樂媒介中任然占有重要地位。隨著信息化的發(fā)展,收音機逐漸數字化,集成化,而且成本越來越低,這使得在各種設備中嵌入收音機的現象更加普遍。例如,本
25、文所要論述的是通過單片機來控制TEA5767模塊及驅動液晶顯示器實現FM收音并顯示頻率。TEA5767HN是由PHILIPS公司推出的針對低電壓應用的單芯片數字調諧FM立體聲收音機芯片,其內集成了完整的IF頻率選擇和鑒頻系統,只需很少的低成本外圍元件,就可實現FM收音機的全部功能。另外,它具有高性能的RF AGC電路,其接收靈敏度高;參考頻率選擇靈活;可實現自動搜臺[2]。</p><p> TEA5767系列
26、單片數字收音機就被廣泛地應用在數字音響,便攜式CD、VCD、DVD、MP3、MP4、手機、PDA等數字消費電子系統中。但是該數字收音機芯片與傳統的超外差式收音機的調諧原理不太相同,傳統的超外差式收音機的固定頻率為10.7MZ,而TEA5767系列數字收音機的固定中頻為225KHz,由于固定中頻不同,鎖相環(huán)系統的軟件控制就有很大的差別,這就給廣大芯片應用設計者帶來一定的難度。本設計采用宏晶科技生產的8位微控制器STC89C52來控制數字收
27、音機模塊TEA5767,構成一個FM數字收音機系統。該收音機的設計具有電路簡單易懂、體積小、易調諧的特點,同時該收音機系統還具有抗干擾能力強,頻帶寬、音質好的優(yōu)點。</p><p> 本次設計研究的FM收音機分為硬件電路和程序設計兩個方面。從硬件電路來說,數字調頻收音機系統主要由STC89C52單片機、液晶顯示器、按鍵、調頻收音模塊TEA5767、功放LM386組成,主要是實現所需電壓值、穩(wěn)壓、搜臺、控制和頻率
28、顯示等方面功能。實際運行時,STC89C52單片機作為CPU進行總體控制[3],液晶顯示器顯示電臺頻率,四個按鍵SW1~SW4起調頻選臺作用(按下按鍵SW1電臺頻率增加,按下按鍵SW2電臺頻率減少,按下按鍵SW3電臺上調,按下按鍵SW34電臺下調),TEA5767搜索頻率,LM386芯片放大音頻功率,最終實現87.5MHz~108MHz調頻廣播的接收;從系統程序來說,主要是如何將電臺頻率換算出PLL控制字寫入TEA5767,以及PLL控
29、制字轉換成頻率送顯示。相關的實驗表明,本系統達到了既定的設計目標。</p><p> 第1章 課題分析與方案論證</p><p> 1.1課題任務分析 </p><p> 課題要求設計一個基于單片機的數字FM收音機,能夠實現搜臺、頻率控制以及頻率顯示的功能。收音頻段為87.5MHz~108MHz,采用液晶顯示器顯示頻率。</p><p>
30、; 通過對課題任務的分析可知,可以利用鎖相環(huán)頻率合成器BU2614與單片機STC89C52連接,實現87.5MHz~108MHz調頻廣播的接收,并用TEA5767搜索頻率,通過液晶顯示器顯示,并用按鍵調節(jié)頻率。 </p><p><b> 1.2方案論證 </b></p><p> 系統以STC89C52單片機作為控制模塊,無線FM模塊作為調頻選臺模塊。系統框
31、圖如圖1-1所示。</p><p> 圖1-1 系統方案設計框圖</p><p><b> 1.控制模塊</b></p><p> 決定采用STC89C52,其主要特點如下:</p><p> ?。?)增強型8051 單片機,6時鐘/機器周期和12 時鐘/機器周期可以任意選擇,指令代碼完全兼容傳統8051。<
32、/p><p> (2) 工作電壓:5.5V~3.3V(5V 單片機)/3.8V~2.0V(3V 單片機)。</p><p> (3) 工作頻率范圍:0~40MHz,相當于普通8051的0~80MHz,實際工作頻率可達48MHz[4]。</p><p> (4) 用戶應用程序空間為8K 字節(jié)。</p><p> (5) 片上集成512 字節(jié)
33、RAM。</p><p> (6)通用I/O 口(32 個),復位后為:P0/P1/P2/P3 是準雙向口/弱上拉,P0 口是漏極開路輸出,作為總線擴展用時,不用加上拉電阻,作為 I/O 口用時,需加上拉電阻。</p><p> (7) ISP(在系統可編程)/IAP(在應用可編程),無需專用編程器,無需專用仿真器,可通過串口(RxD/P3.0,TxD/P3.1)直接下載用戶程序。&l
34、t;/p><p> (8) 具有EEPROM 功能。</p><p> (9) 具有看門狗功能。</p><p> (10) 共3 個16 位定時器/計數器。即定時器T0、T1、T2[5]。</p><p> (11) 外部中斷4 路,下降沿中斷或低電平觸發(fā)電路,Power Down 模式可由外部中斷低電平觸發(fā)中斷方式喚醒。</p&
35、gt;<p> (12) 通用異步串行口(UART),還可用定時器軟件實現多個UART。</p><p> (13) 工作溫度范圍:-40~+85℃(工業(yè)級)/0~75℃(商業(yè)級)。</p><p> (14) PDIP 封裝[6]。</p><p><b> 2.無線FM模塊</b></p><p&g
36、t; 無線模塊選擇是本設計的關鍵,有兩種方案可以選擇:</p><p> 方案 a 采用無線芯片TEA5767HN,自己設計外圍電路。</p><p> 方案 b 采用相關廠家生產的TEA5767模塊來實現。</p><p> 很顯然,第一種方案需要自己設計電路、畫PCB和焊接,而TEA5767HN芯片采用的是FVQFN40(耐熱的薄型四腳扁平封裝)封裝,在
37、短時間內和有限的條件下實現硬件功能的難度相當大。所以決定采用第二種方案——使用現成的模塊[7]。</p><p><b> 3.電源模塊</b></p><p> 單片機的供電電壓要求是5.5V~3.3V,TEA5767的供電電壓要求是2.5V~5.0V。本設計中決定采用7805穩(wěn)壓芯片和AMS1117對系統進行供電,電源是9V的蓄電池,9V輸入電壓信號經過780
38、5穩(wěn)壓芯片穩(wěn)壓后得到5V電壓,實現對單片機供電,5V電壓再經過AMS1117得到3.3V電壓,實現對TEA5767的供電。</p><p><b> 4.功放模塊</b></p><p> TEA5767音頻輸出具有立體聲方式,也可以采用單聲道輸出,具體方式可以通過編程設定,為簡化設計,本設計決定采用單聲道輸出,功放芯片使用LM386,供電采用5V供電。</
39、p><p><b> 5.顯示模塊</b></p><p> 方案a:使用LCD1602作為顯示器部分</p><p> 工業(yè)字符型液晶,能夠同時顯示16x02即32個字符。用液晶1602來顯示可實現液晶的動態(tài)點亮。因為只需要一片液晶就可以顯示,所以單片機控制兩個控制端時,最高控制端接地。用軟件作為液晶的驅動顯示,且具體譯碼由軟件控制。<
40、;/p><p> 方案b:使用數碼管作為顯示部分</p><p> 數碼管按段數分可分為七段數碼管和八段數碼管,八段數碼管比七段數碼管多一個發(fā)光二極管單元(多個小數點)。按發(fā)光二極管單元連接方式可分為共陽極數碼管和共陰極數碼管。通過對其不同的管腳輸入相應的電流,會使其發(fā)亮,從而顯示出數字。</p><p> 由于兩個方案都可以實現同樣的功能,雖然方案b便宜但是從焊
41、接角度來看方案b的連接線的十分多而且容易出錯,方案a設計簡單,反應速度較快,體積小顯示內容豐富并且本次的設計需要顯示角度和一些字樣,如果采用方案b的話就需要很多數碼管這樣一來焊接時更容易出錯,所以決定選擇方案a。</p><p> 設計既要實現數字FM收音機的基本功能,又要盡量做到簡單廉價,綜合考慮各項因素,以上設計方案是可行的。</p><p><b> 第2章 硬件電路&
42、lt;/b></p><p><b> 2.1 主控電路</b></p><p><b> 1. 引腳描述</b></p><p> 單片機的基本系統也稱為最小系統,這種系統所選擇的單片機內部資源已能滿足系統的硬件需求,不需外接存儲器或I/O接口,含有時鐘電路和復位電路,外由電源供電。這種單片機內一定含有用戶的
43、程序存儲器,用戶程序寫入到內部只讀程序存儲器。單片機STC89C52采用雙列直插封裝(DIP),有40個引腳。該單片機采用ATMEL公司的高密度非易失性存儲技術制造,與美國Intel公司生產的MCS-51系列單片機的指令和引腳設置兼容。如圖2-1所示為STC89C52的引腳結構圖。 </p><p> 圖2-1 STC89C52的引腳結構圖</p><p> STC89C52有40
44、 條引腳,分為端口線、電源線、地線和控制線四類。</p><p> STC89C52RC引腳功能說明[8]:</p><p> ?。?)端口線(4*8=32條)</p><p> STC89C52有四個并行I/O端口,每個端口有8條口線,用于傳送數據。</p><p> ?、貾0.0~P0.7:P0口是一個漏極開路的8位雙向I/O口。作為
45、輸出端口,每個引腳能驅動8個TTL負載,對端口P0寫入“1”時,可以作為高阻抗輸入。在訪問外部程序和數據存儲器時,P0口也可以提供低8位地址和8位數據的復用總線。此時,P0口內部上拉電阻有效。在Flash ROM編程時,P0端口接收指令字節(jié);而在校驗程序時,則輸出指令字節(jié)。驗證時,要求外接上拉電阻。</p><p> ?、?P1.0~P1.7:這8條引腳和P0口的8條引腳類似,P1.7為最高位,P1.0為最低位,
46、當P1口作為通用I/O使用時,P1.0~P1.7的功能和P0口的第一功能相同,也用于傳送用戶的輸入和輸出數據。</p><p> ③ P2.0~P2.7:這組引腳的第一功能和上述兩組引腳的第一功能相同,即它可以作為通用I/O口使用。它的第二功能和P0口的第二功能相配合,用于輸出片外存儲器的高8位地址,共同選中片外存儲器單元,但并不能像P0口那樣是可以傳送存儲器的讀寫數據。</p><p>
47、; ?、?P3.0~P3.7:這組引腳的第一功能和其余端口的第一功能相同。第二功能作控制用,每個引腳并不完全相同,如表2-1所示為P3口第二功能。</p><p> 表2-1 P3口第二功能</p><p> (2)電源線(1條)</p><p> VCC為+5V電源線。</p><p><b> (3)地線(1條)<
48、/b></p><p> (4)控制線(6條)</p><p> ?、偻饨泳w引腳XTAL1和XTAL2</p><p> XTAL1:振蕩器反相放大器和內部時鐘發(fā)生電路的輸入端。</p><p> XTAL2:振蕩器反相放大器的輸入端。</p><p> ?、贏LE:地址鎖存控制信號(ALE)是訪問外部程
49、序存儲器時,鎖存低8位地址的輸出脈沖。在Flash編程時,此引腳也用作編程輸入脈沖。</p><p> 在一般情況下,ALE以晶振六分之一的固定頻率輸出脈沖,可用來作為外部定時器或時鐘使用。然而,特別強調,在每次訪問外部數據存儲器時,ALE脈沖將會跳過。</p><p> 如果需要,通過將地址位8EH的SFR的第0位置“1”,ALE操作將無效。這一位置“1”,ALE僅在執(zhí)行MOVX或M
50、OV指令時有效。否則,ALE將被微弱拉高。這個ALE使能標志位(地址位8EH的SFR的第0位)的設置對微控制器處于外部執(zhí)行模式下無效。</p><p> ?、郏涸试S訪問片外存儲器編程電源線,可以控制STC89C52使用片內ROM還是使用片外ROM。若EA=1,則允許使用ROM;若EA=0,則允許使用片外ROM。</p><p> ?、埽浩釸OM選通線,在執(zhí)行訪問片外ROM的指令MOVC時
51、,STC89C52自動在PSEN線上產生一個負脈沖,用于為片外ROM芯片的選通。其他情況下,PSEN線均為高電平封鎖狀態(tài)。 </p><p> ?、軷ST:復位電源線,可以使STC89C52處于復位工作狀態(tài)。通常,STC89C52的復位有自動上電復位和按鈕復位兩種。</p><p> 2. 時鐘電路的設計</p><p> 時鐘電路是計算機的心臟,它控制著計算機
52、的工作節(jié)奏。單片機允許的時鐘頻率是因型號而異的,STC89C52典型值為11.05926MHZ,本設計采用的就是典型值。單片機STC89C52內部都有一個反相放大器,XTAL1、XTAL2分別為反相放大器輸入和輸出端,外接定時反饋元件以后就組成振蕩器,產生時鐘送至單片機內部的各個部件。定時反饋電路一般為石英晶振和電容組成的并聯回路。如果振蕩器已起振,則在XTAL2引腳上輸出3V左右的正弦波。如圖2-2所示為時鐘的電路圖,晶振大小為11.
53、0592MHz,電容C1、C2大小為22PF。</p><p> 圖2-2 時鐘電路圖</p><p> 3. 復位電路的設計</p><p> 計算機在啟動運行是都需要復位,使中央處理器CPU和系統中的其它部件都處于一個確定的初始狀態(tài),并從這個狀態(tài)開始工作。單片機STC89C52有一個復位引腳RST,它是施密特觸發(fā)輸入,當振蕩器起振后,該引腳上出現2個機器周
54、期(即24個時鐘周期)以上的高電平。使器件復位,只要RST保持高電平,單片機保持復位狀態(tài)。此時ALE、P0、P1、P2、P3口等都輸出高電平。RST變?yōu)榈碗娖胶?,退出復位,CPU從初始狀態(tài)開始工作。復位以后內部寄存器的初始狀態(tài)為(SP=07),P0、P1、P2、P3為0FFH外,其它寄存器都為0。如圖2-3所示為復位電路圖,它能實現上電復位和手動復位的功能。</p><p> 上電復位時,在圖2-3中,電容的的
55、大小是10uF,電阻的大小是10k。所以根據公式,可以算出電容充電到電源電壓的0.7倍(單片機的電源是5V,所以充電到0.7倍即為3.5V),需要的時間是10K*10UF=0.1S。也就是說在電源接通的0.1S內,電容兩端的電壓時在0~3.5V增加。這個時候10K電阻兩端的電壓為從5~1.5V減少(串聯電路各處電壓之和為總電壓)。所以在0.1S內,RST引腳所接收到的電壓是5V~1.5V。在5V正常工作的單片機中小于1.5V的電壓信號為
56、低電平信號,而大于1.5V的電壓信號為高電平信號。所以在開機0.1S內,單片機系統自動復位(RST引腳接收到的高電平信號時間為0.1S左右)。</p><p> 手動復位時,在單片機啟動0.1S后,電容C兩端的電壓持續(xù)充電為5V,這是時候10K電阻兩端的電壓接近于0V,RST處于低電平所以系統正常工作。當按鍵按下的時候,開關導通,這個時候電容兩端形成了一個回路,電容被短路,所以在按鍵按下的這個過程中,電容開始釋
57、放之前充的電量。隨著時間的推移,電容的電壓在0.1S內,從5V釋放到變?yōu)榱?.5V,甚至更小。根據串聯電路電壓為各處之和,這個時候10K電阻兩端的電壓為3.5V,甚至更大,所以RST引腳又接收到高電平。單片機系統自動復位。</p><p> 圖2-3 復位電路圖</p><p> 要使單片機工作起來,最基本的電路的構成由單片機、時鐘電路等組成。單片機最小系統如圖2-4所示。</p
58、><p> 圖2-4 單片機最小系統</p><p> 2.2 音頻輸出電路</p><p> 功放模塊用的是LM386芯片。LM386芯片是專為低損耗電源所設計的功率放大器集成電路[9]。它的內建增益為20,透過pin 1 和pin8腳位間電容的搭配,增益最高可達200。LM386可使用電池為供應電源,輸入電壓范圍可由4V~12V。LM386有LM386N-1,
59、LM386M-1和LM386N-4三種,本設計采用的是LM386N-1。LM386的內部電路圖如圖2-5所示,引腳排列圖如圖2-6所示。LM386極限值如表2-2所示。LM386在Vcc=6V,Rl=8Ω,f=1KHZ,Tamb=25℃時的電氣特性如表2-3所示。</p><p> 圖2-5 內部電路圖</p><p> 圖2-6 引腳功能圖</p><p>
60、 表2-2 LM386極限值(Tamb=25℃)</p><p> 表2-3 LM386電特性</p><p> LM386 低電壓音頻功率放大器的典型應用如圖2-7、圖2-8、圖2-9所示。</p><p> 圖2-7 LM386 應用電路圖之增益=20</p><p> 圖2-8 LM386 應用電路圖之增益=200<
61、/p><p> 圖2-9 LM386 應用電路圖之增益=50</p><p> 在LM386其他管腳接法相同的情況下,圖2-7中當LM386的腳1和腳8空接時,電路增益為20。圖2-8中當LM386的腳1和腳8之間接10uF電容時,電路增益為200。圖2-9中當LM386的腳1和腳8間接一個1.2kΩ和一個10uF的電容,電路放大增益為50[10]。</p><p>
62、; 本設計采用的是放大增益為200的電路,電路工作于立體聲的電路形式下,功放模塊并不是直接與單片機控制模塊連接,它只是實現功率的放大和音頻的輸出,音頻信號從集成電路LM386的7腳輸入,經過內部功放電路放大后,由揚聲器發(fā)生時,就能發(fā)出所接收到的信號了。</p><p> 本設計介紹的功放電路簡單,自制方便。LM386集成功放電路常用在隨身聽、便攜式的DVD等音頻放音用;功率不是很大但以可以滿足聽覺要求了,且有
63、電路簡單、音質好、電壓范圍寬等特點。</p><p> 2.3 FM收音電路</p><p> FM模塊的控核心芯片采用飛利浦公司的TEA5767HN數字立體聲FM芯片[11],該芯片把所有的FM功能都集成到一個用HVQFN40封裝的小方塊中。芯片工作電壓2.5V~5.0V,典型值是3.3V;RF(調頻)接收頻率范圍是76~108MHz,(最強信號+噪聲)/噪聲的值在60dB左右,失
64、真度在0.4%左右;雙聲道音頻輸出的電壓在60~90mV左右,帶寬為22.5KHz。</p><p> TEA5767HN芯片主要具有以下特征:</p><p> ?。?)集成高靈敏度的低噪聲放大器。</p><p> ?。?)FM到中頻的混頻器可以工作在87.5~108MHz的歐美頻段或76~91MHz的日本頻段,并且可預設接收日本108MHz的電視音頻信號的能
65、力。</p><p> (3)射頻具有自動增益控制功能,并且LC調諧振蕩器只需固定片裝電感。</p><p> ?。?)內置的FM解調器可以省去外部鑒頻器,并且FM的中頻選擇性可以在芯片內部完成。</p><p> ?。?)可以采用32.768KHz或13MHz的振蕩器產生參考時鐘或可以直接輸入6.5MHz的時鐘信號。</p><p>
66、(6)集成鎖相環(huán)調諧系統</p><p> ?。?)可以通過I2C或三線串行總線來獲取中頻計數器值或接收的高頻信號電平,以便進行自動調諧功能。</p><p> ?。?)SNC[12](立體聲噪音抑制)、HCC(高頻衰減控制)、靜音處理等可以通過串行數字接口進行控制。</p><p> (9)免費調諧立體聲解碼器。</p><p> ?。?
67、0)自動調節(jié)溫度范圍(在VCCA,VCC(VCO)和VCCD=5V)。</p><p> 在方案設計時就已經確定FM部分采用按照推薦的應用設計電路圖生產的模塊。本設計FM模塊采用封裝完整版收音機模塊,外接引腳只有10個,只需要關注引腳而不需要關注模塊的內部結構,開發(fā)方便簡單。下圖2-10是模塊的引腳封裝,表2-4為引腳功能簡介(引出引腳的功能和芯片引腳的定義完全相同)。</p><p>
68、 圖2-10 TEA5767模塊引腳圖</p><p> 表2-4 TEA5767模塊引腳定義表</p><p> 圖2-11 TEA5767模塊電路連接圖</p><p> 上圖所示為TEA5767模塊的FM電路連接圖。圖中,VCC接穩(wěn)壓電源模塊中的3.3V電源。R_OUT、L_OUT為FM的音頻信號輸出,R_OUT為右聲道輸出,L_OUT為左聲道輸
69、出,本設計左聲道和右聲道同時輸出構成立體聲。SDA和CLK為I2C通信的數據線和時鐘線,外接10K的上拉電阻,系統的MCU通過I2C接口來對FM模塊進行控制。芯片上的W/READ引腳在本系統中沒有使用,故空接。CLK、SDA用于與系統的MCU實現串行通信[13]。</p><p> 2.4 LCD1602液晶屏模塊</p><p> 1602液晶也叫1602字符型液晶它是一種專門用來
70、顯示字母、數字、符號等的點陣型液晶模塊它有若干個5×7或者5×11等點陣字符位組成,本設計采用的是5×7型的,每個點陣字符位都可以顯示一個字符。每位之間有一個點距的間隔每行之間也有間隔起到了字符間距和行間距的作用,正因為如此所以他不能顯示圖形。1602LCD是指顯示的內容為16×2,即可以顯示兩行,每行16個字符液晶模塊(顯示字符和數字)。引腳說明如下:</p><p>
71、 第1腳:VSS為電源地。</p><p> 第2腳:VDD接5V電源正極。</p><p> 第3腳:V0為液晶顯示器對比度調整端,接正電源時對比度最弱,接地電源時對比度最高(對比度過高時會 產生“鬼影”,使用時可以通過一個10K的電位器調整對比度)。</p><p> 第4腳:RS為寄存器選擇,高電平1時選擇數據寄存器、低電平0時選擇指令寄存器。</
72、p><p> 第5腳:RW為讀寫信號線,高電平(1)時進行讀操作,低電平(0)時進行寫操作。 </p><p> 第6腳:E(或EN)端為使能(enable)端。</p><p> 第7~14腳:D0~D7為8位雙向數據端。</p><p> 第15~16腳:空腳或背燈電源。15腳背光正極,16腳背光負極。</p><
73、p> 1602與單片機的連線圖,10K電位器調節(jié)對比度,15、16引腳分別接電源和地構成背光電源。</p><p> 圖2-12 LCD1602模塊連接圖</p><p><b> 2.5 按鍵電路</b></p><p> 系統采用了4鍵輸入以實現系統功能的設定,其中SW1、SW2分別用于操作頻率的增加和減少,SW3、SW4分
74、別用于操作自動搜臺的向上調臺和向下調臺。由于系統中的其他模塊對微控制器的端口占用較少還有很多沒有使用的端口,鍵盤連接上直接采用了每個按鍵占用一個端口的形式。鍵盤的讀取采用掃描的形式,當檢測到有按鍵按下時,消抖動后進行鍵值判斷。 如圖2-13所示是按鍵電路的連接圖,SW1、SW2、SW3、SW4分別接單片機的P2.0、P2.1、P2.2、P2.3口。按鍵按下對應單片機IO口為低電平。</p><p> 圖2-1
75、3 按鍵電路連接圖</p><p> 2.6 I2C總線簡介</p><p> I2C總線是PHLIPS公司推出的一種串行總線,是具備多主機系統所需的包括總線裁決和高低速器件同步功能的高性能串行總線。它只有兩根雙向信號線,一根是數據線SDA,另一根是時鐘線SCL。典型的I2C結構如圖2-14所示。</p><p> 圖2-14 典型的I2C總線結構<
76、;/p><p> I2C[14]總線需通過上拉電阻接正電源,當總線空閑時,兩根線均為高電平。連到總線上的任一器件輸出的低電平,都將使總線的信號變低,即各器件的SDA及SCL都是線“與”關系。每個接到I2C總線上的器件都有唯一的地址。主機與其它器件間的數據傳送可以是由主機發(fā)送數據到其它器件,這時主機即為發(fā)送器。</p><p> 由總線上接收數據的器件則為接收器。在多主機系統中,可能同時有幾
77、個主機企圖啟動總線傳送數據。為了避免混亂,I2C總線要通過總線仲裁,以決定由哪一臺主機控制總線。</p><p> I2C總線的數據字節(jié)必需保證是8位長度。數據傳送時,先傳送最高位(MSB),每一個被傳送的字節(jié)后面都必須跟隨一位應答位(即一幀共有9位)。 圖2-15是I2C總線字節(jié)傳送與應答時序</p><p> 圖2-15 I2C總線字節(jié)傳送與應答時序</p><
78、;p> 由于某種原因從機不對主機尋址信號應答時(如從機正在進行實時性的處理工作而無法接收總線上的數據),它必須將數據線置于高電平,而由主機產生一個終止信號以結束總線的數據傳送。如果從機對主機進行了應答,但在數據傳送一段時間后無法繼續(xù)接收更多的數據時,從機可以通過對無法接收的第一個數據字節(jié)的“非應答”通知主機,主機則應發(fā)出終止信號以結束數據的繼續(xù)傳送。當主機接收數據時,它收到最后一個數據字節(jié)后,必須向從機發(fā)出一個結束傳送的信號。這
79、個信號是由對從機的“非應答”來實現的。然后,從機釋放SDA線,以允許主機產生終止信號。</p><p> I2C總線上傳送的數據信號是廣義的,既包括地址信號,又包括真正的數據信號。在起始信號后必須傳送一個從機的地址(7位),第8位是數據的傳送方向位(R/T),用“0”表示主機發(fā)送數據(T),“1”表示主機接收數據(R)。每次數據傳送總是由主機產生的終止信號結束。但是,若主機希望繼續(xù)占用總線進行新的數據傳送,則可
80、以不產生終止信號,馬上再次發(fā)出起始信號對另一從機進行尋址。由于本設計采用的STC89C52[15]單片機沒有I2C總線接口,所以要通過模擬來實現,利用軟件實現I2C總線的數據傳送,即軟件與硬件結合的信號模擬。</p><p> 2.7 電路裝配注意事項</p><p> 設計就采用普通的萬用版進行裝配,在裝配時要注意以下幾點:</p><p> (1)晶振部分
81、要緊靠著芯片引腳,導線要盡量粗,在焊接時采用用焊錫鋪粗來處理。</p><p> ?。?)電源輸入一定要添加去耦電容。</p><p> ?。?)TEA5767模塊和單片機引腳的距離盡量靠近,SDA線和CLK線業(yè)盡量鋪粗。</p><p> (4)天線安裝盡量靠近芯片引腳,一定要加上匹配電容。</p><p> ?。?)模擬線和數據線盡量要
82、分開,設計采用元器件面走數字線,焊接面走模擬線的方法處理。</p><p><b> 第3章 軟件設計</b></p><p> 軟件系統以數據處理為核心、通過不斷掃描按鍵狀態(tài),實現數字立體聲收音,同時顯示電臺信息。按鍵處理包含頻率調節(jié)、電臺切換模式,按鍵后,程序返回不同的鍵值給數據處理模塊、收音控制,程序則相應進行后續(xù)動作。按鍵值確定后則需進行數據處理,包括頻率
83、值的轉換計算、使用IIC 協議對TEA5767 模塊的讀寫操作。收音控制數據處理模塊發(fā)送五字節(jié)控制信息控制收音控制模塊的讀寫動作,使收音模塊進行搜索、選擇頻率鎖定、報告當前數據狀況等信息。收音模塊返回的數據為5 字節(jié)信息格式,該信息發(fā)送到數據處理模塊,供程序的后續(xù)處理. 最后,顯示模塊用來顯示數據處理模塊計算后的頻率信息。 </p><p> 3.1主程序設計</p>
84、;<p> 整個主程序主要由收音模塊、液晶顯示器模塊、按鍵模塊組成。首先對液晶顯示器和TEA5767HN芯片初始化。接著就是對顯示器顯示關機狀態(tài),并開啟定時器,對按鍵進行掃描。根據不同的按鍵進行響應的處理。系統初始化完成時對收音模塊進行讀取,此時收音模塊將收到的數據進行分析處理,其后將最終得到的數據上傳至單片機,單片機根據得到的數據驅動液晶顯示器進行相應的顯示,隨后單片機將對系統鍵盤端口進行掃描,并根據掃描得到的鍵值進行
85、相應的處理。</p><p> 整個系統主程序流程如圖3-1所示。</p><p> 圖3-1 整個系統主程序流程</p><p> 部分源程序代碼如下:</p><p> void main()</p><p><b> {</b></p><p> uns
86、igned char i;</p><p> lcd_init();// 初始化LCD</p><p> delay(10);</p><p> frequency = 89800;</p><p> radio_write(); // 寫入收音機</p><p&
87、gt;<b> while(1)</b></p><p><b> {</b></p><p> i = GetKey(); </p><p> Lcd_Display(frequency); // 液晶顯示</p><p> sw
88、itch (i) // 判斷按鍵</p><p><b> {</b></p><p> case 0x00: </p><p> search(0); // 手動加</p><p><b> break;</b>
89、</p><p> case 0x01: </p><p> search(1); // 手動減</p><p><b> break;</b></p><p> case 0x02: </p><p> auto_search(0);
90、 // 向上調臺</p><p><b> break;</b></p><p> case 0x03: </p><p> auto_search(1); // 向下調臺</p><p><b> break;</b></p><p>&
91、lt;b> default: </b></p><p><b> break;</b></p><p><b> } </b></p><p><b> } </b></p><p><b> }</b></p>
92、<p> 3.2液晶屏顯示控制子程序</p><p> 液晶屏顯示驅動處于系統的最后端,屬于人機交互界面,本次設計采用的液晶屏精確調整度是0.1MHZ。本設計系統開始時,系統賦予它一個初始值,如果有按鍵按下,初始值將會被清除,同時進行按鍵處理,液晶屏顯示所相應的數值;若沒有按鍵按下,液晶屏則直接顯示原有的初始值。本設計用液晶屏顯示,是因為液晶屏簡單易設計,能夠更加直觀的觀察與操作收音機。如圖3-2為
93、液晶屏顯示控制子程序流程圖。</p><p> 圖3-2 液晶屏顯示控制子程序流程圖</p><p> void Lcd_Display(unsigned long i) //顯示函數</p><p><b> {</b></p><p> lcd_pos(0); //0列
94、 </p><p> lcd_wdat(0x46); //"F"</p><p> lcd_pos(1); //1列 </p><p> lcd_wdat(0x4D); //"M"</p><p> lcd_pos(5);
95、 //設置顯示位置為第一行的第1個字符</p><p> lcd_wdat(i/100000+0x30);</p><p> lcd_pos(6); </p><p> lcd_wdat((i%100000)/10000+0x30); </p><p> lcd_pos(7);
96、 </p><p> lcd_wdat(((i%100000)%10000)/1000+0x30); </p><p> lcd_pos(8); </p><p> lcd_wdat(0xa5); //"."</p><p> lcd_pos(9);
97、 </p><p> lcd_wdat((((i%100000)%10000)%1000)/100+0x30); </p><p> lcd_pos(11); </p><p> lcd_wdat(0x4D); //"M"</p><p> lcd_pos(12);
98、 </p><p> lcd_wdat(0x48); //"H"</p><p> lcd_pos(13); </p><p> lcd_wdat(0x5a); //"Z"</p><p><b> }</b>
99、;</p><p> 3.3 收音機控制子程序</p><p> 收音機子程序處理中,在手動搜臺時候,只需要給收音機發(fā)完命令字,以及頻率,然后收音模塊就讀取所發(fā)送的頻率,等待100ms進行數據處理和分析,判斷是否收到電臺,如果沒有收到電臺,頻率增加(減少)0.1MHZ,再次繼續(xù)讀取頻率所發(fā)送的頻率;如果收到了電臺就可以直接返回了。因為收音模塊是用飛利浦公司的TEA5767數字立體聲FM
100、芯片,具有靈敏度高,自動增益控制等功能,所以在收音效果上是比較好的。如下圖3-3所示為收音機控制子程序流程圖。</p><p> 圖3-3 收音機控制子程序流程圖</p><p> 部分源程序代碼如下:</p><p> void search(bit mode)</p><p><b> {</b></
101、p><p> radio_read(); </p><p><b> if(mode)</b></p><p><b> {</b></p><p> frequency+=100; //自動加0.1M</p><p> if(
102、frequency>max_freq) // 判斷加0.1M后是否大于最大頻率</p><p> frequency=min_freq; // 超過則返回最小頻率</p><p><b> }</b></p><p><b> else</b></p><p>&l
103、t;b> {</b></p><p> frequency-=100;</p><p> if(frequency<min_freq)</p><p> frequency=max_freq;</p><p> } </p><p> get_pll();</
104、p><p> radio_write_data[0]=pll/256;</p><p> radio_write_data[1]=pll%256;</p><p> radio_write_data[2]=0x41;</p><p> radio_write_data[3]=0x11;</p><p> radi
105、o_write_data[4]=0x40;</p><p> radio_write();</p><p><b> } </b></p><p><b> 第4章 系統測試</b></p><p><b> 4.1硬件調試</b></p><p&g
106、t; 硬件調試主要分成兩大塊:上電前的調試和上電后的測試。</p><p><b> 1.上電前的測試</b></p><p> 在上電前,必須確保電路中不存在斷路或短路情況,這一工作是整個調試工作的第一步,也是非常重要的一個步驟。在這部分調試中主要使用的工具是萬用表,用來完成檢測電路中是否存在斷路或者短路情況等。</p><p> 通
107、過萬用表的檢測,沒有發(fā)現短路和斷路的地方,電路基本正常。</p><p><b> 2.上電后的測試</b></p><p><b> (1)電源的測試</b></p><p> 當USB由電路接入PC機時,用萬用表打到電壓檔檢測USB供電后是否為5V左右,然后檢測單聯撥動開關是否有效,當撥動開關后電源指示燈亮說明開
108、關有效,撥動開關后檢測接入單片機和PL2303的電壓是否為5V左右。</p><p> PL2303電路的測試</p><p> 用萬用表檢查PL2303電路無誤后,先在PC機上面安裝好PL2303的驅動,用USB使板子和PC機相連,此時電腦會出現相應的COM口,若出現COM口說明PL2303電路正確,否則不正確。</p><p><b> 4.2
109、軟件調試</b></p><p> 1.單片機最小系統的測試</p><p> 當撥動單聯開關時,檢查STC89C52的電源指示燈是否會亮,然后連接單片機的TXD、RXD和PL2303的RXD、TXD(已經通過導線連接起來了)。兩者是一一對應起來的,這時用stc單片機燒寫程序軟件STC_ISP_V483下載程序,看看能否將程序下載到單片機內。此時前提條件是PL2303電路正
110、常,PC機能夠識別COM口,否則無法下載。如果能下載成功后,使用復位鍵,看看電路能否復位。</p><p> 問題:單片機下載程序不成功,前提硬件是正確的。</p><p> 解決方案:可能USB下載器上的TXD,RXD對應單片機上的TXD,RXD不正確。正確的接法是USB下載器上的TXD,RXD對應單片機上的RXD,TXD。也有可能波特率設置問題,默認最高波特率為115200,可以把
111、波特率最高改為9600。</p><p> 2.LCD1602與單片機連接電路的測試</p><p> 用Keil軟件編寫一簡單的程序,通過STC_ISP_V483下載軟件下載程序到單片機內,讓LCD1602顯示出兩行字符,用來檢測LCD1602與單片機連接電路是否能顯示正常。</p><p> 3.TEA5767模塊與單片機連接電路的測試</p>
112、<p> 通過Keil軟件編寫TEA5767模塊與單片機通信程序,使得LCD1602能夠顯示頻道。</p><p> 問題:有時按加(減)0.1M頻率時,LCD1602不顯示頻率增長(減少)。</p><p> 解決方案:按鍵掃描時間過長,所以通過改寫程序使得掃描時間縮短,使LCD1602顯示屏能夠靈敏地反應頻率的增加和減少。</p><p>&
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 電子信息工程畢業(yè)設計基于單片機的fm收音機
- 開題報告基于單片機的fm收音機
- 電子信息工程畢業(yè)設計基于單片機的fm收音機
- 畢業(yè)設計--基于tea5767和單片機的數字fm收音機設計
- fm收音機畢業(yè)設計
- 基于51單片機的數字fm收音機設計與實現
- 51單片機控制的fm收音機(1)
- 基于at89s52單片機的數字fm收音機設計畢業(yè)論文
- 畢業(yè)設計--基于51單片機的數字收音機萬年歷的設計
- 調幅收音機(am)與調頻收音機(fm)的區(qū)別
- 防震收音機畢業(yè)設計
- 數字式調頻收音機畢業(yè)設計論文
- 畢業(yè)設計---調頻收音機的設計
- 畢業(yè)設計論文 fm收音機設計
- FM收音機單片集成關鍵技術研究.pdf
- 畢業(yè)設計---基于單片機數字時鐘設計
- 畢業(yè)設計---基于單片機數字秒表的設計
- 收音機課程設計---收音機的電路原理
- 畢業(yè)設計----基于單片機的數字時鐘設計
- 基于51單片機數字時鐘 畢業(yè)設計
評論
0/150
提交評論