手把手教你单片机——串口

串口

目的:实现pc通过串口助手发给单片机的信息,单片机转发给pc、

代码

#include"reg51.h"
#include"intrins.h"
typedef unsigned int u16;
typedef unsigned char u8;

void usart_init() //串口初始化函数
{
TMOD=0x20; //用定时器T1 方式一 高四位是T1 低四位是T0
SCON=0x50; //串口控制寄存器SCON 高四位是sm0 sm1 sm2 允许位(ren)
TH1=0xe6; //因为是自动重装载 所以高低八位一样
TL1=0xe6;
EA=1; //中断总允许位
ES=1; //串口中断允许位
TR1=1; //开启定时
}

void main() //主函数
{
usart_init();
while(1);
}

void usart() interrupt 4 //串口分组是4
{
u16 a;
a=SBUF; //接收完成
RI=0; //自动清零
SBUF=a; //开始发送
while(!TI); //判断是否发送完成
TI=0; //自动清零
}

仿真图

在这里插入图片描述

元器件名称:

compim (标准端口)
AT89C51 (AT89C52)

串口助手

在这里插入图片描述

注意端口的设置和波特率的设置

备注

由于是用protues 仿真软件 所以端口也需要模拟出来 可以用Configure Virtual Serial Port Driver 产生虚拟端口。

发布了6 篇原创文章 · 获赞 2 · 访问量 79

猜你喜欢

转载自blog.csdn.net/weixin_44871327/article/details/104443277
今日推荐