999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種基于WinCE 6.0的數字調頻收音機的設計*

2011-03-20 02:31:58王波李會勇鐘君
單片機與嵌入式系統應用 2011年6期
關鍵詞:功能設計

王波,李會勇,鐘君

(電子科技大學電子工程學院,成都611731)

本設計利用數字收音機芯片Si4730,為基于WinCE 6.0的智能系統集成FM功能提供了一種很好的解決方案,該方案實現了全頻手動與自動搜臺等功能。

1 基于WinCE 6.0的系統設計流程

如圖1所示,基于WinCE 6.0的系統設計一般分為3個過程:針對不同的硬件平臺設計BSP包,BSP包括Boot-loader、OAL和驅動程序;針對系統的需求,利用Platform Builder for CE 6.0選擇合適的組件,構建操作系統并導出SDK;在SDK的支撐下開發應用程序。

圖1 基于WinCE 6.0的系統設計流程

WinCE 6.0與其早期版本相比,開發工具有了較大的變化。Platform Builder已經不是一個單獨發行的工具,Platform Builder 6.0已經成為Visual Studio.Net 2005的一個插件,所以在Visual Studio.Net 2005集成開發環境中即可完成WinCE 6.0的系統定制、驅動開發和應用程序開發。

2 數字收音機芯片Si4730

2.1 Si4730簡介

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

圖2 Si4730/31原理框圖

*廣東省與教育部產學研結合項目(項目編號:2009B090300455);國家自然科學基金委與中國工程物理研究院資助項目(10776003)。

Si4731具有RDS/RBDS功能和數字音頻接口。在不包括天線的情況下,Si4730/31及其外圍電路只需15mm2。它的功能十分豐富,包括自動搜臺、自動校準、數字調諧、自適應噪聲抑制能力等,這些特性非常適合于便攜式設備[2]。由于不需要RDS/RBDS功能,所以這里選用Si4730這款芯片。

2.2 Si4730的控制接口

Si4730的外圍電路非常簡單,如圖3所示。Si4730提供了3種控制方式:2線模式(兼容I2C總線)、SPI模式、3線模式。芯片通過RST引腳上升沿時GPO1與GPO2的引腳狀態來決定采用哪種方式,當GPO1與GPO2懸空時Si4730為2線模式。SEN引腳接高電平時,器件地址為0xC6H;接低電平時,地址為0x22H。

圖3 Si4730外圍電路

3 接口電路與驅動程序的設計

本設計的硬件平臺采用S3C2440處理器,已經完成BSP包的開發以及WinCE 6.0操作系統的移植。

3.1 接口電路的設計

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

3.2 驅動程序的設計

驅動程序由兩部分組成:I2C總線的驅動和GPIO口的驅動。I2C總線的驅動用于操作系統與Si4730之間的通信,GPIO口的驅動用于應用程序控制Si4730的復位。

3.2.1 Si4730的命令

Si4730的命令有兩種:一種是控制命令,如調諧到某一頻率、自動搜索等;一種是屬性命令,如設置接收信號的強度門限、輸出音量的大小等。常用的命令有以下幾種:

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

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

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

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

3.2.2 I2C總線驅動的實現

這里采用流接口驅動程序的設計方法開發I2C總線驅動。I2C總線驅動提供給操作系統的流接口為I2C_Init()、I2C_Open()、I2C_Close()、I2C_Write()、I2C_Read()、I2C_IOControl()等,應用程序通過調用CreateFile()、WirteFile()和DeviceIoControl()等接口函數來訪問設備[3]。在已編譯完成的WinCE 6.0鏡像工程中添加I2C總線驅動的流程如圖4所示。

圖4 添加I 2 C總線驅動程序流程

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

②編寫I2C總線驅動程序。在Source files下新建I2c.c的源文件,并在該文件中編寫驅動代碼,驅動程序的主要內容就是實現流接口函數。讀I2C總線的實現函數為BOOL WRITE_IIC(UINT32slvAddr,UINT8n,UINT8*data)。寫I2C總線的實現函數為BOOL READ_IIC(UINT32slvAddr,UINT32addr,UINT8n,UINT8*data)。I2C_IOControl()的作用是傳遞I/O控制命令給設備,在該函數里實現了對Si4730的控制[4]。部分代碼如下:

③注冊表中注冊設備驅動程序。打開platform.reg文件,在其中添加注冊信息如下:

④將驅動程序打包進鏡像中。打開platform.bib配置文件,添加如下代碼:

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

⑤創建驅動程序的def文件。工程需要def文件導出相應的函數,文件的部分內容為:

3.2.3 GPIO驅動的實現Si4730工作時需要一個復位信號,這里使用S3C2440

的GPB5口來進行控制。在驅動中設置寄存器GPXCON

為輸出功能,設置寄存器GPXDAT的值為0或1來控制輸出口為低電平或高電平[5]。相關代碼如下:

4 應用程序設計

4.1 功能實現

應用程序的作用是調用驅動程序的流接口函數控制Si4730,從而實現FM的功能。在應用層中需要用到的API是CreateFile()、DeviceIoControl()、ReadFile()、WriteFile(),函數的參數說明可以參考Visual Studio 2005的幫助文件。

程序中首先使用CreateFile()打開設備句柄:

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

然后就可使用DeviceIoControl()、ReadFile()、Write-File()等API函數對設備進行控制,如調諧的實現:

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

4.2 界面設計

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

圖5 FM的界面

[1]楊磊,李會勇.基于WinCE的嵌入式網絡收音機[J].單片機與嵌入式系統應用,2010(11).

[2]薛大龍,陳世帝,王韻.WinCE嵌入式系統開發——從基礎到實踐[M].北京:電子工業出版社,2008.

[3]劉洪運,王衛東.基于Si472x設計實現DSP收音機[J].信息技術,2010(6):28.

[4]王輝平,吳璟宇,康惠駿.基于IIC總線數字收音機的控制實現[J].儀表技術,2008(11):58.

[5]田磊,宋圓方.基于WinCE的IIC設備驅動的實現[J].西安郵電學院學報,2008(1):128.

[6]Samsung Electronics Co.,Ltd.S3C2440Auser's manual(Revision 0.14),2004.

猜你喜歡
功能設計
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
何為設計的守護之道?
現代裝飾(2020年7期)2020-07-27 01:27:42
《豐收的喜悅展示設計》
流行色(2020年1期)2020-04-28 11:16:38
瞞天過海——仿生設計萌到家
藝術啟蒙(2018年7期)2018-08-23 09:14:18
設計秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
關于非首都功能疏解的幾點思考
有種設計叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
懷孕了,凝血功能怎么變?
媽媽寶寶(2017年2期)2017-02-21 01:21:24
“簡直”和“幾乎”的表達功能
中西醫結合治療甲狀腺功能亢進癥31例
主站蜘蛛池模板: 狠狠色狠狠综合久久| 夜夜操狠狠操| 久久精品无码中文字幕| 日韩精品亚洲人旧成在线| 又猛又黄又爽无遮挡的视频网站| 久久中文无码精品| 国产在线观看人成激情视频| 狠狠躁天天躁夜夜躁婷婷| 欧美日韩在线亚洲国产人| 国产人免费人成免费视频| 亚洲AV成人一区国产精品| 国产在线精品99一区不卡| 亚洲欧洲日韩综合| 国产成人欧美| 国产91无毒不卡在线观看| 欧美成人日韩| a亚洲视频| 亚洲中文字幕手机在线第一页| 亚洲欧美精品一中文字幕| www欧美在线观看| 亚洲高清中文字幕在线看不卡| 亚洲三级视频在线观看| 亚洲色图欧美在线| 一本色道久久88亚洲综合| 97免费在线观看视频| 国产区在线观看视频| 四虎永久在线| 久久精品人人做人人爽电影蜜月 | 国产成人综合久久精品下载| 老司机午夜精品网站在线观看| 国产成人高清精品免费软件| 国产剧情一区二区| 狠狠色综合久久狠狠色综合| 在线日韩日本国产亚洲| 五月婷婷亚洲综合| 国产精品网址你懂的| 亚洲色图综合在线| 国产免费好大好硬视频| 欧美a级在线| 激情乱人伦| 69av免费视频| 亚洲男人的天堂在线观看| 欧美中出一区二区| 久久国产av麻豆| 不卡无码h在线观看| 免费精品一区二区h| 中文字幕有乳无码| 国产在线专区| 五月婷婷综合网| 国产日产欧美精品| 国产欧美日韩va另类在线播放 | 人妻夜夜爽天天爽| 日本91在线| 香蕉视频在线精品| 国产精品男人的天堂| 久久夜色精品| 亚洲伊人电影| 免费无码AV片在线观看中文| 亚洲一区网站| 久久99热66这里只有精品一 | 2020精品极品国产色在线观看| 天天躁狠狠躁| 免费一级全黄少妇性色生活片| 欧美激情伊人| 国产91蝌蚪窝| 国产大片喷水在线在线视频| 永久成人无码激情视频免费| 无码高潮喷水在线观看| 欧美69视频在线| 亚洲国产成熟视频在线多多| 国产成人精品18| 欧美a级完整在线观看| vvvv98国产成人综合青青| 国产一在线| 午夜老司机永久免费看片| 三区在线视频| 九九热在线视频| 亚洲黄色视频在线观看一区| 中文国产成人精品久久| 亚洲AV无码乱码在线观看裸奔| 国产一级精品毛片基地| 国产高清精品在线91|