打印
[STM32F1]

触发不稳定

[复制链接]
楼主: chuxh
手机看帖
扫描二维码
随时随地手机跟帖
21
dengdc| | 2022-4-7 20:55 | 只看该作者 回帖奖励 |倒序浏览
你要测一个50MHz的信号?还是50Hz,还是电平,慢慢来,表达清楚。

使用特权

评论回复
22
chuxh|  楼主 | 2022-4-7 20:58 | 只看该作者
你好,我是想将一个输入针脚与一个输出针脚相接,输入针脚有外部中断,这样当我插拔其中任意一个针脚时,就会捕捉上升沿或者下降沿。

使用特权

评论回复
23
huangchui| | 2022-4-7 21:03 | 只看该作者
看你实时性不高

使用特权

评论回复
24
jlyuan| | 2022-4-7 21:06 | 只看该作者
就直接用一个定时器计时,每10ms时间到了,在中断外面,去读取IO状态,然后通过两次读取获得状态

使用特权

评论回复
25
pengf| | 2022-4-7 21:09 | 只看该作者
不需要外部中断。在中断中加入延时,如果你的延时是死等延时,系统实时性降低,且你逻辑有问题,假设插上上锁,拔掉解锁。

使用特权

评论回复
26
heweibig| | 2022-4-7 21:11 | 只看该作者
当你上锁时,因解锁进入中断,在10ms延时时因抖动进入上锁状态,然后直接退出第二条判断语句,然后直接到100ms延时,延时时间时状态稳定为解锁状态,然后清中断标志位,此时退出中断后,无法再进中断,且标志位也未更新,达不到效果。

使用特权

评论回复
27
dengdc| | 2022-4-7 21:13 | 只看该作者
我觉得你应该分开调试,单独输入中断脚插拔是否有问题

使用特权

评论回复
28
supernan| | 2022-4-7 21:20 | 只看该作者
你这样和输出连在一起测有点混淆,假如输出一直输出低怎么测试上升元。

使用特权

评论回复
29
chenjunt| | 2022-4-7 21:22 | 只看该作者
同时硬件上要保证满足中断的工作条件,可以用示波器观察状态。

使用特权

评论回复
30
zhaoxqi| | 2022-4-7 21:25 | 只看该作者
是不是移动电源上的负载插拔检测?

使用特权

评论回复
31
zwll| | 2022-4-7 21:27 | 只看该作者
如果你连简单的浮空输入是什么意思都不懂,得学习一下基础的电路知识了。否则,就不要做MCU底层驱动编程了。

使用特权

评论回复
32
dingy| | 2022-4-7 21:29 | 只看该作者
加一个RC电路吧,稳定点。

使用特权

评论回复
33
pengf| | 2022-4-7 21:32 | 只看该作者
不过你这逻辑我有点搞不明白,用单片机的IO去检测另一个IO,有点像脱裤子放屁似的,能用软件搞定的事就不要去动硬件了

使用特权

评论回复
34
jiajs| | 2022-4-7 21:35 | 只看该作者
手动按钮或插接件的地方都要加滤波电容,103--104,否则信号有抖动的。

使用特权

评论回复
35
jlyuan| | 2022-4-7 21:37 | 只看该作者
void LOCK_EXIT_IRQHANDLER(void)    //这是中断函数吗
{
         if(EXTI_GetITStatus(LOCK_EXIT_LINE) != RESET){
                 if(LOCK_STA != lockStatus){
                                delay_ms(10);    //延迟10ms
                         if(LOCK_STA != lockStatus){
                                if(!isUnLock){
                                        lockStatus = LOCK_STA;
                                        isUnLock = 1;
                                 }
                         }
                 }
         }
         delay_ms(100);   //延迟100ms
         EXTI_ClearITPendingBit(LOCK_EXIT_LINE);
}
如果上面的是中断函数,里面加这么久的延迟是不科学的,所以会出现异常现象

使用特权

评论回复
36
zwll| | 2022-4-7 21:39 | 只看该作者
用示波器看看不就明白了...我猜加上示波器就好了

使用特权

评论回复
37
chuxh|  楼主 | 2022-4-7 21:41 | 只看该作者
确实,程序有问题,谢谢你了

使用特权

评论回复
38
chuxh|  楼主 | 2022-4-7 21:47 | 只看该作者
正常中断里加延时多少以内最好呢,盼赐教!

使用特权

评论回复
39
supernan| | 2022-4-7 21:50 | 只看该作者
手动插拔抖动会很严重的。

使用特权

评论回复
40
yufe| | 2022-4-7 21:53 | 只看该作者
输入IO不要配置浮空输入!!

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则