vxworks添加键盘的data access访问错误

本文详细记录了在处理UGLInputDevControl函数时遇到的问题,该函数导致LCD显示异常。通过注释掉该函数,LCD恢复正常显示。原因在于未明确指定设备类型,更正代码后问题得以解决。
instruction access
Exception next instruction address: 0x400026c0
Machine Status Register: 0x4000b032
Condition Register: 0x40000480

按CTRL+C键,出现一下的状况
0x000640ec vxTaskEntry  +0x48 : 0x0012b520 ()
0x0012b520 shellTask    +0x4f0: shellExec ()
0x0012af84 shellExec    +0x1c4: 0x001215a8 ()
0x001217dc shellInterpCparse+0x10e4: shellInterpCparse ()
0x00121298 shellInterpCparse+0xba0: 0x0011d874 ()
0x0011d89c shellInterpCInit+0x13e8: 0x0011d568 ()
0x0011d590 shellInterpCInit+0x10dc: 0x0011d3f0 ()
0x0011d4ac shellInterpCInit+0xff8: shellInternalFunctionCall ()
0x00118fbc shellInternalFunctionCall+0xa4 : windMLExampleBasic ()
0x00047e20 windMLExampleBasic+0x30 : uglDisplayOpen ()
0x0004d6bc uglDisplayOpen+0x3c : uglDisplayOpenByNumber ()

0x0004d448 uglDisplayOpenByNumber+0x3ec: uglInputDevControl ()


我仔细跟踪了一下发现uglInputDevControl 函数出现问题,然后我将其注释掉,lcd能正常显示了


data access
Exception current instruction address: 0x00150f54
Machine Status Register: 0x0000b032
Data Access Register: 0x400026c0
Condition Register: 0x40000242
Data storage interrupt Register: 0x40000000
Task: 0x257dbf0 "tUglInputDevMgmt"
0x257dbf0 (tUglInputDevMgmt): task 0x257dbf0 has had a failure and has been stopped.

0x257dbf0 (tUglInputDevMgmt): fatal kernel task-level exception!

原因是太粗心了,没指明设备类型。

    pDevice->inputDevice.deviceType = UGL_DEVICE_KEYBOARD;
    pDevice->inputDevice.pDriver = pDriver;



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值