码迷,mamicode.com
首页 > 其他好文 > 详细

第七章读书笔记

时间:2016-06-05 15:19:39      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:

led驱动的实现原理:

Linux内核提供了多个与I/O内存交互的函数,Linux的内核管理模块负责同I/O内存与硬件中的数据。

每一个连接Linux的硬件在与内存中都会有映射地址,开发板上的led也有其映射首地址。

创建一个设备文件的步骤:

第一步使用cdev_init函数初始化cdev

第二步指定设备号

第三步使用cdev_add函数,将字符设备添加到内核中的字符设备数组中

第四步使用class_create宏创建struct class

第五步使用device_create函数创建设备文件。

led驱动可以用如下两种方式控制led

(1)通过字符串控制led

(2)通过led控制led

编写代码时需要注意以下几点:

(1)4个led的状态(亮、灭)用一个长度为4的char数组存储,

(2)如果写入的字符串长度小于等4,直接写入这些字符串,如果字符串长度大于四则写入前4个字符。

(3)由于事先的mem数组已被清零,因此,如果写入的字符串长度小于4,则相当于后面的字符都是0。

(4)先GPMDAT寄存器写入数据之前最好先读取GPMDAT寄存器的当前值,并通过位与、位或等操作保留本次操作无关的值

第七章读书笔记

标签:

原文地址:http://www.cnblogs.com/nhdmmdxq/p/5560636.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!