找回密码
 注册
搜索
查看: 1695|回复: 11

[讨论] 大家做底层就只管什么LCD的吗?EINT的问题,急,真正的高手出来帮帮手啊

[复制链接]
发表于 2008-1-18 11:09:58 | 显示全部楼层 |阅读模式
现在我先不求FIQ及时序问题,
我想先有高手帮我理下,EINT做IRQ处理时候的内部流程!
发表于 2008-1-18 11:47:42 | 显示全部楼层
我也想知道
点评回复

使用道具 举报

发表于 2008-1-21 18:39:53 | 显示全部楼层
对照触摸屏或者霍尔开关的中断代码看看就够了~
点评回复

使用道具 举报

 楼主| 发表于 2008-1-21 19:56:56 | 显示全部楼层
还是有个问题,EINT是否能指定边沿触发,如果可以,该怎么做,我只要一个上升沿触发,那我该怎么做
点评回复

使用道具 举报

发表于 2008-1-22 11:12:47 | 显示全部楼层
EINT有个寄存器,能设置是边沿触发还是电平触发,这要看具体的bb了,对于mtk的bb来说还有个寄存器能设置是下降沿触发还是上升沿触发。
EINT Sensitive Register
点评回复

使用道具 举报

 楼主| 发表于 2008-1-23 09:24:06 | 显示全部楼层
yxj5421 大哥说话说一半,要是知道具体怎么去配置,我也不会发贴问了,EINT是有配置边沿还是电平寄存器,也有配置高电平还是低电平触发寄存器,就是没有找到配置上升下降沿触发寄存器的
点评回复

使用道具 举报

发表于 2008-1-24 10:16:22 | 显示全部楼层
是否可以使用软件控制响应!
例如,EINT第一次是上升触发,那么下一次执行肯定是下降触发
下降触发时,软件不往下处理,而只是修改标志位。
下次中断时,根据标志位来判断时上升触发的,还是下降触发的。
点评回复

使用道具 举报

发表于 2008-1-26 15:09:08 | 显示全部楼层
[em01]
点评回复

使用道具 举报

发表于 2008-1-29 16:43:39 | 显示全部楼层
使用ENIT5
eint5_signal_polarity = KAL_FALSE;
EINT_Registration(5, KAL_FALSE, eint5_signal_polarity, Eint_Callback, KAL_FALSE);
EINT_Set_Sensitivity(5, EDGE_SENSITIVE);
设置为边沿触发,第一次设置为下降沿触发即eint5_signal_polarity = KAL_FALSE
如果需要第二次为上升沿触发,就需要在中断程序里面设置:
void Eint_Callback(void)
{
                eint5_signal_polarity = !eint5_signal_polarity;
                EINT_Set_Polarity(5,eint5_signal_polarity);
                EINT_UnMask(5);
点评回复

使用道具 举报

发表于 2008-1-29 18:34:31 | 显示全部楼层
这个问题比lcd难吗?感觉MTK想改东西不容易。整合的东西太多了。
点评回复

使用道具 举报

 楼主| 发表于 2008-1-31 17:52:30 | 显示全部楼层
其实是我想把EINT的中断定义为FIQ中断,而不是用默认的IRQ中断,但现在看来没有人能帮忙搞定啊!FIQ配置后根本就跑不了直接重启,连出错的地方都不知道
点评回复

使用道具 举报

发表于 2008-2-2 11:42:14 | 显示全部楼层
要设置FIQ,必须把相关的中断挂到FIQ上.以外部EINT来看,是没有挂在FIQ上面的.而发生重启的问题估计是FIQ来了后,没有找到相应的处理函数而死机了.注意FIQ的使用不能用在慢速度的中断上,一般是用在audio, DMA上.不是非常紧的不能放在上面.系统函数在上面调用都可能产生死机问题.
点评回复

使用道具 举报

高级模式
B Color Image Link Quote Code Smilies

本版积分规则

Archiver|手机版|小黑屋|52RD我爱研发网 ( 沪ICP备2022007804号-2 )

GMT+8, 2024-11-15 20:27 , Processed in 0.048561 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表