成都高端品牌网站建设,电子商务网站的建设及规划,公司注册流程及注意事项及细节,可以做的电影网站目录 
一、通信种类 
1、并行通信 
2、串行通信 
3、单工模式(Simplex Communication) 
4、半双工通信(Half-Duplex Communication) 
5、全双工通信(Full-Duplex Communication) 
6、串行的异步通信与同步通信 
#xff08;1#xff09;异步通信 
#xff08;2#xff09;同…目录 
一、通信种类 
1、并行通信 
2、串行通信 
3、单工模式(Simplex Communication) 
4、半双工通信(Half-Duplex Communication) 
5、全双工通信(Full-Duplex Communication) 
6、串行的异步通信与同步通信 
1异步通信 
2同步通信 
二、串行口通信 
一UART定义串行通信协议 
二串口通信通信时序底层逻辑 
1、空闲时 
2、起始位 
3、数据位 
4、校验位 
5、停止位 
6、简述串口通信的通信逻辑面问 
三波特率bps 
三、三种串行通信方式在物理表现形式的不同 
一TTL(Transistor-Transistor Logic) 
二RS232标准 
三RS485标准 
四、串行口寄存器 
一SBUF寄存器串行口数据缓冲寄存器 
二串行口控制寄存器SCON 
三电源控制寄存器PCON 
五、USB下载电路模块 
六、练习实现51单片机与电脑之间的通信 
uart.c 
main.c 
xdata 的作用 
计算定时器初值的计算公式 
七、MODBUS通信协议 一、通信种类 
1、并行通信 并行通信是指多个比特同时通过并行线进行传输这种方式的传输速率较高但会占用大量的芯片资源 
2、串行通信 串行通信是指将数据拆分成一个个比特按照先后次序在一根总线上进行发送串行通信有着系统占用资源少结构简单等优点是主机间通信的常用方式。 
注串口通信(Serial Port)是串行通信的一种属于串行通信中的异步通信。我们经常听到的RS232、RS485、RS422都是串行通信。 
3、单工模式(Simplex Communication) 主机间通信时如果一方固定为发送端另外一方固定为接收端通过一根总线实现数据通信。这种通信方式就像是你只能听别人说话但无法回答他们一样只能单向传递信息。 4、半双工通信(Half-Duplex Communication) 半双工通信是一种通信方式其中数据传输可以在两个方向之间交替进行但不能同时进行。换句话说通信双方可以既发送数据又接收数据但不能同时进行这两种操作。比方说就像你可以和别人交替说话和倾听对方说话一样。当你在说话时对方在听你说当对方在说话时你在倾听对方。这种方式允许双方之间在发送和接收数据之间切换但不能同时进行。半双工通信常用于对话式交流和一些简单的通信场景中。 5、全双工通信(Full-Duplex Communication) 全双工通信是一种通信方式其中数据传输可以同时在两个方向进行允许通信双方同时发送和接收数据实现双向通信。就像打电话一样你可以同时说话也可以听对方说话双方可以同时进行数据传输实现双向沟通。 6、串行的异步通信与同步通信 
1异步通信 指通信中两个字符8位之间的时间间隔是不固定的而在一个字符内各位的时间间隔是固定的         收发双方的波特率必须是事先约定好的 
2同步通信 要求发收双方具有同频同相的同步         用专用时钟信号线来控制时钟的节奏以为例 SDA数据线SCL时钟线用于同步双方时钟的节奏一般由发送方决定 异步通信         串口通信时收发双方的波特率必须是事先约定好的否则数据传输就会出现混乱。很明显为保证每个比特占用数据线的时间发送方和接收方需按照各自的系统计时且双方之间的误差不能太大。通常不能超过(6%)。这种双方各自“计时”的方式称为异步。就好比在打字一样每次敲击键盘发送一个字母速度快慢由打字者自己控制没规定每敲击一个字母之间要等多久只要保证接收端能够正确识别并解析即可。  同步通信         同步通信设备之间除了有数据线SDA以为还有一条时钟线(SCL)。其中SCL就是时钟线(serial clock)。发送方负责控制时钟线的变化每发送一个比特都需要将时钟线按照规则进行改变。就好比在合唱团里大家一起唱歌的节奏是由指挥员指挥的每个人都按照指挥员的节奏唱歌保证大家唱的是同一首歌且节奏一致。这种通信方式就称为同步通信。譬如IIC、SPI等。  注同步串行通信方式与异步串行通信方式的区别存在时钟线的为同步串行 通信方式通信没有时钟线的为异步串行通信方式。 二、串行口通信全双工串行通信异步通信 
一UART定义串行通信协议 UARTUniversal Asynchronous Receiver/Transmitter通用异步收发器是一种广泛使用的串行通信协议。它用于在计算机或其他设备之间传输数据。UART通信协议通过两根线通常称为TXD和RXD实现数据的异步传输。 TXDTransmit发送线用于从设备发送数据到另一设备。 
RXDReceive接收线用于从另一设备接收数据到本设备。 
二串口通信通信时序底层逻辑 
作为常用的串行通信方式以TTL为例串口通信在不同主机之间的数据格式为 1、空闲时 空闲时数据线为高电平 
2、起始位 发送放发送一个低电平表示起始位 
3、数据位 依据低位先行原则发送的第一个比特是最低位(最右边)发送; 
4、校验位 分为奇校验偶校验和无校验校验位可发可不发 奇校验是指确保数据位加上校验位中11的总数为奇数 偶校验是指确保数据位加上校验位中11的总数为偶数 
5、停止位 为保证下一个字节发送前的起始位能够表现出来把两个数据二者之间分隔开校验位之后发送一个停止位1。停止位也可是1个、1.5个、2个 
6、简述串口通信的通信逻辑面问 双方在空闲时数据线保持高电平发送数据时发送方先要发送一个起始位起始位为低电平发送数据位8个bit以低位先行原则发送从右往左发发完后有一个可以选择的校验位校验分三种分别为奇校验、偶校验、无校验奇校验是数据位加校验位中1的个数总数为奇数偶校验数据位加校验位1的总数为偶数校验位结束后还要发送一个停止位停止位为高电平。     
三波特率bps 
串口通信用波特率来描述数据的传输速率问题 很明显上图的纵坐标为电压值横坐标就是时间了。无论起始位、数据为还是停止位、校验位每个比特在数据线上的时间决定了数据传输的速率。 串行通信用波特率(bit per second)来描述数据传输的速率记作bps。 常见的波特率有1200、240048009600115200等表示每秒钟传输的比特数。以9600为例表明每秒能传输9600个比特。每个比特传输时所需的时间为1/9600秒1.041*10-4秒。 
三、三种串行通信方式在物理表现形式的不同 主机间通信无论采用并行还是串行方式都无法避免一个物理现象导线内阻不为零造成的电压衰减。以之前讨论的TTL电平为例主机之间的距离会造成高电平在接收端出现衰减现象和串扰(指不同信号之间相互干扰导致信号失真)影响。 
一TTL(Transistor-Transistor Logic) TTL(Transistor-Transistor Logic)通常指的就是芯片引脚产生的电压这个电压值跟选择的芯片有关在51单片机系统下是5v在2440下是3.3v等等。5vTTL通信距离通常被限制在10~20米之间。使用TTL方式进行数据传输距离受到很大限制 逻辑00V低电压 逻辑1取决于芯片本身供电电压 
二RS232标准 5vTTL通信距离通常被限制在10~20米之间如果需要更远的距离怎么解决呢为解决这个问题IEEE(Institute of Electrical and Electronics Engineers)颁布了RS232标准其中规定了 
逻辑高电平逻辑1在-3V到-15V之间 
逻辑低电平逻辑0在3V到15V之间 
收发主机间有三根线分别是收、发和地因此RS232是全双工的。 
理论上RS232能够传输20~30米。 
三RS485标准 同理RS485使用两根信号线A和B来传输数据通过比较A和B之间的电压差来识别信息电压范围分别为7V到12V和-7V到-12V。正电压表示高电平,负电压表示低电平。这种差分信号传输方式提高了抗干扰能力。RS485的传输距离可达1200米适用于大范围的数据传输需求。由于采用的是压差RS485在传输数据的某一时刻两根线都要用到所以它是半双工的。 
比较A和B之间的电压差 逻辑17V到12V 逻辑0-7V到-12V 
四、串行口寄存器 一SBUF寄存器串行口数据缓冲寄存器 二串行口控制寄存器SCON 三电源控制寄存器PCON 五、USB下载电路模块 六、练习实现51单片机与电脑之间的通信 
uart.c void init_uart(void)  {  //串口接收     SCON  ~(3  6);     SCON | (1  6) | (1  4);  //使参数生效     PCON  ~(1  6);     PCON | (1  7);   //设置波特率51单片机使用定时器1     TMOD  ~(0x0F  4);     TMOD | (2  4); //15 与其效果是一样的改变第四位和第五位2为0000 0010     TL1  232;//计算出的定时器初值     TH1  232;  //    打开定时器1     TCON | (1  6); //打开中断控制位及串口控制位     IE | (1  7) | (1  4); } /* //全局变量字符型数组 char rcv_buffer[32]; */ //数组不放到内部RAM放到外部扩展RAM(扩展内存不清0数组内都是随机数) xdata char rcv_buffer[32]; unsigned int pos  0; //中断服务函数TI RI都会导致中断;接收需要使用中断  void uart_handler(void) interrupt 4  {      if((SCON  (1  0))  1)      {         if(pos  32) //防止越界访问         {             rcv_buffer[pos]  SBUF;//接收的数据依次存入到该数组             rcv_buffer[pos]  0; //接收的字符串后加/0标志         }         //P2  SBUF;         SCON  ~(1  0);//软件复位RI(接收中断请求标志位)清0     }  }  //发送轮询  void send_char(char ch)  {     SBUF  ch;     while((SCON  (1  1))  0);     SCON  ~(1  1);    //软件复位TI(发送中断请求标志位)清0  } void send_buffer(const char *p, unsigned int len) {     while(len--)     {         send_char(*p);     } }   // 发送字符串函数    void send_str(const char *str)    {        unsigned int len  0;     while (str[len] ! \0) // 计算字符串长度      {             len;      }      send_buffer(str, len); // 调用send_buffer函数发送字符串   }   main.c int main(void) {     const char *s  Hello World!; //不常用     //char buffer[]  {0xAA ,0xBB, 0x00, 0x1A};     xdata char buffer[16]; //???     init_uart();     while(1)     {          if(pos ! 0)//至少收到一个字节          {              delay(0xAFFF);//保证数据全部收完,有延迟             if(strcmp(rcv_buffer,Hello)  0)             {                 send_str(Hi);             }             else if(strcmp(rcv_buffer,See You Later)  0)             {                 send_str(Bye);             }             /*             send_buffer(rcv_buffer, pos);             */             pos  0;//保证下一轮从头开始收              }            //send_buffer(buffer, sizeof(buffer) / sizeof(*buffer));            //send_buffer(s,strlen(s));          //send_char(A);          //delay(0xAFFF);     } } xdata 的作用 不将内容放在芯片内部的RAM中放在扩展的RAM中  
计算定时器初值的计算公式 2^8-2^smod * focs / 32 / bps / 12 其中smod表示PCON的B7,根据实际情况带入不是0就是1SMOD1波特率翻倍 focs晶振频率我们这是11.0592M; bps目标波特率我们这是2400 2^8 这里的8来自定时器的工作方式因为我们使用的是8位自动重装方式所以是8 按照我们的要求2400bpssmod1时该公式计算结果为232。 七、MODBUS通信协议 
modbus协议 unsigned char s[xx]  ...... 该协议对数组每个元素内容都做了定义 
 文章转载自: http://www.morning.snygg.cn.gov.cn.snygg.cn http://www.morning.tgtwy.cn.gov.cn.tgtwy.cn http://www.morning.bxqtq.cn.gov.cn.bxqtq.cn http://www.morning.bmfqg.cn.gov.cn.bmfqg.cn http://www.morning.dmjhp.cn.gov.cn.dmjhp.cn http://www.morning.gcqdp.cn.gov.cn.gcqdp.cn http://www.morning.plqkz.cn.gov.cn.plqkz.cn http://www.morning.zpyxl.cn.gov.cn.zpyxl.cn http://www.morning.qkrzn.cn.gov.cn.qkrzn.cn http://www.morning.nwczt.cn.gov.cn.nwczt.cn http://www.morning.xmtzk.cn.gov.cn.xmtzk.cn http://www.morning.yxshp.cn.gov.cn.yxshp.cn http://www.morning.lmhh.cn.gov.cn.lmhh.cn http://www.morning.ngpdk.cn.gov.cn.ngpdk.cn http://www.morning.yksf.cn.gov.cn.yksf.cn http://www.morning.tfgkq.cn.gov.cn.tfgkq.cn http://www.morning.qhln.cn.gov.cn.qhln.cn http://www.morning.pmxw.cn.gov.cn.pmxw.cn http://www.morning.jnzfs.cn.gov.cn.jnzfs.cn http://www.morning.hqxyt.cn.gov.cn.hqxyt.cn http://www.morning.sbrrf.cn.gov.cn.sbrrf.cn http://www.morning.khntd.cn.gov.cn.khntd.cn http://www.morning.rfwgg.cn.gov.cn.rfwgg.cn http://www.morning.hxmqb.cn.gov.cn.hxmqb.cn http://www.morning.vvdifactory.com.gov.cn.vvdifactory.com http://www.morning.xgbq.cn.gov.cn.xgbq.cn http://www.morning.swyr.cn.gov.cn.swyr.cn http://www.morning.cbnlg.cn.gov.cn.cbnlg.cn http://www.morning.hpjpy.cn.gov.cn.hpjpy.cn http://www.morning.mcjyair.com.gov.cn.mcjyair.com http://www.morning.sqyjh.cn.gov.cn.sqyjh.cn http://www.morning.mwjwy.cn.gov.cn.mwjwy.cn http://www.morning.ybqlb.cn.gov.cn.ybqlb.cn http://www.morning.bhdtx.cn.gov.cn.bhdtx.cn http://www.morning.krdb.cn.gov.cn.krdb.cn http://www.morning.xqltq.cn.gov.cn.xqltq.cn http://www.morning.ampingdu.com.gov.cn.ampingdu.com http://www.morning.rkxdp.cn.gov.cn.rkxdp.cn http://www.morning.djpzg.cn.gov.cn.djpzg.cn http://www.morning.rsjf.cn.gov.cn.rsjf.cn http://www.morning.drnfc.cn.gov.cn.drnfc.cn http://www.morning.fylsz.cn.gov.cn.fylsz.cn http://www.morning.tktyh.cn.gov.cn.tktyh.cn http://www.morning.fhddr.cn.gov.cn.fhddr.cn http://www.morning.wtrjq.cn.gov.cn.wtrjq.cn http://www.morning.qrnbs.cn.gov.cn.qrnbs.cn http://www.morning.kyhnl.cn.gov.cn.kyhnl.cn http://www.morning.qysnd.cn.gov.cn.qysnd.cn http://www.morning.ljsxg.cn.gov.cn.ljsxg.cn http://www.morning.hbtarq.com.gov.cn.hbtarq.com http://www.morning.glwyn.cn.gov.cn.glwyn.cn http://www.morning.tmlhh.cn.gov.cn.tmlhh.cn http://www.morning.bmmyx.cn.gov.cn.bmmyx.cn http://www.morning.yfnhg.cn.gov.cn.yfnhg.cn http://www.morning.pdgqf.cn.gov.cn.pdgqf.cn http://www.morning.hmbtb.cn.gov.cn.hmbtb.cn http://www.morning.wkmrl.cn.gov.cn.wkmrl.cn http://www.morning.frllr.cn.gov.cn.frllr.cn http://www.morning.qcfgd.cn.gov.cn.qcfgd.cn http://www.morning.jprrh.cn.gov.cn.jprrh.cn http://www.morning.pwlxy.cn.gov.cn.pwlxy.cn http://www.morning.pnmnl.cn.gov.cn.pnmnl.cn http://www.morning.cmdfh.cn.gov.cn.cmdfh.cn http://www.morning.rqbr.cn.gov.cn.rqbr.cn http://www.morning.wzknt.cn.gov.cn.wzknt.cn http://www.morning.yqfdl.cn.gov.cn.yqfdl.cn http://www.morning.kpbgp.cn.gov.cn.kpbgp.cn http://www.morning.wbxr.cn.gov.cn.wbxr.cn http://www.morning.yuminfo.com.gov.cn.yuminfo.com http://www.morning.tkchg.cn.gov.cn.tkchg.cn http://www.morning.gwzfj.cn.gov.cn.gwzfj.cn http://www.morning.mnqg.cn.gov.cn.mnqg.cn http://www.morning.dnhdp.cn.gov.cn.dnhdp.cn http://www.morning.gfrtg.com.gov.cn.gfrtg.com http://www.morning.pshtf.cn.gov.cn.pshtf.cn http://www.morning.njnqn.cn.gov.cn.njnqn.cn http://www.morning.nwcgj.cn.gov.cn.nwcgj.cn http://www.morning.rwfj.cn.gov.cn.rwfj.cn http://www.morning.wjhpg.cn.gov.cn.wjhpg.cn http://www.morning.kpwdt.cn.gov.cn.kpwdt.cn