微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 在VB下PC机与MCS-51单片机的串行通信

在VB下PC机与MCS-51单片机的串行通信

时间:01-30 来源:互联网 点击:

6字节二进制数据,然后用鼠标点击通信按钮即可。

4. 单片机C51程序

  MCS-51单片机晶振为11.0592MHz,串行口的工作方式设置为方式1,10位异步收发。采用查询方式接收和发送,程序清单如下:

#include
#include uchar unsigned char
main() {
  uchar temp,datmsg[6];
  TMOD=0x20; //设置波特率为19.2kb/s
  PCON=0x80;
  TH1=0xfd; TL1=0xfd;
  TR1=1; //启动定时器1
  SCON=0x50; //设置串行口为10位异步收发,且允许 //接收
  while(1) {for(temp=0;temp6;temp++) //连续接收6个 //字节
    {while(RI==0); RI=0;
    datmsg[temp]=SBUF;
    }
    for(temp=0;temp6;temp++)//连续发送6个 //字节
    {SBUF=datmsg[temp]; while(TI==0);TI=0;
    }
  }
}

结束语

  由于篇幅所限,本程序仅为演示参考程序,并无实际意义。但它展示了PC机和单片机串行通信的一般方法以及在VB 中处理二进制数据的方法,使得单片机和PC机的应用能够更加紧密地结合在一起。读者可在此基础上加入一些握手信号和检错码,如奇偶校验、累加和校验及循环冗余校验(CRC)等等,便可成为自己的应用程序。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top