99午夜-99午夜高清在线视频在观看-99午夜精品福利视频在线-99午夜视频-99香蕉国产

設(shè)為主頁(yè)  加入收藏
 
·I2S數(shù)字功放IC/內(nèi)置DSP音頻算法功放芯片  ·馬達(dá)驅(qū)動(dòng)IC  ·2.1聲道單芯片D類功放IC  ·內(nèi)置DC/DC升壓模塊的D類功放IC  ·鋰電充電管理IC/快充IC  ·無(wú)線遙控方案  ·直流無(wú)刷電機(jī)驅(qū)動(dòng)芯片
當(dāng)前位置:首頁(yè)->技術(shù)分享
利用數(shù)字收音機(jī)芯片Si4730,基于WinCE6.0的數(shù)字調(diào)頻收音機(jī)設(shè)計(jì)原理
文章來(lái)源: 更新時(shí)間:2011/6/30 10:21:00
在線咨詢:
給我發(fā)消息
李湘寧 2850985550
給我發(fā)消息
鄢先輝 2850985542
給我發(fā)消息
張代明 3003290139
13713728695
 

本設(shè)計(jì)利用數(shù)字收音機(jī)芯片Si4730,為基于WincE6.0的智能系統(tǒng)集成FM功能提供了一種很好的解決方案,該方案實(shí)現(xiàn)了全頻手動(dòng)與自動(dòng)搜臺(tái)等功能。

1 基于WinCE6.0的系統(tǒng)設(shè)計(jì)流程

如圖1所示,基于WinCE 6.0的系統(tǒng)設(shè)計(jì)一般分為3個(gè)過(guò)程:針對(duì)不同的硬件平臺(tái)設(shè)計(jì)BSP包,BSP包括Boot-loader、OAL和驅(qū)動(dòng)程序;針對(duì)系統(tǒng)的需求,利用Platform Builder for CE 6.0選擇合適的組件,構(gòu)建操作系統(tǒng)并導(dǎo)出SDK;在SDK的支撐下開(kāi)發(fā)應(yīng)用程序。

b.JPG



WinCE 6.0與其早期版本相比,開(kāi)發(fā)工具有了較大的變化。Platform Builder已經(jīng)不是一個(gè)單獨(dú)發(fā)行的工具,Platform Builder 6.0已經(jīng)成為Visual Studio.Net 2005的一個(gè)插件,所以在visual Studio.Net 2005集成開(kāi)發(fā)環(huán)境中即可完成WinCE6.0的系統(tǒng)定制、驅(qū)動(dòng)開(kāi)發(fā)和應(yīng)用程序開(kāi)發(fā)。



2 數(shù)字收音機(jī)芯片Si4730

2.1 Si4730簡(jiǎn)介

Si4730/31是Silicon Labs公司推出的高集成度AM/FM收音機(jī)芯片,原理圖如圖2所示。

c.JPG



Si4731具有RDS/RBDS功能和數(shù)字音頻接口。在不包括天線的情況下,Si4730/31及其外圍電路只需15 mm2。它的功能十分豐富,包括自動(dòng)搜臺(tái)、自動(dòng)校準(zhǔn)、數(shù)字調(diào)諧、自適應(yīng)噪聲抑制能力等,這些特性非常適合于便攜式設(shè)備。由于不需要RDS/RBDS功能,所以這里選用Si4730這款芯片。

2.2 Si4730的控制接口

Si4730的外圍電路非常簡(jiǎn)單,如圖3所示。Si4730提供了3種控制方式:2線模式(兼容I2C總線)、SPI模式、3線模式。芯片通過(guò)RST引腳上升沿時(shí)GP01與GP02的引腳狀態(tài)來(lái)決定采用哪種方式,當(dāng)GP01與GP02懸空時(shí)Si4730為2線模式。SEN引腳接高電平時(shí),器件地址為0xC6H;接低電平時(shí),地址為0x22H。

k.JPG





3 接口電路與驅(qū)動(dòng)程序的設(shè)計(jì)

本設(shè)計(jì)的硬件平臺(tái)采用S3C2440處理器,已經(jīng)完成BSP包的開(kāi)發(fā)以及WinCE 6.0操作系統(tǒng)的移植。

3.1 接口電路的設(shè)計(jì)

由于S3C2440具有I2C接口,所以只需將其與Si4730的I2C接口互相連接。Si4730的復(fù)位引腳RST與S3C2440的GPB5引腳相連。

3.2 驅(qū)動(dòng)程序的設(shè)計(jì)

驅(qū)動(dòng)程序由兩部分組成:I2C總線的驅(qū)動(dòng)和GPIO口的驅(qū)動(dòng)。I2C總線的驅(qū)動(dòng)用于操作系統(tǒng)與Si4730之間的通信,GPIO口的驅(qū)動(dòng)用于應(yīng)用程序控制Si4730的復(fù)位。

3.2.1 Si4730的命令

Si4730的命令有兩種:一種是控制命令,如調(diào)諧到某一頻率、自動(dòng)搜索等;一種是屬性命令,如設(shè)置接收信號(hào)的強(qiáng)度門(mén)限、輸出音量的大小等。常用的命令有以下幾種:

①上電(POWER_UP),命令格式為{0x01,0xd0,0x05}。

②獲取芯片信息(GET_REV),命令格式為{0x10}。

③調(diào)諧到某一頻率(FM_TUNE_FREQ),命令格式為{0x20,0x00,ARG2,ARG3,0x00}。其中ARG2與ARG3是頻率的十六進(jìn)制數(shù),例如102.3 MHz,則ARG2為0x27,ARG3為0xF6。

④自動(dòng)搜索(FM_SEEK_START),命令格式為{0x21,0x0c)。

3.2.2 I2C總線驅(qū)動(dòng)的實(shí)現(xiàn)

這里采用流接口驅(qū)動(dòng)程序的設(shè)計(jì)方法開(kāi)發(fā)I2C總線驅(qū)動(dòng)。I2C總線驅(qū)動(dòng)提供給操作系統(tǒng)的流接口為I2C_Init()、I2C Open()、I2C Close()、I2C Write()、I2C Read()、I2C_IOControl()等,應(yīng)用程序通過(guò)調(diào)用CreateFile()、WirteFile()和DeviceloControl()等接口函數(shù)來(lái)訪問(wèn)設(shè)備。在已編譯完成的WinCE6.0鏡像工程中添加I2C總線驅(qū)動(dòng)的流程如圖4所示。

 

l.JPG



①添加子工程。在鏡像工程的Solution Explorer窗口中,右鍵選擇Add New Subproject,新建子工程。

②編寫(xiě)I2C總線驅(qū)動(dòng)程序。在Source files下新建I2c.c的源文件,并在該文件中編寫(xiě)驅(qū)動(dòng)代碼,驅(qū)動(dòng)程序的主要內(nèi)容就是實(shí)現(xiàn)流接口函數(shù)。讀I2C總線的實(shí)現(xiàn)函數(shù)為BooL_WRITE_IIC(UINT32 slvAddr,UINT8 n,UINT8*data)。寫(xiě)I2C總線的實(shí)現(xiàn)函數(shù)為BooL READ_IIC(UINT32 slvA-ddr,UINT32 addr,UINT8 n,UINT8*data)。I2C_IOControl()的作用是傳遞I/O控制命令給設(shè)備,在該函數(shù)里實(shí)現(xiàn)了對(duì)Si4730的控制。部分代碼如下:

m.JPG

d.JPG

③注冊(cè)表中注冊(cè)設(shè)備驅(qū)動(dòng)程序。打開(kāi)platform.reg文件,在其中添加注冊(cè)信息如下:

e.JPG

④將驅(qū)動(dòng)程序打包進(jìn)鏡像中。打開(kāi)platform.bib配置文件,添加如下代碼:

 I2c.dll$(_FLATRELEASEDIR)\I2c.dll NK SHK

⑤創(chuàng)建驅(qū)動(dòng)程序的def文件。工程需要def文件導(dǎo)出相應(yīng)的函數(shù),文件的部分內(nèi)容為:

f.JPG

3.2.3 GPIO驅(qū)動(dòng)的實(shí)現(xiàn)

Si4730工作時(shí)需要一個(gè)復(fù)位信號(hào),這里使用S3C2440的GPB5口來(lái)進(jìn)行控制。在驅(qū)動(dòng)中設(shè)置寄存器GPXCON為輸出功能,設(shè)置寄存器GPXDAT的值為0或1來(lái)控制輸出口為低電平或高電平。相關(guān)代碼如下:

g.JPG

h.JPG

4 應(yīng)用程序設(shè)計(jì)

4.1 功能實(shí)現(xiàn)

應(yīng)用程序的作用是調(diào)用驅(qū)動(dòng)程序的流接口函數(shù)控制Si4730,從而實(shí)現(xiàn)FM的功能。在應(yīng)用層中需要用到的API是CreateFile()、Devicelo Control()、ReadFile()、WriteFile(),函數(shù)的參數(shù)說(shuō)明可以參考Visual Studio 2005的幫助文件。

程序中首先使用CreateFile()打開(kāi)設(shè)備句柄:

I2Cdriver=CreateFile(L“I2C:”,GENERIC_READ|GENERIC_WRITE,0,NULL,OPEN_EXISTING,0,NULL);

然后就可使用DeviceIocontrol()、ReadFile()、Write File()等API函數(shù)對(duì)設(shè)備進(jìn)行控制,如調(diào)諧的實(shí)現(xiàn):

DeviceloControl(I2Cdriver,IOCTL_FM_TUNE,NULL,0,NULL,0,NULL,NULL);

4.2 界面設(shè)計(jì)

良好的界面是應(yīng)用程序重要的部分,如圖5所示,界面中應(yīng)該有如下幾個(gè)部分:播放、頻率向上調(diào)諧、頻率向下調(diào)諧、音量控制等。

a.JPG

 
 
 
    相關(guān)產(chǎn)品  
 
 
·藍(lán)牙音箱的音頻功放/升壓/充電管
·單節(jié)鋰電內(nèi)置升壓音頻功放IC選型
·HT7179 12V升24V內(nèi)置
·5V USB輸入、三節(jié)鋰電升壓型
·網(wǎng)絡(luò)主播聲卡專用耳機(jī)放大IC-H
 
M12269 HT366 ACM8629 HT338 

業(yè)務(wù)洽談:手機(jī):13713728695(微信同號(hào))   QQ:3003207580  EMAIL:panbo@szczkjgs.com   聯(lián)系人:潘波

地址:深圳市寶安西鄉(xiāng)航城大道航城創(chuàng)新創(chuàng)業(yè)園A5棟307/309

版權(quán)所有:深圳市永阜康科技有限公司  備案號(hào):粵ICP備17113496號(hào)

主站蜘蛛池模板: 精品国产一区二区麻豆| 99er精品| 一区二区欧美视频| 黄色一级片视频| 华人欧美国产在线精品| 亚洲欧美日韩另类| 人妖另类亚洲xxxx| 中国国产一国产一级毛片视频| 欧美一级www毛片| 国产免费变态视频网址网站| 日韩亚洲欧美综合一区二区三区| www.日韩在线| 久热精品男人的天堂在线视频| 亚洲综合网在线观看| 性网站视频| 大桥未久日韩欧美亚洲国产| 亚洲欧洲一区二区三区| 亚洲 欧美 日韩在线| 国产成在线观看免费视频| 窝窝午夜色视频国产精品东北| 国产人成午夜免视频网站| 麻豆国产在线视频| 亚洲高清一区二区三区| 在线无限看免费网站| 中文字幕亚洲精品| 在线视频一区二区日韩国产| 床上毛片| 欧美三级在线观看不卡视频| 国产成人久久久精品一区二区三区| 特级aaa毛片| 韩国一级特黄清高免费大片| 丁香五六月婷婷| 国产精品亚洲综合天堂夜夜| 久久精品在这里| 免费精品精品国产欧美在线| 91久久国产视频| www视频在线观看| 一级做a爰片久久毛片免费| 女人大毛片一级毛片一| 日韩精品在线一区二区| 永久网站色视频在线观看免费|