LED驱动的实现原理:尽管liunx驱动直接与硬件打交道,但并不是linux驱动直接向硬件中的硬件中的内存些数据,而是与本机的I/O内存进行交互,所谓I/O内存是通过各种接口连接到主机的硬件在主机内存中的映射。liunx内核提供了多个与I/O内存交互的函数,每一个连接liunx的硬件在I/O内存中都会有映射首地址。开发板上的led也有其首地址。
编写LED驱动:创建led驱动的设备文件
1.使用cdev-init函数初始化cdev
2.指定设备号
3.使用cdev-add函数将字符设备添加到内核中的字符设备数组中
4.使用class-creat宏创建struct class
5.使用device-creat函数创建设备文件
卸载led驱动的设备文件:
设置寄存器与初始化led驱动:
控制led:可以通过字符串控制led,可以通过I/O命令控制led