STC51单片机-异步串行通信系统-物联网应用系统设计项目开发

简介: STC51单片机-异步串行通信系统-物联网应用系统设计项目开发

一、说明

同步通信是指在约定的通信速率下,发送端和接收端的时钟信号频率和相位始终保持一致(同步),这就保证了通信双方在发送和接收数据时具有完全一致的定时关系。串行通信是指计算机主机与外设之间以及主机系统与主机系统之间数据的串行传送。使用串口通信时,发送和接收到的每一个字符实际上都是一次一位的传送的,每一位为1或者为0。串行通信可以分为同步通信和异步通信两类。


异步串行通信是指通信双方以一个字符(包括特定附加位)作为数据传输单位且发送方传送字符的间隔时间不一定,具有不规则数据段传送特性的串行数据传输。


它—般由起始位、数据位、奇偶校验位和停止位四部分组成。它用一个起始位表示字符的开始,用停止位表示字符的结束,构成一帧,即在异步通信中,发送的每一个数据字符均带有起始位、停止位和可选择的奇偶位。数据字符之间没有特殊关系,也没有发送接收时钟。


异步通信数据帧的第一位是开始位,在通信线上没有数据传送时处于逻辑’1’状态。当发送设备要发送一个字符数据时,首先发出一个逻辑“0”信号,这个逻辑低电平就是起始位。起始位通过通信线传向接收设备,当接收设备检测到这个逻辑低电平后,就开始准备接收数据位信号。因此,起始位所起的作用就是表示字符传送开始。


当接收设备收到起始位后,紧接着就会收到数据位。数据位的个数可以是5,6,7或8位的数据。在字符数据传送过程中,数据位从最低位开始传输。数据发送完之后,可以发送奇偶校验位。奇偶校验位用于有限差错检测,通信双方在通信时需约定一致的奇偶校验方式。就数据传送而言,奇偶校验位是冗余位,但它表示数据的一种性质,这种性质用于检错,虽有限但很容易实现。在奇偶位或数据位之后发送的是停止位,可以是1位、1.5位或2位,停止位一直为逻辑’1’状态。停止位是一个字符数据的结束标志。


在异步通信中,字符数据一个一个地传送。在发送间隙,即空闲时,通信线路总是处于逻辑“1”状态,每个字符数据的传送均以逻辑“0”开始。


用Proteus仿真编程实现以下功能:

  • 2个同种单片机之间的异步串行通信

二、重点

  • 单片机异步串行通信的工作方式及其控制方法
  • 单片机异步串行通信的实际应用

三、实现

  //从机1串行通信程序
#include <reg52.h>
sbit led=P2^0;          //定义P2.0连接的黄色LED
bit rrdy=0;         //接收准备标志位rrdy=0,表示未做好接收准备
bit trdy=0;           //发送准备标志位trdy=0,表示未做好发送准备
bit err=0;  
void delay_ms(unsigned int i)     //延时函数
{
  unsigned char j;
  for(;i>0;i--)     
  for(j=0;j<125;j++)    
  ;
} 
void main()         //从机1主函数      
{
  EA=1;       //总中断打开
  TMOD=0x20;      //T1方式2自动装载,用于设置波特率
  TL1=0xfd;TH1=0xfd; PCON=0x00;   //波特率设为9600
  SCON=0xd0;      //SM2设为0,TB8设为0
  TR1=1;        //启动定时器T1 
  P1=0xff;      //向P1写入全1,8个绿色LED全灭
  ES=1;       //允许串口中断
  while(RI==0);     //接收控制指令0xff
  if(SBUF==0xff) err=0;   //如果接收到的数据为0xff,err=0,表示通信正常
  else err=1;     //err=1,表示接收出错
  RI=0;       //接收中断标志清0
  SM2=1;        // SM2置1,为多机通讯做好准备。
  while(1);
}
void int1() interrupt 4       //串行口中断函数
{
 if(RI)       
 {
  if(RB8)         //如果RB8=1,表示接收的为地址帧
  {
    RB8=0;        
    if(SBUF==0x02)   //如接收的数据为地址帧0x01,是本从机的地址
            //2#机本句改为:if(SBUF==0x02)
    {
      SM2=0;    //则SM2清0,准备接收数据帧
      led=0;    //点亮本从机黄色发光二极管
    }
  }
  else          //如果接收的不是本从机的地址
  {
    rrdy=1;     //准备好接收标志置1
    P1=SBUF;    //串口接收的数据送P1,LED显示
      SM2=1;      // SM2仍为1 
    led=1;      // 熄灭本从机黄色发光二极管 
  }
  RI=0; 
}
delay_ms(500); 
P1=0xff;          //熄灭本从机8个绿色发光二极管  
}  
…………

四、下载

详见:STC51单片机-异步串行通信系统-物联网应用系统设计项目开发

相关实践学习
钉钉群中如何接收IoT温控器数据告警通知
本实验主要介绍如何将温控器设备以MQTT协议接入IoT物联网平台,通过云产品流转到函数计算FC,调用钉钉群机器人API,实时推送温湿度消息到钉钉群。
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
目录
相关文章
|
8天前
|
人工智能 监控 物联网
深度探索人工智能与物联网的融合:构建未来智能生态系统###
在当今这个数据驱动的时代,人工智能(AI)与物联网(IoT)的深度融合正引领着一场前所未有的技术革命。本文旨在深入剖析这一融合背后的技术原理、探讨其在不同领域的应用实例及面临的挑战与机遇,为读者描绘一幅关于未来智能生态系统的宏伟蓝图。通过技术创新的视角,我们不仅揭示了AI与IoT结合的强大潜力,也展望了它们如何共同塑造一个更加高效、可持续且互联的世界。 ###
|
1月前
|
物联网 5G 智能硬件
物联网卡:物联网卡不支持语音通话,是如何实现设备间的数据传输和通信的?
物联网卡(IoT SIM卡)通常被设计用于支持物联网(IoT)设备之间的数据传输,而不直接支持语音通话功能。这是因为物联网设备主要关注的是数据的收集、传输和处理,而不是语音通信。为了实现设备间的数据传输和通信,物联网卡及其背后的技术采用了多种方法,主要包括但不限于以下几种方式:
物联网卡:物联网卡不支持语音通话,是如何实现设备间的数据传输和通信的?
|
1月前
|
传感器 机器学习/深度学习 存储
物联网设备精细化管理系统解决方案
随着科技的进步,物联网技术作为新一代信息技术的核心部分,正在深刻改变各行业的生产和管理方式。其在资产管理、智慧城市、能源管理和智慧医疗等多个领域的广泛应用,不仅提高了运营效率,还促进了资源优化配置和精细化管理。本文详细介绍了物联网的基础概念及其在设备精细化管理系统中的具体应用方案,展示了如何通过智能感知层建设、数据处理分析平台以及精细化管理应用,实现设备的实时监控、预测性维护和能耗管理等功能,从而帮助企业提升竞争力,降低成本,并推动社会向更智能化、绿色化的方向发展。
84 2
物联网设备精细化管理系统解决方案
|
1月前
|
存储 监控 物联网
医疗物联网设备精细化管理系统解决方案
华汇数据智慧医院物联网管理系统解决方案是一种集物联网、云计算、大数据和人工智能等先进技术于一体的综合性解决方案,旨在提升医院的运营效率、医疗质量和患者满意度。
73 3
|
1月前
|
传感器 数据采集 存储
基于51单片机的大棚环境检测系统设计
基于51单片机的大棚环境检测系统设计
132 0
|
1月前
|
传感器 编解码 人机交互
基于51单片机的温室大棚环境检测系统
基于51单片机的温室大棚环境检测系统
58 0
|
1月前
|
SQL 缓存 Java
揭秘物联网性能优化的终极攻略!提升系统效率的七大法宝
小米在物联网项目中遇到了性能优化问题,他从数据库、集群、硬件、代码、并行处理、JVM及操作系统等多个层面分享了优化经验。包括SQL优化、分库分表、缓存使用、水平扩容、分布式调度、硬件升级、代码分析、并行处理、GC调优及操作系统参数调整等。小米强调性能优化需结合实际情况,逐步提升系统响应速度与稳定性。欢迎留言交流,共同进步。关注他的微信公众号“软件求生”,获取更多技术干货。
53 0
|
3月前
|
传感器 监控 安全
智能家居系统:物联网技术的应用与挑战
在这篇文章中,我们将深入探讨智能家居系统背后的技术原理、实际应用以及面临的主要挑战。通过分析物联网技术如何实现家居自动化,并结合具体案例,本文旨在提供对智能家居发展现状和未来趋势的全面理解。
|
2月前
|
传感器 监控 安全
物联网通信的基石:LoRa、Sigfox与NB-IoT详解
物联网通信的基石:LoRa、Sigfox与NB-IoT详解
329 0
|
3月前
|
分布式计算 搜索推荐 物联网
大数据及AI典型场景实践问题之通过KafKa+OTS+MaxCompute完成物联网系统技术重构如何解决
大数据及AI典型场景实践问题之通过KafKa+OTS+MaxCompute完成物联网系统技术重构如何解决
下一篇
无影云桌面