社区
嵌入开发(WinCE)
帖子详情
写WINCE 按键驱动
wdw1600
2009-02-12 10:33:08
现在要写一个WINCE按键驱动,6个按键占用6个外部中断。没做过不知道怎么下手,请大家给点指点建议,指个架构最好。我看了WINCE键盘驱动不过好像用不上。
...全文
1168
29
打赏
收藏
写WINCE 按键驱动
现在要写一个WINCE按键驱动,6个按键占用6个外部中断。没做过不知道怎么下手,请大家给点指点建议,指个架构最好。我看了WINCE键盘驱动不过好像用不上。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
29 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
iusarg
2009-02-18
打赏
举报
回复
楼上的方法值得一试,学习一下
xajhuang
2009-02-18
打赏
举报
回复
Drivers 目录下的 dir 文件看看有没有包含你驱动的目录名称
wdw1600
2009-02-18
打赏
举报
回复
我那个加方法据说是错误的,我新开的一贴上面说了我是怎么弄的。
现在我得重新弄
wdw1600
2009-02-17
打赏
举报
回复
哦,谢谢各位!
我现在是修改了CFW.C里面和ARMINIT.C里面有关部分,我就是把中断号从eint0改成int18了,结果没的反应,明天自己写个简单的驱动测试算了,不用他那个bsp里的,硬件差别大,他那个是电源按键驱动,有硬件模块支持的。
wdw1600
2009-02-17
打赏
举报
回复
呵呵,我今天也问了老师了改版的话键盘会不会变,他说不变了i/o够用。。。
今天我终于把gooogleman说的那个驱动弄成功了,以前问题出在我按键中断号和CS8900一样了,我把CS8900屏蔽了,我们没那个硬件。
不过我自己编的怎么都不行,就连KEY_INIT这个函数都没运行过,我程序在PB界面左边栏目里显示个(exclude build)
不晓得啥意思
AMOROUS
2009-02-17
打赏
举报
回复
9315本来有矩阵键盘接口,而且驱动也有键盘的驱动,所以我们直接改键盘表定义就行了,呵呵
gooogleman
2009-02-16
打赏
举报
回复
改动中断是要改动OAL的代码的,你的是4.2BSP,必须改。
jgj58
2009-02-16
打赏
举报
回复
楼主可以变换一下思路:不一定非要用中断实现,说实在用那么多中断怪可惜的~
扬创2440的开发板的键盘驱动用的是低级键盘钩子技术,非常简单使用,可以参考一下的
wdw1600
2009-02-15
打赏
举报
回复
我就是奇怪DLLENTRY函数不停的运行是什么意思
wdw1600
2009-02-15
打赏
举报
回复
哦,程序还是BSP里的程序,只是我把中断号改了,
gooogleman
2009-02-14
打赏
举报
回复
只给出结果,无法提示。
wdw1600
2009-02-14
打赏
举报
回复
大侠们,给点提示吧
wdw1600
2009-02-13
打赏
举报
回复
自己顶一下
xajhuang
2009-02-13
打赏
举报
回复
就是多占用了一个 IO。
xajhuang
2009-02-13
打赏
举报
回复
[Quote=引用 10 楼 constantine 的回复:]
6个键你就用了6个中断,是不是浪费了点啊。
我们都是直接用iic接zlg7290做键盘,一个中断就够了,然后写个驱动读取键盘值,注册一个全局消息,通过全局消息发送给应用程序。
[/Quote]
还有一个跟节约成本的方法 可以把 6 个键连成一个 矩阵。 2 x 3 就行,然后把中断用或门并到一个中断上去,中断触发后就去查询矩阵,判断是那个键按下就行了。我就是这样做的。
gooogleman
2009-02-13
打赏
举报
回复
我觉得使用constantine老兄的这个方法好。
至于为什么要用虚拟地址嘛,说来话长,我以前发了基本ARM官文的电子书,讲得比较明白。
xajhuang
2009-02-13
打赏
举报
回复
给你个建议,要是你现在是 6 个按键接了 6 个中断的话,我觉得你完全不需要用中断,直接当普通 IO 查询状态就行了。这样更简单。
wdw1600
2009-02-13
打赏
举报
回复
谢谢楼上几位的释疑!虚拟地址我是知道的,就是不太清楚为什么要用,9楼解释的非常详细,thank you。
我们那个板子是老师昨年早就设计好了,反正外部中断也用不完。就没有扩展了。
PWRBTN那个文件夹找到了,里面是按键驱动。。。我以前不知道里面是按键驱动。thanks everybody。
constantine
2009-02-13
打赏
举报
回复
6个键你就用了6个中断,是不是浪费了点啊。
我们都是直接用iic接zlg7290做键盘,一个中断就够了,然后写个驱动读取键盘值,注册一个全局消息,通过全局消息发送给应用程序。
xajhuang
2009-02-13
打赏
举报
回复
[Quote=引用 8 楼 gooogleman 的回复:]
wince下都是虚拟地址。不用的话不能正确访问。
[/Quote]
估计楼主不了解什么叫虚地址,借用楼上的话,我给你一个形象的解释。就是 WinCE 用了一种方式把寄存器的地址修改过了,比如把0x3000000修改成0x80000000,原来芯片寄存器的地址就不能再使用了。要用的话就需要用 WinCE 提供的函数去计算出对应的地址,就是 VirtualAlloc VirtualCopy VirtualFree 这类的东西。
加载更多回复(9)
WinCE
按键
中断
驱动
源码
WinCE
按键
中断
驱动
源码,EVC++编译通过。可以直接用于工程设计中。
2440a
wince
5.0 gpio键盘
驱动
例子
2440a
wince
5.0 gpio键盘
驱动
例子
winCE
外部中断
按键
驱动
s3c6410+
wince
6.0 平台下外部中断模式的
按键
驱动
ok6410
按键
驱动
主机环境:Ubuntu12.04 目标机: 飞凌-OK6410-A 内核3.0.1 编译环境:arm-linux-gcc-4.3.2 两套
按键
驱动
和测试程序详解,很适合初学者使用,本人亲自测试
基于S3C2440
按键
操作映射
WINCE
通用键盘事件的
驱动
开发
一种把接到S3C2440GPIO接口的
按键
操作映射为
WINCE
环境下通用键盘事件的实现方法,解决了在
WINCE
操作系统下通用
驱动
不支持用户设计的个性电路的
驱动
问题,简化了应用层面的程序开发。
嵌入开发(WinCE)
19,502
社区成员
41,568
社区内容
发帖
与我相关
我的任务
嵌入开发(WinCE)
硬件/嵌入开发 嵌入开发(WinCE)
复制链接
扫一扫
分享
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章