天堂隔壁 发表于 2015-5-28 10:09:52

STM32F107VCT6串口发送数据乱码

本帖最后由 天堂隔壁 于 2015-5-28 10:20 编辑

如题。用STM32F107VCT6做一个工程,结果测试串口的时候发现 串口1发送数据乱码 ,发送0xaa,结果变成0xed。而且串口3也发送不出来数据,求助。

系统配置如下:
外部晶振 8MHZ
串口1: PA9.PA10
串口3:PD8,PD9
下面是工程文件,求大牛指点啊,卡了1天多了~




天堂隔壁 发表于 2015-5-28 10:13:20

需要注明的是,我的程序使用IAP下载的。程序都可以通过串口1下载进去,就是通信就不对了~~~

发表于 2015-5-28 10:15:16

楼主,把你的程序重新传一下,里面的东西太多了.不必要的删除了.

天堂隔壁 发表于 2015-5-28 10:18:13

安 发表于 2015-5-28 10:15
楼主,把你的程序重新传一下,里面的东西太多了.不必要的删除了.

没有不必要的呀~全部文件都在main.c里面

天堂隔壁 发表于 2015-5-28 10:21:21

安 发表于 2015-5-28 10:15
楼主,把你的程序重新传一下,里面的东西太多了.不必要的删除了.

里面使用库函数的。所以看起来比较大

发表于 2015-5-28 10:25:53

附件带的其他通讯协议没有问题吗?
楼主用的是107的芯片.通过代码分析,应该是系统时钟配置错误.楼主可以用示波器测一下串口波特率.
107用的是25Mhz的晶振,103用的是8Mhz的.

lishuchao 发表于 2015-5-28 10:28:07

收发双方波特率是否一致,还有你的时钟频率是否准确?

天堂隔壁 发表于 2015-5-28 10:28:24

安 发表于 2015-5-28 10:25
附件带的其他通讯协议没有问题吗?
楼主用的是107的芯片.通过代码分析,应该是系统时钟配置错误.楼主可以用示 ...

我也觉得有点问题了,我的板子是用的8MHZ晶振的。 没有用25M。 如果用25Mhz晶振的话,最大可以倍频到多少呢?我需要72MHZ的时钟

天堂隔壁 发表于 2015-5-28 10:30:37

安 发表于 2015-5-28 10:25
附件带的其他通讯协议没有问题吗?
楼主用的是107的芯片.通过代码分析,应该是系统时钟配置错误.楼主可以用示 ...
还有我相请问下,串口波特率怎么测试?

发表于 2015-5-28 10:31:55

示波器抓一个数据的发送,看他的一个周期的频率.
页: [1] 2
查看完整版本: STM32F107VCT6串口发送数据乱码