/*三星平台的gpio標頭檔案*/
/*三星平台exynose 系列標頭檔案*/
#include
#include
/*三星4412平台標頭檔案*/
#include
/*linux 申請標頭檔案*/
#include
#defind driver_name "hello_ctl";
#include
#include
// 驅動註冊的標頭檔案和裝置註冊的標頭檔案和解除安裝函式
#include
module_license
("dual bsd/gpl");
module_author
("xubaipei"
)struct platform_driver_hello_driver=};
static
struct file_operation hello_ops =
;static
struct miscdevice hello_dev =
;static
int hello_ioctl (
struct file *file ,
unsigned
int cmd,
unsigned
long arg)
if(arg >1)
gpio_set_value
(exynos4_gpl2(0
),cmd;
return0;
}static
inthello_release
(struct inode *inode,
struct file * file)
static
inthello_open
(struct inode *inode,
struct file * file)
static
inthello_probe
(struct platform_device *pdv)
// 三星平台配置 from to 設定為輸出
s3c_gpio_cfpin
(exynos4_gpl2(0
),s3c_gpio_output)
;gpio_set_value
(exynos4_gpl2(0
),0)
;return0;
}static
inthello_remove
(struct platform_device *pdv)
static
inthello_suspend
(struct platform_device *pdv)
static
void
hello_shutdown
(struct platform_device *pdv)
static
inthello_resume
(struct platform_device *pdv)
module_init
(hello_init)
;module_exit
(hello_exit)
;static
inthello_init
(void
)static
inthello_exit
(void
)
//將核心中的led 驅動去掉,編譯並燒寫
char
* device_node =
"/dev/hello_ctl"
;int
main
(void
)printf
(,hello_node)
;ioctl
(fd,1,
1);sleep(3
);ioctl
(fd,0,
1);sleep(3
);ioctl
(fd,0,
1);close
(fd)
;}
修改makefile 中生成檔案為led.o 編譯執行 嵌入式學習筆記(五) 驅動註冊
defind driver name hello ctl include include 驅動註冊的標頭檔案和裝置註冊的標頭檔案和解除安裝函式 include module license dual bsd gpl module author xubaipei struct platform dri...
嵌入式學習筆記
嵌入式系統定義 技術角度以應用為中心,以計算機技術為基礎,軟硬體可裁剪,應用系統對功能,可靠性,成本,體積,功耗,和應用環境有特殊要求的專用計算機系統系統角度 設計完成複雜功能的硬體和軟體並使其緊密契合在一起的計算機系統 實時在規定的時間內,完成規定的動作 紅帽linux 基本命令 ls 檢視當前目...
嵌入式學習筆記
1 3 買了兩本書鳥哥的 鳥哥的linux私房菜基礎學習篇 第三版 和偉山東的 嵌入式linux應用開發完全手 冊 暫時看不懂 4 看了王剛的 linux系統移植 第二版 實現了windows和linux虛擬機器的檔案的共享 2014 11 02 主機可以ping通虛擬機器,虛擬機器ping不通主機...