3.字符设备led驱动 - Mr_ox

Mr-ox 2021-08-21 原文


3.字符设备led驱动


1.硬件原理图

    

  由图可知,led1,led2,led3,led4,分别对应GPB5,GPB6,GPB7,GPB8,由s3c2440芯片手册可得到如下图所示,分别配置GPBCON和GPBDAT即可

       

2.open接口

  int first_chrdev_open(struct inode *inode, struct file *file)

  open方法提供给驱动来做初始化工作,从而准备后续的操作。大部分驱动中,open进行一下工作:

  - 检查设备特定的错误:设备没准备好,类似的硬件错误

  - 如果它第一次打开,初始化设备

  - 如果需要,更新f_op指针

  - 分配并填充要放进filp->private_data的任何数据结构

3.release接口函数

  - int (*open)(struct inode *inode, struct file *file)

  - 释放open分配在filp->private_data中的任何数据

  - 在最后的close关闭设备

4.write接口:

  - ssize_t (*write)(struct file *filp, const char _user *buffer, size_t count, loff_t *offset)

  - copy_from_user:把从用户空间传递下来的数据复制到内核空间

5.read接口:copy_to_user:把从用户空间传递下俩的数据复制到内核空间中

6.llseek接口:移动设备的文件指针

7.ioremap:把一段物理地址空间映射成虚拟地址空间

8.iounmap:释放ioremap得到的虚拟地址空间

 

posted on
2017-02-16 19:50 
Mr_ox 
阅读(130
评论(0
编辑 
收藏 
举报

 

版权声明:本文为Mr-ox原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/Mr-ox/p/6407346.html

3.字符设备led驱动 - Mr_ox的更多相关文章

  1. eclipse快捷键【大小写转换】 – yd_claire

    eclipse快捷键【大小写转换】 ctrl+shift+x   转为大写     ctrl+shift+y […]...

  2. java web实现手机短信验证码登录实例 – implementsException

    java web实现手机短信验证码登录实例 2019-09-26 14:11  implementsExcep […]...

  3. Zigbee开发(1) – you Richer

    Zigbee开发(1) 只是研究zigbee的技术,也许后续的博客不会有很及时的更新,有时间 写一点东西能让大 […]...

  4. 位运算(&、|、^、~、>>、<<)

      1.位运算概述 从现代计算机中所有的数据二进制的形式存储在设备中。即0、1两种状态,计算机对二进制数据进行 […]...

  5. codeblocks – 阳光-源泉

    codeblocks 在centos6.5-64中安装codeblocks集成开发环境 [root@local […]...

  6. 出现file not found的解决方案 – 裸奔派队

    出现file not found的解决方案 在build Setings 中搜索 system header […]...

  7. Python Print函数用法 – 毛小娃

    Python Print函数用法 Python print函数用法,print 格式化输出 使用print输出 […]...

  8. OutLook接收邮件的超时测试,原来可以等待很长...呵呵 – 电脑人生

    OutLook接收邮件的超时测试,原来可以等待很长...呵呵 2005-12-29 08:54  电脑人生  […]...

随机推荐

  1. mysql row size上限

    mysql row size上限 mysql innodb 的 row size上限 背景 在项目使用中,出现 […]...

  2. SEO 网站抓取和收录的那些事

    网站建好了,如何才能让搜索引擎收录网站?如果页面无法被搜索引擎收录,就意味着没有展示,也就无法竞争排名获取 S […]...

  3. python进阶(3)序列化与反序列化

    序列化与反序列化 按照某种规则,把内存中的数据保存到文件中,文件是一个字节序列,所以必须要把内存数据转换成为字 […]...

  4. Java开发必装的IntelliJ IDEA插件

    IDEA 插件简介 常见的IDEA插件主要有如下几类: 常用工具支持 Java日常开发需要接触到很多常用的工具 […]...

  5. .Net Core微服务入门全纪录(一)——项目搭建

    Tips:本篇已加入系列文章阅读目录,可点击查看更多相关文章。 前言 写这篇博客主要目的是记录一下自己的学习过 […]...

  6. 如何正确配置Nginx+PHP

    对很多人而言,配置Nginx+PHP无外乎就是搜索一篇教程,然后拷贝粘贴。听上去似乎也没什么问题,可惜实际上网 […]...

  7. Excel下三角图解的绘制

      Excel下三角图解的绘制     1.       问题由来 Microsoft Excel已经提供了大 […]...

  8. 50-C++对象模型分析(上)

    回归本质 class是一种特殊的struct: •  在内存中class依旧可以看作变量的集合 •  clas […]...

展开目录

目录导航