完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
今天在前几天的功能上加上了串口通信的功能,在搬好野火的砖后,很自信的打开了DEBUG,然而…翻车了,程序还没有跑到主程序,在初始化就死掉了
于是乎看了下代码发现停在了B.这里 打开度娘,又涨了新知识(B 是跳转的意思,“。”是指当前地址),原来程序死在这里,B.前面的xxxx_TRQHandler,直觉告诉我,是我的中断出现问题了,然后去找串口初始化的问题 在串口初始化的里开启了接收中断,但是忘记了写中断服务函数,导致程序跳到了B,这里 在加上接收服务中断函数后,终于能够跑进主函数了 函数正常运行,问题解决! 但是没有写中断服务函数为什么会跳转到B.呢?这个问题激起了我的好奇心,于是往上找找答案 在这里插入代码片 Default_Handler PROC 。..。 EXPORT USART1_IRQHandler [WEAK] EXPORT USART2_IRQHandler [WEAK] EXPORT USART3_IRQHandler [WEAK] 。..。 USART1_IRQHandler USART2_IRQHandler USART3_IRQHandler 。..。 B 。 ENDP ALIGN 通过度娘的帮助,我大概明白了没写中断服务函数在B.死循环的原因了 EXPORT我把它理解为一个中断,【WEAK】是弱定义,就是在用户没有定义窗口中断服务函数的时候,接收中断的时候就会默认这是中断服务函数,然后就跳到了B.这里进行无限循环。 因为使用串口只是用来发送数据,所以就没考虑要写接收中断服务函数… 出现这个问题还是因为砖版得不够细心 问题得以解决,继续肝… … |
|
|
|
只有小组成员才能发言,加入小组>>
调试STM32H750的FMC总线读写PSRAM遇到的问题求解?
1632 浏览 1 评论
X-NUCLEO-IHM08M1板文档中输出电流为15Arms,15Arms是怎么得出来的呢?
1559 浏览 1 评论
985 浏览 2 评论
STM32F030F4 HSI时钟温度测试过不去是怎么回事?
688 浏览 2 评论
ST25R3916能否对ISO15693的标签芯片进行分区域写密码?
1605 浏览 2 评论
1869浏览 9评论
STM32仿真器是选择ST-LINK还是选择J-LINK?各有什么优势啊?
652浏览 4评论
STM32F0_TIM2输出pwm2后OLED变暗或者系统重启是怎么回事?
522浏览 3评论
539浏览 3评论
stm32cubemx生成mdk-arm v4项目文件无法打开是什么原因导致的?
508浏览 3评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-25 10:15 , Processed in 0.849477 second(s), Total 79, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号