最近在调试STM32F103VCT6的程序 ,先调串口,程序是从正点原子的例程修改过来的,写了一个串口1的程序, STM32中的程序是串口1中断接受一个字节,再把该字节经串口1发送出去,再延时一秒,在发送一个含八个字节数据的固定数组,程序可以说很小白,调试时,单片机可以回复串口调试助手一个它收到的字节,再发送一个含八个字节数据的固定数组,但在其后还自动多发了三个字节的数据,该三个字节的数据比较固定, 但单片机掉电复位一下, 这三个多出来的字节跟之前的不一样,但也比较固定。
这个先放一放,我现在确定串口1是能正常收发数据的, 现在调试串口2,把之前的对串口一的配置,基本都对串口2做了相应的修改,STM32中的程序是串口2中断接受一个字节,再把该字节经串口2发送出去,再延时一秒,再发送一个含八个字节数据的固定数组, 问题来了,我的STM32最小系统板是通过USB转TTL的一个模块之间连上笔记本的USB的,这个模块是我自己在网上下载的原理图,画PCB,打板,网上很多这种资料,就参考网上的资料,就这样焊接的,之前调试和烧程序都是用的的它,感觉使用起来还顺手 我现在调串口2时,程序能烧进去,但USB转TTL就感觉跟发送接收两个脚短接了一样,一直是自收自发的状态,接在最小系统的串口2的TX和RX脚也是自发自收,而且我用手拿起来从USB转TTL模块的发送和接收脚引出来的两根杜邦线时,串口调试助手就一直不停的接收乱码,实在很是费解,
考虑,怀疑,我猜原因可能有以下几