标题: 51单片机串口通信Proteus仿真程序 [打印本页]

作者: shizhi`xun    时间: 2019-11-17 17:33
标题: 51单片机串口通信Proteus仿真程序
使用串口通信。具体功能描述如下:采用USART,波特率为9600,一个单片机发送数字,一个单片机接收,并把接收的数字用数码管显示。


单片机源程序如下:
  1. #include <reg52.h>
  2. #define uchar unsigned char
  3. #define uint unsigned int        //宏定义
  4. bit tt;
  5. uchar aa;
  6. void display(uchar aa);
  7. void delay(uint c);
  8. void init();
  9. sbit Ledshi = P2^0;   //十位数码管使能端
  10. sbit Ledge = P2^1;    //个位数码管使能端
  11. uchar ma[]=
  12. {
  13.   0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f
  14. };                    //编码0~9

  15. void main()
  16. {
  17.   init();
  18.   while(1)
  19.    {
  20.      while(tt)
  21.            {
  22.             display(aa);
  23.             delay(20);
  24.            }
  25.    }
  26. }

  27. void init()
  28. {
  29.   PCON &= 0x7F;        //波特率不加倍
  30.   TMOD=0x20;           //定时器1工作方式2
  31.   TH1=0xfd;
  32.   TL1=0xfd;            //给定时器定初值,设置波特率为9600
  33.   TR1=1;               //开启定时器1工作
  34.   SCON=0x50;           //允许串行口接收数据,设置串行口工作方式1
  35.   EA=1;
  36.   ES=1;                //打开串行口中断
  37.   ET1=0;               //禁止定时器1中断
  38. }

  39. void display(uchar aa) //显示函数
  40. {
  41.   uchar shi,ge;
  42.   shi=aa/10;           //取十位
  43.   ge=aa%10;            //取个位

  44.   P0=ma[shi];          //送十位值
  45.   P2=0xbf;             //选择段选位置
  46.   delay(5);
  47.   P0=0;                //数码管消影
  48.   P2=0xff;

  49.   P0=ma[ge];           //送个位值
  50.   P2=0x7f;             //选择段选位置
  51.   delay(5);
  52.   P0=0;                //数码管消影
  53.   P2=0xff;
  54. }

  55. void delay(uint c)           //延时函数
  56. {
  57.   uchar i,j;
  58.   for(i=0;i<c;i++)
  59.   for(j=0;j<110;j++);
  60. }

  61. void receive() interrupt 4
  62. {
  63.   aa=SBUF;
  64.   tt = 1;              //接受一次后打开显示
  65.   ES = 0;              //关闭串行中断
  66.   RI = 0;              //清除串行接受标志位
  67. }
复制代码

所有资料51hei提供下载:
51单片机串口通信.zip (18.6 KB, 下载次数: 157)



作者: value123    时间: 2019-12-31 00:04
tt这个变量什么意思?
作者: s擦掉    时间: 2020-5-31 18:47
少东西,下完后只有一个单片机的程序,缺少另一个发送的
作者: csy-2015-06    时间: 2020-6-4 00:10
大学的练习?




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1