📄 hardware_232.c
字号:
#include <reg52.h>
#include "string.h"
typedef unsigned int word;
void delay (word useconds)
{
for(;useconds>0;useconds--);
}
UartSend(char * CmdTmp)
{
char i;
for(i=0;i<strlen(CmdTmp);i++)
{
SBUF=CmdTmp[i]; //发送数据
while(TI==0); //发送数据完毕时,TI会自动置高
TI=0; //发送数据完毕,将TI清零,准备下一次发送
}
}
void uart_Init()
{
PCON= PCON & 0X7F; //SMOD=0;选择波特率为普通模式
TR1=0; //关闭定时器1,然后进行初始化
TMOD=TMOD | 0x20; //定时器1为自动装入方式 模式2、自动再装入8位计数器
ET1 = 0; //禁止T1中断
SCON=0x40; //串行口工作方式1:10位异步收发
TH1=0xFD;
TL1=0xFD;
//设置数据格式
//低位在前
RI=0; //清串口接收中断标志
TI=0; //清串口发送中断标志
ES=0; //禁止串口中断
TR1=1; //启动定时器1工作
}
void main (void)
{
char idata SendBuffer[50]="";
SendBuffer[0]='\0';
strcat(SendBuffer,"123456");
uart_Init();
while(1)
{
UartSend("Test UART : Uart will ouput the ASCII 123456 if it is right!\r\n");
UartSend(SendBuffer);
UartSend("\r\n");
delay(65535);
delay(65535);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -