无薪税绵 发表于 2017-8-23 11:43:12

没有发现开启全局中断的指令。

power568 发表于 2017-8-23 13:16:58

1. 首先确保硬件是好的;
2. 你可以使用STM32CubeMx直接生成一个工程看看,生成的工程时可以直接使用的。
3. 验证功能好了以后,在更改代码。

ataudio 发表于 2017-8-23 13:24:46

无薪税绵 发表于 2017-8-23 11:43
没有发现开启全局中断的指令。

HAL_Init();应该有你说的。

发表于 2017-8-23 14:06:04

如果可以进去中断说明有数据接收,产生的原因可能是外部干扰,楼主可以用示波器看一下接收引脚的状态。

张亚飞 发表于 2017-8-24 17:51:37

不知道是是否还在关注这个帖子,下边截图是我的管脚配置。
你的管脚配置把输入输出都配置成复用推挽输出有问题吗?

ataudio 发表于 2017-8-25 14:30:44

本帖最后由 ataudio 于 2017-8-27 11:48 编辑

张亚飞 发表于 2017-8-24 17:51
不知道是是否还在关注这个帖子,下边截图是我的管脚配置。
你的管脚配置把输入输出都配置成复用推挽输出有 ...
谢谢这位兄弟保持关注。。按照原理来说,输入输出配成对应的方式,肯定是没有问题的。。

但是,对你的回复,今天我特意测试了几遍。
当我把GPIO都按照AF_PP配置时,程序跑起来,UART4收发是正常的。调试信息能清楚看到远端串口返回的数据。

当我TX与RX分别配置成AF_PP、INPUT时,调试信息不见任何返回。等有时间我再分析是不是卡在中断里了。

我的板子没再出现上电就进串口中断或者其他错误的原因,可能重要的一点在电源。。之前我一直电池供电,可能电压不稳,现在换成稳压电源。。

除了上面的模式配置,我把使能uart中断,写进了uart的init中和RX的callback中。

最后,我把库函数UART_Receive_IT()替换成自己的处理函数了。
页: 1 [2]
查看完整版本: [已更新]一个标准的串口中断接收,为何进不了中断?