完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
看数据手册支持uart10,所以硬件设计的时候使用了uart10的资源
电路是ok的,cube上面也显示支持uart10,但是软件不管怎么弄,都无法让uart10输出 排除软件问题,因为同样的代码,修改下设置,其它uart没有问题 排除自身硬件问题,因为直接去掉了外围电路,直接使用示波器测IO波形。 正常的电平翻转试过了,没有问题。IO口是好的。 |
|
相关推荐
31个回答
|
|
|
有stm32f413ZH 开发板的 可以试一下。帮忙验证下。
|
|
|
|
|
|
|
|
|
stm32f413ZH 的确支持UART10,我找了块板测试是OK的,可以正常工作。
检查下时钟配置和管脚复用配置,他在APB2总线上。 我用的是PE2 PE3,PG11 PG12都测试过。 |
|
|
|
|
|
楼主,你的问题解决了吗?我遇到了和你差不多的问题。uart1~8都没问题,但uart9~10接收到的数据不对
|
|
|
|
|
|
能否把uart9和uart10的配置代码发一下,我这里uart9 和10能够接收到数据,但是数据不对,接受的的长度都对,其他uart没问题
|
|
|
|
|
|
楼主可以在仿真模式下,初始化uart10完成后,看一下uart10、GPIO、rcc的寄存器值,排除一下是哪个引起的错误。
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
我这里统一设置了10个uart 和DMA通道
其他没问题只有uart9和uart10有问题,能收到数据,字节数也对,就是数不对 比如我发01 01 01 01 01 01 01 01 01 他就收到06 06 06 06 06 06 06 06 06 发 02 02 02 02 就收到18 18 18 18 |
|
|
|
|
|
int main(void)
{ unsigned char i,x; uint16 len=0; uint8 buff_message[10][128]; /*定义一个2KB的缓存*/ uint8 channel; /* SysTick end of count event each 10ms */ RCC_GetClocksFreq(&RCC_Clocks); SysTick_Config(RCC_Clocks.HCLK_Frequency / 100); Delay(5); UART_All_Config(); DMA_For_AllUart_Rec_Config(); NVIC_Configuration(); >>>>>>>>>>>>>> |
|
|
|
|
|
单独调试uart9和10 也是这样
|
|
|
|
|
|
|
|
|
|
|
|
也试过,还是一样,就是受的的数据不对,发送10个, 收到10个,但是数变了,我怀疑中间有可能为翻转什么的,但是别的串口1~8一点问题都没有,就是9~10同样的问题 |
|
|
|
|
|
你的代码是自己写的还是CubeMX生成的?
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
我仿真的时候看过uart的寄存器,除了DR,所有和别的uart都一样,就是发送1过去的时候DR接受的是6 |
|
|
|
|
|
看你用的是PG11,PG12。手册里的Uart10主功能脚是PE2,PE3,你用这两个脚试试看。
|
|
|
|
|
|
都换过了,uart9和10同样的毛病,能复用过来的引脚都试过了 |
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
STM32F405驱动DS1302时钟模块,输出时间错乱该怎么排查?
2797 浏览 2 评论
stm32f405rgt6驱动DS1302ZN出现时间错乱问题
2403 浏览 1 评论
stm32用fsmc读取ad7606采集数据,数据不变,只有开发版复位才更新数据
2276 浏览 0 评论
2388 浏览 1 评论
1637 浏览 1 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 02:43 , Processed in 1.186125 second(s), Total 108, Slave 91 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
1428