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

本文深入解析51单片机的串口通信,包括发送和接收代码的详细讲解,是上一篇串口通信文章的延续。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#include <reg51.h>         
//实验现象:在电脑端没按下发送的时候,单片一直给电脑发送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;         
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

成长中的单片小白

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值