写一段基于STC8H,串口1通信,同时串口1被复用到p3.6,p3.7,并100ms发送“0102”到电脑端
时间: 2023-03-28 11:01:21 浏览: 131
通过串口发送数据
您好,我可以回答这个问题。以下是基于STC8H的串口1通信代码,同时串口1被复用到p3.6,p3.7,并100ms发送“0102”到电脑端:
#include <STC8.H>
void main()
{
P3M1 = x00; // 设置P3.6和P3.7为推挽输出
P3M = xFF;
P_SW1 |= x10; // 将串口1复用到P3.6和P3.7
TMOD = x20; // 定时器1工作在方式2
TH1 = xFD; // 波特率为960
TL1 = xFD;
TR1 = 1; // 启动定时器1
SCON = x50; // 串口1工作在模式1
while (1)
{
SBUF = x01; // 发送数据“01”
while (!TI); // 等待发送完成
TI = ; // 清除发送完成标志
SBUF = x02; // 发送数据“02”
while (!TI); // 等待发送完成
TI = ; // 清除发送完成标志
delay(100); // 延时100ms
}
}
void delay(unsigned int ms)
{
unsigned int i, j;
for (i = ; i < ms; i++)
for (j = ; j < 1141; j++);
}
阅读全文