单片机
返回首页

1_5.5.5_字符设备驱动程序之查询方式的按键驱动程序_P

2021-08-21 来源:eefocus

目的:按键驱动,通过查询的方式获取按键值。


写出框架:

a.file_operation结构体;

b.入口函数中注册file_operation结构体,出口函数中卸载;

c.给sysfs提供更多的信息,用来给udev自动创建设备节点(创建一个class,在这个class下面创建class device);

硬件操作;

a.看原理图,引脚;

b.看2440的手册;

c.编程:单片机:使用物理地址;驱动:使用虚拟地址;(UA = ioremap(PA, size))

操作:在入口函数做地址映射,在open函数中配置引脚,在read函数中读取引脚状态。


内核态向用户态传数据,使用copy_to_user函数。

test函数中使用read函数进行读取,该函数最终调用内核中注册的second_drv_read函数。

使用./seconddrvtest & 让它在后台运行,然后用top指令查看,可以发现seconddrvtest 对CPU的占用率达到了99%,这是因为我们一直在while(1)中循环,所以CPU一直就在执行这一个进程。

这样做明显是不行的,但是按键的按下经常是不可以预测。使用轮询的方式来查询按键是否按下是很糟糕的做法,正常的做法是在中断中进行判断和操作。

进入单片机查看更多内容>>
相关视频
  • RISC-V嵌入式系统开发

  • SOC系统级芯片设计实验

  • 云龙51单片机实训视频教程(王云,字幕版)

  • 2022 Digi-Key KOL 系列: 你见过1GHz主频的单片机吗?Teensy 4.1开发板介绍

  • TI 新一代 C2000™ 微控制器:全方位助力伺服及马达驱动应用

  • MSP430电容触摸技术 - 防水Demo演示

精选电路图
  • PIC单片机控制的遥控防盗报警器电路

  • 红外线探测报警器

  • 短波AM发射器电路设计图

  • 使用ESP8266从NTP服务器获取时间并在OLED显示器上显示

  • 开关电源的基本组成及工作原理

  • 带有短路保护系统的5V直流稳压电源电路图

    相关电子头条文章