stm32串口晶振不对输出乱码+汇承HC-14lora模块

最近要用到一个lora无线透传模块,然后就先用两个32开发板(用的STM32F103C8T6)试试简单的收发数据。结果,第一步串口发送一句话就寄了,我串口打印了"hi",结果出现了一堆乱码,我寻思着,就这一句代码也不至于还能错吧。。。然后我以为是USB-TTL的问题,换了一个能用的还是一样。。。但是很奇怪,就是不能发送的那个板子,用的一个官方工程的时候,我发现是能够正常用串口输出数据的,然后我用了另一个c8t6开发板(跟前面那个不一样,但是都是C8T6)又能正常的发出去,说明代码没问题,硬件也没问题。
搞半天发现是晶振不对。可以看到下面的图圈出来的地方,左边的晶振是16M的,右边的就是8M+32.768K的晶振。
修改:
  • HAL库

在某一个.c文件里面找到stm32f1xx_hal_conf.h,再找到HSE_VALUE的定义,修改为16000000即可

  • 标准库

完成有线收发后,开始配置lora模块。

1.分别准备两块lora模块接到电脑串口,并分别打开两个HC-T串口调试。

HC-14 USB-TTL
VCC VCC
GND GND
RX TX
TX RX
KEY AT配置的时候接低电平,两个lora模块发数据的时候悬空
STA -

我用的是汇承的模块,相应的测试的串口工具和一些教程在他们的官网有的https://www.hc01.com/

此时KEY脚接的GND,在相互发消息的时候出现ORDER ERROR
此时KEY悬空,能够正常发数据