1. 函数名不一致:函数名为 UartInit,而在 main 函数中调用的是 init_uart1 函数,应该保持一致。
  2. 缺少头文件:程序中使用了 stc8h.h 头文件,但是没有包含该头文件,应该添加 #include <stc8h.h>。
  3. 波特率设置错误:程序中的波特率设置为 9600(TH1 = 0xFD),但是在实际使用中需要根据硬件和串口设备的要求进行设置。
  4. 无限循环接收字符:程序中的 while(1) 循环会一直接收字符并发送,如果没有特殊要求,应该添加停止接收的条件。
#include stc8hhvoid UartInitvoid			SCON = 0x50;			AUXR = 0x40;			AUXR &= 0xFE;			TMOD &= 0x0F;			TL1 = 0x8F;			TH1 = 0xFD;			ET1 = 0;			TR1 = 1;		void send_charchar c SBUF = c; while !TI;

原文地址: https://www.cveoy.top/t/topic/hdCY 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录