<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 消費電子 > 設(shè)計應(yīng)用 > 一種基于WinCE6.0的數(shù)字調(diào)頻收音機的設(shè)計

          一種基于WinCE6.0的數(shù)字調(diào)頻收音機的設(shè)計

          作者: 時間:2011-06-27 來源:網(wǎng)絡(luò) 收藏

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

          本文引用地址:http://www.ex-cimer.com/article/166128.htm

          k.JPG



          3 接口電路與驅(qū)動程序的
          的硬件平臺采用S3C2440處理器,已經(jīng)完成BSP包的開發(fā)以及WinCE 6.0操作系統(tǒng)的移植。
          3.1 接口電路的
          由于S3C2440具有I2C接口,所以只需將其與Si4730的I2C接口互相連接。Si4730的復(fù)位引腳RST與S3C2440的GPB5引腳相連。
          3.2 驅(qū)動程序的設(shè)計
          驅(qū)動程序由兩部分組成:I2C總線的驅(qū)動和GPIO口的驅(qū)動。I2C總線的驅(qū)動用于操作系統(tǒng)與Si4730之間的通信,GPIO口的驅(qū)動用于應(yīng)用程序控制Si4730的復(fù)位。
          3.2.1 Si4730的命令
          Si4730的命令有兩種:一種是控制命令,如調(diào)諧到某一頻率、自動搜索等;一種是屬性命令,如設(shè)置接收信號的強度門限、輸出音量的大小等。常用的命令有以下幾種:
          ①上電(POWER_UP),命令格式為{0x01,0xd0,0x05}。
          ②獲取芯片信息(GET_REV),命令格式為{0x10}。
          ③調(diào)諧到某一頻率(FM_TUNE_FREQ),命令格式為{0x20,0x00,ARG2,ARG3,0x00}。其中ARG2與ARG3是頻率的十六進制數(shù),例如102.3 MHz,則ARG2為0x27,ARG3為0xF6。
          ④自動搜索(FM_SEEK_START),命令格式為{0x21,0x0c)。
          3.2.2 I2C總線驅(qū)動的實現(xiàn)
          這里采用流接口驅(qū)動程序的設(shè)計方法開發(fā)I2C總線驅(qū)動。I2C總線驅(qū)動提供給操作系統(tǒng)的流接口為I2C_Init()、I2C Open()、I2C Close()、I2C Write()、I2C Read()、I2C_IOControl()等,應(yīng)用程序通過調(diào)用CreateFile()、WirteFile()和DeviceloControl()等接口函數(shù)來訪問設(shè)備。在已編譯完成的.0鏡像工程中添加I2C總線驅(qū)動的流程如圖4所示。

          l.JPG


          ①添加子工程。在鏡像工程的Solution Explorer窗口中,右鍵選擇Add New Subproject,新建子工程。
          ②編寫I2C總線驅(qū)動程序。在Source files下新建I2c.c的源文件,并在該文件中編寫驅(qū)動代碼,驅(qū)動程序的主要內(nèi)容就是實現(xiàn)流接口函數(shù)。讀I2C總線的實現(xiàn)函數(shù)為BooL_WRITE_IIC(UINT32 slvAddr,UINT8 n,UINT8*data)。寫I2C總線的實現(xiàn)函數(shù)為BooL READ_IIC(UINT32 slvA-ddr,UINT32 addr,UINT8 n,UINT8*data)。I2C_IOControl()的作用是傳遞I/O控制命令給設(shè)備,在該函數(shù)里實現(xiàn)了對Si4730的控制。部分代碼如下:
          m.JPG
          d.JPG



          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();