首先,我们可以查看Linux内核编译完成后的System.map文件,在这个文件中我们可以看到macb(dm9161驱动模块)链接到了dm9000驱动之前,如下所示: c03b6d40 t __initcall_tun_init6 c03b6d44 t __initcall_macb_init6 c ...
分类:
系统相关 时间:
2018-09-15 22:05:44
阅读次数:
266
对于嵌入式设备来说,合适的电源管理,不仅可以延长电池的寿命,而且可以省电,延长设备运行时间,在提高用户体验方面有很大的好处。所以,各个soc厂家在这方面花了很多的功夫。下面,我们可以看看linux是如何处理电源管理驱动的。 1、代码目录 2、查看目录下的Kconfig文件 menuconfig RE ...
分类:
系统相关 时间:
2018-09-14 23:16:22
阅读次数:
247
Linux驱动学习的最大困惑在于书籍的缺乏,市面上最常见的书为《linux_device_driver 3rd Edition》,这是一本很经典的书,无奈Linux的东东还是过于庞大,这本侧重于实战的书籍也只能停留在基本的接口介绍上,更深入的东东只能靠我们自己摸索了。但万事总有一个开头,没有对Lin ...
分类:
系统相关 时间:
2018-09-13 20:23:39
阅读次数:
263
在“CAN_485_Module_v1.x”硬件资料压缩包中,提供 Cadence 格式的原理图和PCB、AD 格式的原理图和 PDF 格式的原理图。485 模块的 linux 驱动是内核目录下的“drivers/char/max485_ctl.c”文件,默认内核镜像中已经包含该驱动。测试例程提供“ ...
分类:
系统相关 时间:
2018-09-12 11:14:51
阅读次数:
179
通用串行总线(USB)是主机和外围设备之间的一种连接。USB总线规范有1.1版和2.0版,当然现在已经有了3.0版本。USB1.1支持两种传输速度:低速为1.5Mbps,高速为12Mbps。USB2.0的传输速度可以高达480Mbps。USB2.0向下兼容USB1.1,可以将USB1.1的设备连接到 ...
分类:
系统相关 时间:
2018-09-05 09:11:34
阅读次数:
220
本篇博客分以下几部分讲解 1、介绍电阻式触摸屏的原理 2、介绍触摸屏驱动的框架(输入子系统) 3、介绍程序用到的结构体 4、介绍程序用到的函数 5、编写程序 6、测试程序 1、介绍电阻式触摸屏的原理 所谓的电阻式触摸屏,只不过是在LCD屏幕上贴了一层膜,这层膜的大小与LCD的尺寸刚好相同,它分为上下 ...
分类:
系统相关 时间:
2018-09-03 17:12:20
阅读次数:
268
1. 介绍 8250是IBM PC及兼容机使用的一种串口芯片; 16550是一种带先进先出(FIFO)功能的8250系列串口芯片; 16550A则是16550的升级版本, 修复了FIFO相关BUG, 也是目前比较常见的串口芯片. 2. 参考: ...
分类:
系统相关 时间:
2018-08-29 01:19:04
阅读次数:
552
Linux设备模型的目的:为内核建立一个统一的设备模型,从而有一个对系统结构的一般性抽象描述。换句话说,Linux设备模型提取了设备操作的共同属性,进行抽象,并将这部分共同的属性在内核中实现,而为需要新添加设备或驱动提供一般性的统一接口,这使得驱动程序的开发变得更简单了,而程序员只需要去学习接口就行 ...
分类:
系统相关 时间:
2018-08-23 20:09:27
阅读次数:
385
输入子系统由驱动层、输入子系统核心、事件处理层三部分组成。一个输入事件,如鼠标移动、键盘按下等通过Driver->Inputcore->Event handler->userspace的顺序到达用户控件的应用程序。 系统框图 假设打开一个字符设备驱动程序/dev/event0,event代表的是输入 ...
分类:
系统相关 时间:
2018-08-20 21:50:14
阅读次数:
249
机械按键在按下的过程中会出现抖动的情况,如下图,这样就会导致本来按下一次按键的过程会出现多次中断,导致判断出错。在按键驱动程序中我们可以这么做: 在按键驱动程序中我们可以这么做来取消按键抖动的影响:当出现一个按键中断后不会马上去处理它,而是延时一个抖动时间(一般10ms),如果在这个时间内再次出现中 ...
分类:
系统相关 时间:
2018-08-16 14:02:29
阅读次数:
225