開發環境:ubuntu16.04 64bit
Linux內核版本:linux-2.6.32.2
1、編寫mini2440_hello_module.c
在/linux-2.6.32.2/drivers/char目錄下,編寫mini2440_hello_module.c,代碼如下:
#include #include static int __init mini2440_hello_module_init(void) { printk("Hello yfw, Mini2440 module is installed !n"); return 0; } static void __exit mini2440_hello_module_cleanup(void) { printk("Good-bye yfw, Mini2440 module was removed!n"); } module_init(mini2440_hello_module_init); module_exit(mini2440_hello_module_cleanup); MODULE_LICENSE("GPL"); 2、修改Kconfig文件 編輯/linux-2.6.32.2/drivers/char目錄下的Kconfig文件(在內核代碼樹里增加該項),加入如下內容: config MINI2440_HELLO_MODULE tristate "Mini2440 module sample" depends on MACH_MINI2440 default m if MACH_MINI2440 help Mini2440 module sample. 3、修改Makefile文件 編輯/linux-2.6.32.2/drivers/char目錄下的Makefile文件,加入如下內容: obj-$(CONFIG_MINI2440_HELLO_MODULE) += mini2440_hello_module.o 4、配置內核 在 linux-2.6.32.2 目錄位置運行一下 make menuconfig在 DeviceDrivers -> Character devices 菜單中看到剛才所添加的選項了,我們選擇選項意為把該驅動編譯成模塊。 5、編譯模塊 到 linux-2.6.32.2 源代碼根目錄位置,執行 make modules。 編譯成功在mini2440_hello_module.c同一目錄下可以看到mini2440_hello_module.ko文件,此文件即是我們需要的模塊。 6、安裝模塊 U盤安裝: Linux內核配置對U盤的支持及掛載 將mini2440_hello_module.ko模塊拷貝到U盤,插入開發板。 掛載驅動: insmod /mnt/udisk/mini2440_hello_module.ko 卸載驅動: 常見錯誤 [root@H3-Studio=W]#insmod ./mini2440_hello_module.ko Unable to handle kernel paging request at virtual address e1d430b8 pgd = c3a34000 [e1d430b8] *pgd=00000000 Internal error: Oops: 80000005 [#1] last sysfs file: /sys/devices/virtual/sound/timer/dev Modules linked in: mini2440_hello_module(+) CPU: 0 Not tainted (2.6.32.2-FriendlyARM #11) PC is at 0xe1d430b8 LR is at sys_init_module+0x98/0x1e0 pc : [ sp : c3a33f88 ip : 00000000 fp : 00000000 r10: beb16cc8 r9 : c3a32000 r8 : c002a024 r7 : 0000095d r6 : 001c455c r5 : 00000000 r4 : bf000090 r3 : 00020074 r2 : 00000001 r1 : 00000000 r0 : 00000000 Flags: Nzcv IRQs on FIQs on Mode SVC_32 ISA ARM Segment user Control: c000717f Table: 33a34000 DAC: 00000015 Process insmod (pid: 727, stack limit = 0xc3a32270) Stack: (0xc3a33f88 to 0xc3a34000) 3f80: 001dcfd8 0000095d 001c455c 00000000 00000069 beb16cc4 3fa0: 00000080 c0029ea0 00000000 00000069 001dcfd8 0000095d 001c455c 00000000 3fc0: 00000000 00000069 beb16cc4 00000080 beb16cc8 001c455c beb16cc8 00000000 3fe0: 00000001 beb1696c 0001cb5c 000094f4 60000010 001dcfd8 33dc13dc 77dc17c8 Code: bad PC value ---[ end trace 069cf01c0e26c1e1 ]--- Segmentation fault [root@H3-Studio=W]# 注意:編譯內核要和開發板內核一致
上一篇:驅動開發之 LED(for mini2440)
下一篇:linux內核配置對U盤的支持 (for mini2440)
推薦閱讀
史海拾趣
Ampex Data Systems Group 是一家在電子行業中知名的公司,專注于提供數據存儲和處理解決方案。以下是關于Ampex Data Systems Group 公司發展的五個相關故事:
創立與早期發展:Ampex Data Systems Group 公司成立于20世紀50年代,總部位于美國加利福尼亞州的雷迪伍德城。公司最初致力于開發和制造磁帶錄音機和磁帶存儲設備,為音頻和視頻錄制領域提供解決方案。在成立初期,Ampex Data Systems Group 通過技術創新和產品質量贏得了客戶的信任和市場認可。
技術創新與產品多樣化:隨著數據存儲和處理技術的發展,Ampex Data Systems Group 不斷進行技術創新,擴展產品線。公司推出了一系列新型數據存儲和處理設備,包括磁帶驅動器、磁盤陣列、數據記錄器等。這些產品具有高性能、高可靠性和大容量的特點,適用于航空航天、國防、能源和科學研究等領域。
政府合同與軍事應用:Ampex Data Systems Group 與政府機構和軍事部門建立了緊密的合作關系,為其提供定制化的數據存儲和處理解決方案。公司參與了許多重要的國防項目,如雷達系統、導航系統、偵察系統等。Ampex Data Systems Group 的產品被廣泛應用于軍事通信、情報收集和戰術分析等領域,為國家安全和國防事業做出了貢獻。
國際市場拓展與合作伙伴關系:除了在美國市場的成功,Ampex Data Systems Group 還積極拓展國際市場,并與全球各種行業領先企業建立了合作伙伴關系。公司在歐洲、亞洲和其他地區設立了銷售辦事處和合作伙伴網絡,擴大了產品的市場份額和影響力。Ampex Data Systems Group 通過與國際合作伙伴的合作,共同推動了技術創新和產品發展。
持續發展與市場競爭力:Ampex Data Systems Group 持續致力于技術創新和產品研發,以保持在電子行業的競爭力。公司不斷投入資金和人力資源,加強研發能力,提升產品性能和品質。同時,Ampex Data Systems Group 還注重市場營銷和客戶服務,與客戶保持密切溝通,滿足其需求,并持續改進產品和服務,以適應市場變化和客戶需求。
這些故事展示了Ampex Data Systems Group 從成立初期到如今在技術創新、產品多樣化、政府合同與軍事應用、國際市場拓展與合作伙伴關系以及持續發展與市場競爭力等方面取得的重要進展。
機頂盒,全稱為數字視頻變換盒,是連接電視機與外部信號源的重要設備,具有高度的專業性和廣泛的科普意義。作為信息家電的一員,機頂盒不僅實現了數模轉換,讓用戶能夠在模擬電視上觀看數字電視節目,還通過接入互聯網,極大地豐富了電視節目的選擇,提升了觀看體驗。
從廣義上講,機頂盒涵蓋了從模擬頻道增補器到現代的數字衛星機頂盒(DVB-S)、數字地面機頂盒(DVB-T)、有線電視數字機頂盒(DVB-C)以及IPTV機頂盒等多種類型。這些機頂盒不僅接收來自有線電纜、衛星天線、寬帶網絡及地面廣播的信號,還提供了電子節目指南、網頁瀏覽等增值服務,使電視機成為了一個能夠與用戶進行互動的智能終端。
在技術層面,機頂盒的工作原理可概括為接收、解碼和顯示三個步驟。它首先通過內置的調諧器接收數字電視信號,隨后由內部的解碼器將信號轉換成電視可識別的視頻和音頻流,最終通過電視機呈現給用戶。隨著技術的不斷進步,機頂盒已能支持高清、甚至4K超高清視頻播放,為用戶帶來更為細膩的畫面和震撼的音效。
未來,機頂盒市場將繼續保持穩定增長態勢,技術創新與智能化將成為重要的發展方向。高清化、超高清化、人工智能及云計算等技術的應用,將使機頂盒不僅限于基本的電視信號接收與解碼功能,而是向智能化、多功能化方向邁進,為用戶提供更加便捷、智能的生活體驗。
Autotrol公司成立于1964年,最初是一家領先的可定制小功率齒輪馬達生產商。在初創時期,公司面臨著激烈的市場競爭和技術挑戰。然而,Autotrol憑借其卓越的技術實力和創新能力,成功開發出一系列具有競爭力的齒輪馬達產品,逐漸在市場中脫穎而出。公司不斷完善產品線,推出了永久磁鐵同步電動機、滯后電動機和直流齒輪馬達等,這些產品以其高效、穩定的性能贏得了客戶的信賴。
Eastron Corp一直重視人才的培養和引進。公司建立了完善的人才培養和激勵機制,鼓勵員工不斷學習和創新。同時,Eastron還積極引進國內外優秀人才,為公司的發展注入新的活力。正是憑借一支高素質、專業化的團隊,Eastron在電子行業中不斷取得新的突破。
面對日益激烈的國際競爭,Eastron Corp決定走全球化發展的道路。公司先后在亞洲、歐洲和北美等地設立了研發中心和生產基地,通過本地化生產和研發,快速響應市場需求。同時,Eastron還積極尋求與國際知名企業的合作,共同開發新技術和產品,提升了公司的國際競爭力。
Eastron Corp一直重視人才的培養和引進。公司建立了完善的人才培養和激勵機制,鼓勵員工不斷學習和創新。同時,Eastron還積極引進國內外優秀人才,為公司的發展注入新的活力。正是憑借一支高素質、專業化的團隊,Eastron在電子行業中不斷取得新的突破。
在論壇也逛了幾個月了,現在只知道芯幣可以下資料,而積分,威望和閱讀權限都不理解,只看著自己的這三個指標一點一點往長,呵呵,那位給解釋一下 [ 本帖最后由 zhangkai0215 于 2009-8-17 22:55 編輯 ]… 查看全部問答∨ |
|
讓GPRS模塊智能化,嵌入應用更輕松 目前GPRS模塊供應商,各自提供自己的標準品, 面對不同行業應用,用戶必須自己編寫軟件來 使用通信功能。這要求用戶必須熟悉GSM通信, 可能需要更改原有產品設計,用戶需要反復調試, 延長產 ...… 查看全部問答∨ |
|
在選GPRS數據傳輸模塊。有用過索愛GSM模塊的人,請對索愛GSM模塊進行一下評價。 另外Q24plus,G24,MC39I,GR64(索愛的)。 這幾款,哪個性能最佳(信號比較差的地方)???… 查看全部問答∨ |
為什么wince 6.0 platform builder service pack 1無法安裝 安裝完VS2005+VS2005-SP1+WINCE6.0后, 但,windows embedded ce 6.0 platform builder service pack 1不認前面已安裝好的“VS2005+VS2005-SP1+WINCE6.0 ”, 為什么“windows embedded ce 6.0 platform builder service pack 1”無法安裝? 系統 ...… 查看全部問答∨ |
esupermap 是object組件式 ,arcpad 不是object組件式 .要用腳本語言定制.請問有經驗的人哪種容易上手,只是做個畢業設計.… 查看全部問答∨ |
在嵌入式軟件開發過程中,一般來說,花在測試和花在編碼的時間比為3:1(實際上可能更多)。這個比例隨著你的編程和測試水平的提高而不斷下降,但不論怎樣,軟件測試對一般人來講很重要。很多年前,一位開發人員為了在對嵌入式有更深層次的理解,向Ora ...… 查看全部問答∨ |
才做的LM3S9B95最小系統,調試程序是出現如下錯誤Verify error at address 0x000000ED, target byte: 0x0D, byte in file: 0x06 Sun Jul 17 19:04:27 2011: Warning: Verify error at address 0x000000EF, target byte: 0x01, byte in file: ...… 查看全部問答∨ |