点灯要求:
1)分部实现注册字符设备驱动
2)自动创建设备节点
3)通过结构体对led灯地址进行映射
4)次设备号完成私有数据传参
.h文件>>>
#ifndef __LED_H__
#define __LED_H__
#define CNAME "myled"
typedef struct
{
volatile unsigned int MODER;
volatile unsigned int OTYPER;
volatile unsigned int OSPEEDR;
volatile unsigned int PUPDR;
volatile unsigned int IDR;
volatile unsigned int ODR;
}gpio_t;
#define GPIOE (0x50006000)
#define GPIOF (0x50007000)
#define RCC (0x50000A28)
#endif
驱动程序源码>>>
#include <linux/init.h>
#include <linux/module.h>
#include <linux/cdev.h>
#include <linux/fs.h>
#include <linux/device.h>
#include <linux/slab.h>
#include <linux/uaccess.h>
#include <linux/io.h>
#include "led.h"
struct cdev *cdev;
struct class *cls;
struct device *dev;
#if 1
unsigned int major=0;