[N32G45x] usart进不了中断

[复制链接]
1442|17
 楼主| 准备植发程序猿 发表于 2022-10-25 21:02 | 显示全部楼层 |阅读模式
本帖最后由 准备植发程序猿 于 2022-10-26 10:21 编辑

N32G455REL7关于USART的几个问题,请教一下大神们
1、串口助手发送数据,USART进不了接收中断,对应的标志位都设置了(RXEN、TXEN、RXDNEIEN、UEN)
2、USART通过轮询不断发送数据时,串口助手发送数据USART才能进入接收中断。


3、USART通过轮询方式不断发送数据,串口助手收到的数据正确,间隔一毫秒发送数据时数据不正确。

usart.zip

1.03 KB, 下载次数: 5

niceguy 发表于 2022-10-26 09:19 | 显示全部楼层
你把工程打包传上来,这样也看不出来什么问题
6552918 发表于 2022-10-26 09:41 | 显示全部楼层
NVIC相关中断打开没有?
 楼主| 准备植发程序猿 发表于 2022-10-26 10:22 | 显示全部楼层
niceguy 发表于 2022-10-26 09:19
你把工程打包传上来,这样也看不出来什么问题

usart配置代码上传了,麻烦大神瞧一瞧
 楼主| 准备植发程序猿 发表于 2022-10-26 10:24 | 显示全部楼层
6552918 发表于 2022-10-26 09:41
NVIC相关中断打开没有?

配置了NVIC,代码上传了,大神帮忙瞧一瞧
GGG3 发表于 2022-10-26 14:17 | 显示全部楼层
代码没看出什么问题,可以用USART_SendData库函数来发送数据
金玉其中 发表于 2022-10-26 15:51 | 显示全部楼层
现象描述的不明确
xch 发表于 2022-10-26 17:27 | 显示全部楼层
没看到开中断代码。

比如类似:
__enable_irq();
 楼主| 准备植发程序猿 发表于 2022-10-27 09:12 | 显示全部楼层
本帖最后由 准备植发程序猿 于 2022-10-27 09:29 编辑
xch 发表于 2022-10-26 17:27
没看到开中断代码。

比如类似:

这是开总中断吗?库函数的描述是要在特权模式下使用
 楼主| 准备植发程序猿 发表于 2022-10-27 09:21 | 显示全部楼层

在main函数用while(1)轮询发送数据,usart才能进入接收中断
xch 发表于 2022-10-27 09:55 | 显示全部楼层
准备植发程序猿 发表于 2022-10-27 09:12
这是开总中断吗?库函数的描述是要在特权模式下使用

随时可以开关总闸。M4 没啥特权。得看 ARM 公司的M4技术手册
sy12138 发表于 2022-10-27 10:28 | 显示全部楼层
1.确认一下你的串口助手可以发数据到MCU
2.确认一下发送数据进入的是发送中断还是接接收中断
 楼主| 准备植发程序猿 发表于 2022-10-27 11:41 | 显示全部楼层
本帖最后由 准备植发程序猿 于 2022-10-27 11:46 编辑
sy12138 发表于 2022-10-27 10:28
1.确认一下你的串口助手可以发数据到MCU
2.确认一下发送数据进入的是发送中断还是接接收中断 ...

没有开启发送中断,确定了一直轮询发送数据的时候没有触发usart中断,mcu轮询发送数据的同时用串口助手发送数据就可以触发中断,也验证了adc和外部中断方式都可以触发中断,usart是经过sp3232eea芯片到pc的
niceguy 发表于 2022-10-27 17:49 | 显示全部楼层
大兄弟,你用的程序里用的uart6  复用的是PB0, PB1,使能GPIO口时钟的时候用的是GPIOA
能进中断才奇怪啊
微信图片_20221027174132.png
 楼主| 准备植发程序猿 发表于 2022-10-27 21:26 | 显示全部楼层
niceguy 发表于 2022-10-27 17:49
大兄弟,你用的程序里用的uart6  复用的是PB0, PB1,使能GPIO口时钟的时候用的是GPIOA
能进中断才奇怪啊 ...

大兄佬真细心,GPIOB的时钟我在其他引脚配置里有开启并调用了,所用这没什么影响开始我是用usart1测试的,后面换成uart6也是一样的现象,
niceguy 发表于 2022-10-28 09:42 | 显示全部楼层
大兄弟,这是用你的代码实现的中断,手边没有455的,457也是一样

微信图片_20221028094055.png

Interrupt.zip

1.22 MB, 下载次数: 5

 楼主| 准备植发程序猿 发表于 2022-11-2 09:28 | 显示全部楼层
niceguy 发表于 2022-10-28 09:42
大兄弟,这是用你的代码实现的中断,手边没有455的,457也是一样

感谢,已经找到问题,电路有问题,sp3232的GND没覆上铜,电压不正常
sy12138 发表于 2022-11-2 10:29 | 显示全部楼层
准备植发程序猿 发表于 2022-11-2 09:28
感谢,已经找到问题,电路有问题,sp3232的GND没覆上铜,电压不正常 ...

解决了就好
您需要登录后才可以回帖 登录 | 注册

本版积分规则

10

主题

32

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部