Linux驅動 LED驅動測試

2021-06-19 01:40:48 字數 2680 閱讀 7555

環境:

主機:fedora12

目標板:mini6410

目標板linux核心版本:2.6.38

實現功能:

驅動目標板4個led.

說明:

led與6410引腳對應連線:

led1---gpk4

led2---gpk5

led3---gpk6

led4---gpk7

驅動源**:

led_driver.c:

[cpp]view plain

copy

#include 

#include 

#include 

//#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#include 

#define device_name "led_driver"

#define t_majors    700

static

struct cdev fun_cdev;  

static dev_t dev;  

static

struct

class    *led_class;  

//功能:初始化io

static

void init_led(void)  

//功能:ioctl操作函式

//返回值:成功返回0

static

long led_driver_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)  

else

writel(temp,s3c64xx_gpkdat);  

return 0;  

}  static

struct file_operations io_dev_fops = ;  

static

int __init dev_init(void)  

device_create(led_class, null, dev, null, "led_driver");   

return ret;  

}  static

void __exit dev_exit(void)  

module_init(dev_init);  

module_exit(dev_exit);  

module_license("gpl");  

module_author("jdh");  

使用者程式:

test_led.c

[cpp]view plain

copy

#include 

#include 

#include 

#include "stdio.h"

#include "sys/types.h"

#include "sys/ioctl.h"

#include "stdlib.h"

#include "termios.h"

#include "sys/stat.h"

#include "fcntl.h"

#include "sys/time.h"

#include 

#include 

int main(int argc, char** argv)  

strcpy(temp,argv[1]);    

led_num = atoi(temp);    

strcpy(temp,argv[2]);    

led_value = atoi(temp);   

printf("%d %d\n",led_num,led_value);  

ioctl(fd,led_num,led_value);  

close(fd);  

return 0;  

}  

測試說明:

將編譯所得的可執行檔案test_led上傳到開發板

執行:./test_led 0 1 開啟led1

./test_led 1 1 熄滅led1

linux驅動之 led驅動

練手,第乙個字元驅動.用模組載入方法 華清遠見 嵌入式linux裝置驅動開發詳解 的 拿來改的.編譯過程發現很多錯誤.最後發現 這本書帶的驅動 都是基於linux2.4的.目前我用的linux2.6,部分需要做修改.我的板子是 友善之臂的 2410.vmware ubuntu nfs交叉編譯 首先 ...

Linux驅動 12 LED驅動

2.呼叫led驅動 1.1 led管腳的呼叫配置函式 gpio request gpio申請函式 gpio set value gpio賦值函式 s3c gpio cfgpin gpio配置函式,比如配置成輸入模式或者輸出模式 三星平台 s3c gpio output gpio配置成輸出模式的巨集定...

led 驅動程式測試

1.首先驅動程式檔案通過tftp傳輸到開發板上,然後執行insmod s3c led.ko 裝載led驅動模組 2.cat proc devices grep led,顯示led 250 3.建立裝置節點 mknod dev led0 c 250 0 mknod dev led1 c 250 1 m...