新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 一種智能無線多媒體數字播放系統的設計方案

        一種智能無線多媒體數字播放系統的設計方案

        作者: 時間:2011-07-12 來源:網絡 收藏

          圖3中驅動程序的struct file_operations( )只使用了提供的4個子函數接口:open( )、write( )、ioctl( )和release( )。其中open( )用于完成SPI設備的打開、初始化相關寄存器、準備進行設備I/O操作;write( )完成通過SPI接口進行寫操作;ioctl( )是進行讀寫以外的其他操作,通過對I/O口高低電平的改變實現不同功能;release( )用于關閉設備,釋放占用內存[12]。

          S3C2440A SPI的傳輸形式是由SPI控制寄存器SPCON中的1 bit位和2 bit位的值共同決定的。1 bit位是CPHA(Clock Phrase Select),它用來選擇傳輸格式為Format A或Format B,置0為Format A,置1為Format B;2 bit位是CPOL(Clock Polarity),它決定時鐘信號是高電平觸發還是低電平觸發,置0為active high,置1為active low。由圖3可以看出,CYWUSB6934的SPI單字節讀出時鐘是高電平觸發的,又如虛線箭頭處時鐘信號的上升沿正與圖4中SPI時鐘相吻合,而在圖4中cmd的2 bit位是傳輸字節中的最高2位,再根據圖5中 MOSI的MSB就應該是傳輸字節的最高2位,為00,所以選擇方式為Format A高電平觸發。

          在確定了它們之間的傳輸格式以及觸發方式后, SPI驅動的實現就是對這些寄存器進行正確的賦值。收發芯片CYWUSB6934通過SPI接口與ARM9主控芯片進行通信,需要對各個寄存器進行設置。根據要求,使用SPI1口實現SPI通信,其具體的編程實現如下:



        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 南部县| 大宁县| 龙南县| 昌乐县| 运城市| 西昌市| 如东县| 京山县| 大厂| 贺兰县| 社会| 巍山| 塔城市| 水城县| 吉首市| 封丘县| 宜春市| 阿坝| 永靖县| 缙云县| 临城县| 临清市| 喀喇沁旗| 易门县| 繁昌县| 古丈县| 拉萨市| 信阳市| 南溪县| 新河县| 葫芦岛市| 竹溪县| 井研县| 黔西县| 页游| 区。| 波密县| 呈贡县| 马尔康县| 东安县| 莒南县|