51单片机串口通信发送以及接收代码详解2

#include          
//实验现象:在电脑端没按下发送的时候,单片一直给电脑发送aaa字符串;
//实验现象:在电脑端按下发送的时候,结束字符串aaa的发送代码,执行单片接收电脑发送的字符串,并发回给PC端的代码。
//函数声明
void uart_init(void);
void uart_seng_byte(unsigned char c);
void delay(void);
void uart_seng_string(unsigned char *str);
//主函数
void main(void)
{
  uart_init();                //第一步:初始化串口到正确状态
  while(1)
  {
  uart_seng_string("aaa\r\n");//第二步:通过串口发送字符串;字符串用双引号“”;换行字符:\r\n
  delay();                     //让A发送的不要太快
  }
}

//预设一个串口条件:8位数据位、1停止位、0效验位、波特率2400
//初始化主要用于设置相关寄存器到我们所需要的模式以及参数
//初始化串口函数
void uart_init(void)
{
 SCON=0x50;      //串口工作在模式1,开启允许接收
 PCON=0x00;      //波特率不加倍
 TMOD=0x20;   //设置T1在模式2:M1=1,M0=0;8位自动重装模式
 TH1=TL1=243; //8位自动重装的意思:TH1用完后下一个周期,TL1自动重装到TH1里面去
 TR1=1;          //开启计数器
 ES=1;         

你可能感兴趣的:(51单片机学习,51单片机,单片机,嵌入式硬件)