作者:李大闯

/*********************
程序功能:接收上位机发过来的一个字符串,然后把该字符串发送给上位机,字符串必须以!结尾
**********************/
#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单片机串口接收和发送程序相关推荐

  1. 51单片机串口通讯c语言程序,如何使用51单片机实现串口通信

    描述 STC51单片机一般带有1个串口,有的带有2个串口,串口一般用于下载程序和串口通信.串口通信特别适合控制设备,所以工控机的电脑上一般都带有串口. 51单片机的串口引脚为P3.0引脚与P3.1引脚 ...

  2. 51单片机串口向电脑发送数据

    声明:本人跟随b站江科大学习,我的所有文章仅记录我的学习总结,以防我以后忘了,有地方回忆,况且江科大的资料都是开源的.我也希望大家多多去看江科大的视频,讲的是真的好,我的文章仅限看过视频学习过的,过段 ...

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

    #include <reg51.h> //实验现象:单片接收电脑发送的字符串,并发回给PC端的代码.//函数声明 void uart_init(void); void uart_seng_ ...

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

    #include <reg51.h> //实验现象:在电脑端没按下发送的时候,单片一直给电脑发送aaa字符串: //实验现象:在电脑端按下发送的时候,结束字符串aaa的发送代码,执行单片接 ...

  5. 中移4G模块-ML302-OpenCpu开发-51单片机串口转I2C

    B站:https://space.bilibili.com/309103931 中移4G模块-ML302专栏:https://blog.csdn.net/qq_33259323/category_10 ...

  6. 51单片机串口通信实操(中断函数)

    51单片机串口通信实操(中断函数) 详细参考单片机手册 SM0.SM1分别为0,1时为模式一,因为模式一最为常用 REN=1,为接收,REN=0,为不接收 当 SM0,SM1,SM2,REN,TB8, ...

  7. 51单片机串口通信模板_深入理解51单片机串口通信及通信实例

    串口通信的原理 串口通信(SerialCommunications)的概念非常简单,串口按位(bit)发送和接收字节.尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数据的同时用另一 ...

  8. 51单片机-串口通信(串口向电脑发送信息电脑通过串口控制LED)

    文章目录 前言 一.串行通信口的功能以及串行通信口的结构及原理 1.1 串行通信口的功能 1.2 51单片机串口的结构 二.串行通信口的控制寄存器 2.1 串行控制寄存器SCON 2.2 电源控制寄存 ...

  9. 51单片机串口多机通信的原理与编程实现

    51单片机串口多机通信 需要用的的寄存器 (了解的可直接跳到下一节) TMOD 定时器/计数器模式控制寄存器 TCON 定时器控制寄存器 SCON 串口控制寄存器 PCON 电源控制位寄存器 IE 中 ...

最新文章

  1. 数学知识--Methods for Non-Linear Least Squares Problems(第一章)
  2. unity连接linux服务器,C#编程之C#通过SharpSSH库与Linux服务器建立SSH连接并执行命令...
  3. 高仿真的类-请求参数映射
  4. 模型存储在哪里_最强的模型工作收纳站「Artty Station」登场!
  5. 跟踪反应流–将Spring Cloud Sleuth与Boot 2结合使用
  6. 前端学习(3121):组件和模块
  7. PHP中的stdClass 【转】
  8. Nacos Spring Cloud 快速开始
  9. 微服务配置中心是干啥的_微服务化改造系列之三:配置中心
  10. js鼠标拖动图片拼图完成验证
  11. springboot2+activiti6定时器不执行问题解决
  12. 十七款PDF在线处理转换器,目前最全合集
  13. 好消息:GAX/GAT February 2008 Final Release
  14. 适合协作办公的在线Word文档-超级文档
  15. CSS-animation-梦幻西游小案例
  16. 客户端解析html5,基于HTML5的WebGIS实时客户端设计
  17. 防火墙系列(二)-----防火墙的主要技术之包过滤技术,状态检测技术
  18. zynq linux如何使用pl ip,ZYNQ+linux网口调试笔记(3)PL-ETH
  19. xarray的DataArray查看nan数量
  20. 高红冰:淘宝村促进乡村振兴

热门文章

  1. cvCvtColor
  2. 【c语言】判断一个字符串是否包含另一个字符串
  3. urllib使用案例
  4. ctfshow-新手杯-crypto4新手村难度-wp
  5. yum安装冲突:Another app is currently holding the yum lock
  6. 【原创】并查集之扩展域与边带权
  7. 什么是上下文无关文法、最左推导和最右推导—编译原理
  8. 【IoT】加密与安全:ECC 算法基础原理浅析
  9. 从微服务基本概念到核心组件-通过一个实例来讲解和分析
  10. 揭秘:刘备追得最辛苦的人不是诸葛亮