最近一直在研究怎样在嵌入式开发板上移植linux嵌入式系统,但是不太想花费太多钱购买开发板。然后在网上搜索相关的arm模拟器。有qemu,skyeye,armulator等,在按照网上教程一步一步实践的过程中,由于系统环境的不一致等各方面的原因,导致开发环境部署失败。无意间了解到docker技术可以 ...
分类:
系统相关 时间:
2017-01-08 15:26:49
阅读次数:
425
背景: Linux嵌入式设备内核挂死后,无法自动重启,需要手动重启。而且如果当时没有连串口的话,就无法记录内核挂死时的堆栈,所以需要添加一种方式来记录内核挂死信息方便以后调试使用。设备中增加kdump功能,可以将内核挂死的堆栈信息记录下来,供后期分析。操作步骤: 1、添加kdump所需的程序及配置文 ...
分类:
其他好文 时间:
2016-12-02 03:21:50
阅读次数:
532
什么是嵌入式系统?手机就是一个典型的嵌入式系统。嵌入式计算机的应用比个人电脑要多得多。事实上,最近的市场数据显示,个人计算机使用的微处理器芯片只占每年市场份额的2%。普通的房间即使没有个人电脑,也至少有几十个嵌入式计算机。什么是实时?实时系统处理的正确性不仅..
分类:
系统相关 时间:
2016-11-17 21:25:39
阅读次数:
189
字符设备驱动程序 应用程序是调用C库中的open read write等函数。而为了操作硬件,所以引入了驱动模块。 构建一个简单的驱动,有一下步骤。 1. 创建file_operations 2. 申请设备号 3. 注册字符设备驱动, 4. 驱动入口 5. 驱动出口 检查数据是否到来的方式: 1. ...
分类:
系统相关 时间:
2016-11-05 18:08:19
阅读次数:
287
触摸屏使用流程: 1. 按下产生中断。 2.在中断处理程序中启动AD转换XY坐标。 3.AD转换结束并产生AD中断。 4. 在AD的中断处理函数中上报信息,启动定时器。 5. 定时器时间到后进入中断,处理长按滑动。跳转到第二步 6. 松开。 sd ...
分类:
系统相关 时间:
2016-11-03 23:11:43
阅读次数:
273
以前写的一些输入设备的驱动都是采用字符设备处理的。问题由此而来,Linux开源社区的大神们看到了这大量输入设备如此分散不堪,有木有可以实现一种机制,可以对分散的、不同类别的输入设备进行统一的驱动,所以才出现了输入子系统。 输入子系统引入的好处: (1)统一了物理形态各异的相似的输入设备的处理功能。例 ...
分类:
系统相关 时间:
2016-10-27 10:20:52
阅读次数:
195
在之前的定时器驱动程序中,我们发现在连续按下按键的时候,正常情况下应该是一次按下对应一次松开。而程序有时候会显示是两次按下,一次松开。这个问题是因为在按下的时候,因为是机械按键,所以电压信号会产生一定的波动,会让程序进行两次中断,如何解决这个问题呢? 我们可以在发生一次中断之后等待一段时间再去判断按 ...
分类:
系统相关 时间:
2016-10-27 10:12:28
阅读次数:
281
首先应用程序执行poll函数 kernel中的sys_poll do_sys_poll init_poll_funcptr-->do_poll do_poll for(;;) { if(do_pollfd(pfd,pt)) { count++; //如果驱动的poll返回非0值,那么count++ ...
分类:
系统相关 时间:
2016-10-26 14:19:26
阅读次数:
373
轮询方式: 和led驱动不同的是在配置IO引脚的时候,把LED的输出引脚换成输入,在read函数中向外发送io的状态。必须由应用程序不断的来查询当前IO口的状态来判断。 中断方式: sd ...
分类:
系统相关 时间:
2016-10-25 18:41:31
阅读次数:
142
首先贴上代码: 字符设备驱动代码: 模块的Makefile: 测试文件: sd ...
分类:
系统相关 时间:
2016-10-25 09:43:04
阅读次数:
323