新聞中心

        EEPW首頁 > 模擬技術 > 設計應用 > 頻譜儀多種內核通信機制的方案設計

        頻譜儀多種內核通信機制的方案設計

        作者: 時間:2012-04-12 來源:網絡 收藏
        4.1.5 模塊的編譯、加載

          在驅動文件的最后加上如下代碼,設置模塊加載與釋放對應的函數:

          module_init(hpi_init);

          module_exit(hpi_exit);

          完成了驅動程序的編寫,將源程序文件在Linux開發環境下編譯成.ko的模塊文件,使用insmod和rmmod指令來加載和卸載模塊。

          4.2 SPI設備驅動程序實現

          在SPI的驅動設計中,大體的框架跟HPI是相同的。包括頭文件宏定義的完善、SPI設備的初始化、file_operations結構中函數的實現、資源釋放,最后編譯、加載。需要說明的是AT91RM9200自帶了SPI接口,所以初始化時要根據芯片手冊對SPI接口的I/O線、時鐘、工作模式

          等進行配置,才能保證硬件的正常工作。在SPI驅動的write函數中,使用了如下代碼:

          copy_from_user(Ytos,buf,count);

          在Linux的驅動設計中,經常涉及到用戶空間和內核空間的通信問題,即數據的交換。copy_from_user與copy_to_user函數就是為了實現這一功能。上述代碼實現的功能就是將用戶空間buf的count字節的內容復制到內核中定義的數組Ytos中,從而完成用戶空間和內核的數據交換。驅動的其余實現類似HPI,不再詳述。



        關鍵詞: 頻譜儀 內核通信

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 定襄县| 孙吴县| 新民市| 仁寿县| 友谊县| 康马县| 长汀县| 永靖县| 泰和县| 宜州市| 亚东县| 沽源县| 石城县| 奉新县| 丰县| 浦东新区| 平果县| 马山县| 博爱县| 洪湖市| 中江县| 高青县| 阿拉善左旗| 梨树县| 丰镇市| 孟村| 古丈县| 辽宁省| 贞丰县| 天门市| 漯河市| 泽库县| 望奎县| 长沙市| 策勒县| 巢湖市| 枣阳市| 楚雄市| 巩留县| 凤山县| 黔江区|