最近看了《Linux设备驱动详解这本书》,简单总结Linux设备驱动开发的一些基础知识。
分类:
系统相关 时间:
2020-08-25 18:38:10
阅读次数:
58
2020-02-15 关键字: Linux 中输入设备大致可分以下几种: 1、按键/键盘(keyboard) 2、鼠标(mouse) 3、触摸屏(touchscreen) 4、游戏杆(joystick) 输入子系统的目的是为了屏蔽众多输入设备在硬件上的差异化,使得在开发输入设备的程序时能更简单统一。 ...
分类:
系统相关 时间:
2020-02-15 18:32:04
阅读次数:
111
2020-02-14 关键字:Linux驱动中的probe函数是如何执行的 1、设备驱动模型 嵌入式 Linux 驱动开发往往都是按照如下的步骤来进行的: 1、实现入口函数 xxx_init() 和卸载函数 xxx_exit() 2、申请设备号 register_chrdev() 3、创建设备文件节 ...
分类:
系统相关 时间:
2020-02-14 18:51:21
阅读次数:
81
前面的队列以及锁都是基于阻塞是的操作。要实现同步,还可以通过信号也就是异步的方式来进行。例如在往文件的写入字符后,发送一个信号。捕捉到信号后执行动作。这样就不会造成阻塞,之前的阻塞性IO和POLL,是调用函数进去检查,条件不满足是造成阻塞。 应用层启动异步通知机制就三个步骤: 1 调用signal函 ...
分类:
系统相关 时间:
2020-02-09 11:51:12
阅读次数:
100
我使用了两种驱动开发的模型来写了smart210上的按键驱动程序,这里做一下总结以及提供他人参考以及建议和改进,最后一个原因是自己很久没有写过博客了,现在想分享一下linux驱动开发程序的编写。 首先是Linux的中断处理机制。裸机开发中,通过中断标识一个函数指明该函数是中断处理函数,在编译器处理时 ...
分类:
系统相关 时间:
2020-01-17 22:44:26
阅读次数:
120
在Linux 驱动程序中,可以使用等待队列来实现阻塞进程的唤醒。等待队列的头部定义如下,是一个双向列表。 struct list_head { struct list_head *next, *prev; }; struct __wait_queue_head { spinlock_t lock; ...
分类:
系统相关 时间:
2019-11-18 20:34:56
阅读次数:
111
作为Linux驱动开发的小白搭建整个开发环境是至关重要的一步,鄙人是从裸机程序直接跳转到驱动里面来的,裸机到驱动的衔接没怎么看,所以在刚开始驱动的时候搭环境遇到了大麻烦,不过还是在坚持中挺过来了,还得感谢博客园Nqian博主的支持, 大家可以看看他的文章非常好,还可以和博主交流 网址:https:/ ...
分类:
其他好文 时间:
2019-04-22 22:28:24
阅读次数:
172
嵌入式学习是一个循序渐进的过程,如果是希望向嵌入式软件方向发展的话,目前最常见的是嵌入式Linux方向,关注这个方向,我认为大概分3个阶段: 1、嵌入式linux上层应用,包括QT的GUI开发2、嵌入式linux系统开发3、嵌入式linux驱动开发 嵌入式目前主要面向的几个操作系统是,LINUX,W ...
分类:
其他好文 时间:
2019-01-16 22:43:04
阅读次数:
203
嵌入式学习是一个循序渐进的过程,如果是希望向嵌入式软件方向发展的话,目前最常见的是嵌入式Linux方向,关注这个方向,大概分3个阶段:嵌入式学习的几种线路图1、嵌入式linux上层应用,包括QT的GUI开发2、嵌入式linux系统开发3、嵌入式linux驱动开发嵌入式目前主要面向的几个操作系统是,LINUX,WINCE、VxWorks等等Linux是开源免费的,而且其源代码是开放的,更加适合我们学
分类:
其他好文 时间:
2018-11-22 18:14:34
阅读次数:
195
随着互联网的快速发展,嵌入式也越来越火热,更多的人投入到嵌入式开发的行列中来,那么想要学习嵌入式,该从哪里入手学习,嵌入式学习路线图怎么学? 想要学习好嵌入式,想成为嵌入式软件工程师。那么当前企业需要哪些技术呢? 1.嵌入式上层的软件应用开发 需要:精通嵌入式Linux C语言编程、嵌入式Linux ...
分类:
其他好文 时间:
2018-11-20 18:17:36
阅读次数:
209