管理提醒: 本帖被 xoom 执行加亮操作(2011-09-13)
6410的开发板的EINT12外接了一个红外接收器,总想着把它利用起来,趁中秋休假,玩了一下。
小弟尝试利用以下三种方法完成驱动:
1.内核定时器
2.内核延时
3.6410本身的定时器
由于前两种方法的定时都有一定的局限性,所以利用6410的timer0来完成精确定时操作,不过这样的驱动也严重依赖平台。
有图有真相:
[attachment=2855]
源码附上,还请各位高手拍砖赐教。1.采用中断查询方式进行键码识别:
[attachment=2856]
采用driver状态机进行红外键码识别(由于Linux中断并不能实时响应,会有丢码现象):
[attachment=2948]
odanobunaga兄的“AP状态机+Drv波形记录”方式:
[attachment=2947]
[ 此帖被cole3在2011-10-05 10:58重新编辑 ]