一个简易的51单片机串口接收和发送程序
作者:李大闯
/*********************
程序功能:接收上位机发过来的一个字符串,然后把该字符串发送给上位机,字符串必须以!结尾
**********************/
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit LED = P2^7;
uchar flag = 0;
uchar index = 0;
uchar data c[100];
void Delay_ms(uint n)
{uchar i;while(n--)for(i = 0;i < 120;i++);
}
void Send_string(uchar *c)
{while(*c != '!'){SBUF=*c;c++;while(TI==0);TI=0;}
}
void main()
{SCON=0x50; //串口模式1,允许接收TMOD=0x20; //T1工作模式2TH1=0xF3; //波特率4800TL1=0xF3;PCON=0x80; //波特率倍增EA = 1;//开总中断ES = 1;//开串口中断TR1=1;//开定时器1中断while(1){if((SBUF == '!')&&(flag == 1)){Send_string(c);LED = ~LED;index = 0;flag = 0;}/*需要理解虽然 读取SBUF和写入SBUF所用的SBUF是不同的,这里可以理解为有两个SBUF,一个SBUF_read和一个SBUF_write,当往SBUF中写数据时SBUF_read不变。*/}
}
//串口接收中断函数
void Serial_INT() interrupt 4
{if(RI==0) return;ES=0; //关闭串口中断RI=0; //清接收中断标志c[index++]=SBUF;if(SBUF == '!')flag = 1;ES=1;
}
一个简易的51单片机串口接收和发送程序相关推荐
- 51单片机串口通讯c语言程序,如何使用51单片机实现串口通信
描述 STC51单片机一般带有1个串口,有的带有2个串口,串口一般用于下载程序和串口通信.串口通信特别适合控制设备,所以工控机的电脑上一般都带有串口. 51单片机的串口引脚为P3.0引脚与P3.1引脚 ...
- 51单片机串口向电脑发送数据
声明:本人跟随b站江科大学习,我的所有文章仅记录我的学习总结,以防我以后忘了,有地方回忆,况且江科大的资料都是开源的.我也希望大家多多去看江科大的视频,讲的是真的好,我的文章仅限看过视频学习过的,过段 ...
- 51单片机串口通信发送以及接收代码详解1
#include <reg51.h> //实验现象:单片接收电脑发送的字符串,并发回给PC端的代码.//函数声明 void uart_init(void); void uart_seng_ ...
- 51单片机串口通信发送以及接收代码详解2
#include <reg51.h> //实验现象:在电脑端没按下发送的时候,单片一直给电脑发送aaa字符串: //实验现象:在电脑端按下发送的时候,结束字符串aaa的发送代码,执行单片接 ...
- 中移4G模块-ML302-OpenCpu开发-51单片机串口转I2C
B站:https://space.bilibili.com/309103931 中移4G模块-ML302专栏:https://blog.csdn.net/qq_33259323/category_10 ...
- 51单片机串口通信实操(中断函数)
51单片机串口通信实操(中断函数) 详细参考单片机手册 SM0.SM1分别为0,1时为模式一,因为模式一最为常用 REN=1,为接收,REN=0,为不接收 当 SM0,SM1,SM2,REN,TB8, ...
- 51单片机串口通信模板_深入理解51单片机串口通信及通信实例
串口通信的原理 串口通信(SerialCommunications)的概念非常简单,串口按位(bit)发送和接收字节.尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一 ...
- 51单片机-串口通信(串口向电脑发送信息电脑通过串口控制LED)
文章目录 前言 一.串行通信口的功能以及串行通信口的结构及原理 1.1 串行通信口的功能 1.2 51单片机串口的结构 二.串行通信口的控制寄存器 2.1 串行控制寄存器SCON 2.2 电源控制寄存 ...
- 51单片机串口多机通信的原理与编程实现
51单片机串口多机通信 需要用的的寄存器 (了解的可直接跳到下一节) TMOD 定时器/计数器模式控制寄存器 TCON 定时器控制寄存器 SCON 串口控制寄存器 PCON 电源控制位寄存器 IE 中 ...
最新文章
- 数学知识--Methods for Non-Linear Least Squares Problems(第一章)
- unity连接linux服务器,C#编程之C#通过SharpSSH库与Linux服务器建立SSH连接并执行命令...
- 高仿真的类-请求参数映射
- 模型存储在哪里_最强的模型工作收纳站「Artty Station」登场!
- 跟踪反应流–将Spring Cloud Sleuth与Boot 2结合使用
- 前端学习(3121):组件和模块
- PHP中的stdClass 【转】
- Nacos Spring Cloud 快速开始
- 微服务配置中心是干啥的_微服务化改造系列之三:配置中心
- js鼠标拖动图片拼图完成验证
- springboot2+activiti6定时器不执行问题解决
- 十七款PDF在线处理转换器,目前最全合集
- 好消息:GAX/GAT February 2008 Final Release
- 适合协作办公的在线Word文档-超级文档
- CSS-animation-梦幻西游小案例
- 客户端解析html5,基于HTML5的WebGIS实时客户端设计
- 防火墙系列(二)-----防火墙的主要技术之包过滤技术,状态检测技术
- zynq linux如何使用pl ip,ZYNQ+linux网口调试笔记(3)PL-ETH
- xarray的DataArray查看nan数量
- 高红冰:淘宝村促进乡村振兴