完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
如题所述:
STM8S设置成活跃停机模式,使用红外下降沿唤醒并解码,IO具体配置为,PC4浮空输入,外部上拉,下降沿触发。 8M外部晶振,tiM2 32分频 2us时基 无溢出中断,用于两个下降沿之间的时间计数,正常的话前导码13.5ms,逻辑1 2.25ms,逻辑0 1.12ms 问题描述: 未进入活跃停机之前,红外中断触发正常,如图接收32bit红外码(忽略第一个数据),码值是0x0202d02f 之后,进入活跃停机后,再按下遥控,除了唤醒的第一个中断外,其余中断都变的不正常, 完全不匹配红外的时间间隔,时间间隔貌似大了十倍,如图是halt()后,用红外唤醒的中断间隔数据 软件描述: 软件的处理比较简单,以验证为主,上电后awu_flag为真就进入活跃停机状态,进入前关闭无关中断,把系统时钟切换到内部HSI,2分频 8M,等待遥控唤醒,如果解析按键成功,awu_falg置1,又进入休眠。 红外的IO下降沿中断主要就是对下降沿的时间进行计数,对每个计数的结果保存到数组里观察,解析过程冗长就不粘贴上来了。现象是halt()后第一次按下遥控,无法正确接收到数据,这时候已经被唤醒了,之后再次按下,正常接收到32bit数据,只有第一次唤醒的时候无法正确接收。 目前通过前面的这些数据得出的推论是,唤醒后MCU的中断会工作异常,是否有我不熟悉的内核内幕,我试过使用TLI做为红外中断,得到的结果也是类似,唤醒后会有快速的几个中断响应,跟红外的波形完全对不上,不知是否有这方面的前辈提点一二,甚是感激。
|
|
相关推荐
1个回答
|
|
建议检查一下,HAIL 唤醒后执行中断时,STM8的时钟是否需要恢复成HALT前的。一般恢复时钟是需要一定时间的,所以这时候如果计算时间会不准的
|
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1627 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1550 浏览 1 评论
984 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
688 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1601 浏览 2 评论
1867浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
650浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
518浏览 3评论
536浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
506浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-24 21:16 , Processed in 0.667569 second(s), Total 80, Slave 63 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号