色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁 > 模擬技術(shù) > 設(shè)計應(yīng)用 > 頻譜儀多種內(nèi)核通信機制的方案設(shè)計

          頻譜儀多種內(nèi)核通信機制的方案設(shè)計

          作者: 時間:2012-04-12 來源:網(wǎng)絡(luò) 收藏
          4.1.5 模塊的編譯、加載

            在驅(qū)動文件的最后加上如下代碼,設(shè)置模塊加載與釋放對應(yīng)的函數(shù):

            module_init(hpi_init);

            module_exit(hpi_exit);

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

            4.2 SPI設(shè)備驅(qū)動程序?qū)崿F(xiàn)

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

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

            copy_from_user(Ytos,buf,count);

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



          關(guān)鍵詞: 頻譜儀 內(nèi)核通信

          評論


          相關(guān)推薦

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

          關(guān)閉