ARM 为什么老进不去串口中断呢?用的是正点原子的程序,用的是STM32-MINI开发板,不一定的地方是PORT接口

ARM 为什么老进不去串口中断呢?用的是正点原子的程序,用的是STM32-MINI开发板,不一定的地方是PORT接口,第1张

1. printk是linux内核的打印函数,纯固件的程序中当然不会有这个函数的定义。

2. printf只用到了串口输出,没有输入,如果只是单纯死在这里应该与中断无关。

目前需要继续定位问题:

1. 保证在程序执行到挂死的位置时串口没有输入。

2. 在没有仿真器的情况下,用IO口电压或LED点亮和关闭的方法定位程序死在哪一行代码上。该代码不应该是一个函数调用,应该是函数内部的寄存器判断或某个循环语句。

3. 如果确认是在串口输入到来时才会产生的现象,并且程序也没有执行到中断处理,需要检查中断入口地址是否正确。可以考虑检查所有中断,确认是否因为其它中断引起代码跳转错误。

正点原子无线调试器主要用于无线传输功能的测试和调试,下面是其基本使用方法:

1. 确保你所使用的设备上已经安装了正点原子的AIR-T串口程序或者类似的串口接收程序。可以从正点原子官网下载相关程序。

2. 将无线调试器插入到需要测试的设备上,并连接好电源和串口连接线。

3. 打开AIR-T串口程序或者类似的串口接收程序,并设置好串口参数(如波特率、数据位、停止位等)。可以参考无线调试器的说明文档进行设置。

4. 打开无线调试器的电源开关,此时无线调试器上的LED灯会开始闪烁,表示正在搜索目标设备。

5. 等待一段时间后,如果目标设备已经被搜索到,无线调试器上的LED灯会快速闪烁。如果未搜索到目标设备,LED灯将会继续缓慢闪烁。

6. 当无线调试器成功搜索到目标设备时,可以通过串口接收程序接收目标设备发送的数据,并进行相应的测试和调试。

需要注意的是,不同的设备之间使用无线调试器的方式可能会略有不同,具体使用方法请参考无线调试器的说明文档。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12081811.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存