如何開始寫嵌入式linux裝置驅動程式

2021-05-23 13:24:29 字數 1137 閱讀 8193

一,開發環境的建立:

1.準備核心:

將開發板上的linux核心解壓到乙個目錄如linux2410

#make menuconfig 配置核心

#make  zimage  編譯核心,如果不編譯,是無法通過驅動程式的編譯的,請記住。

2.準備交叉編譯工具

將arm-linux編譯工具解壓到/usr/local/arm下,或者你自己的任何乙個目錄.

3. 編寫裝置驅動程式。

4.寫編譯的makefile.,如下:(注意make行要用tab鍵後退,這是makefile的常識)

ifeq ($(kernelrelease),)

kerneldir:=  /media/data/data/2410/linux2410/                #這是你編譯的核心目錄.

pwd := $(shell pwd)

cross_compile := /usr/local/arm/3.3.2/bin/arm-linux-

cc := $(cross_compile)gcc

ld := $(cross_compile)ld

modules:

$(make) -c $(kerneldir) m=$(pwd) modules

modules_install:

$(make) -c $(kerneldir) m=$(pwd) modules_install

clean:

rm -rf *.o *~ core .depend .*.cmd *.ko *.mod.c .tmp_versions

.phony:

modules modules_install clean

else

obj-m := gpio.o

endif 

5. 編譯核心.

6.載入核心

#insmod ***.ko

#mknod  "device name"  c 33 0  //後面的引數 c表示字元裝置, 33表示主裝置號,0表示次裝置號。自己訂吧.

7. 寫測試程式測試驅動.

特別注意事項:

編譯的環境一定要同板一致.可以用modinfo ***.ko  檢視相關的版本資訊。否則insmod 時會說格式出錯!!!!!!!!!!!!

學習嵌入式LINUX的開始

初次在大二下學期自學了微控制器,但是也不是玩的很好,只能說有點基礎不至於什麼都看不懂。也是從這個時候開始,對於這方面有了一點興趣,在大三的時候又開了嵌入式的課程,說實話的講,從上大學以來這是我聽的最認真,最認真的一門課,沒有之一。因為有了微控制器自學的基礎,看東西,聽東西,都有著乙個框架。又再大三下...

什麼是嵌入式裝置? 嵌入式裝置的定義

區別於通用計算機的其他裝置都可以稱之為嵌入式裝置 個人電腦,伺服器 一段時期內,必備的硬體配置。底層驅動開發 關鍵字 bsp 嵌入式linux wince vxworks 上層應用開發 關鍵字 posix jd以嵌入式linux系統開發為例 熟悉常見外設,匯流排的linux驅動開發 微控制器,m3,...

ssl證書 嵌入式裝置 嵌入式裝置支援https

2.openssl 1.0.1i.tar.gz 一 一般編譯 沒有ssl支援 1.配置如下 2.把它複製到開發板 usr sbin目錄 然後複製下列檔案 3.放置網頁檔案 4.測試 default 2 main default 2 main host localhost default 2 main...