久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4150|回復: 2
收起左側

雙51單片機叫號系統源程序+Proteus仿真

[復制鏈接]
ID:586708 發表于 2020-4-12 17:10 | 顯示全部樓層 |閱讀模式
兩個51單片機采用串口通信,實現叫號系統,附加為代碼+Proteus仿真,采用LCD12864顯示
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
51hei.png

單片機源程序如下:
  1. #include <REG51F.H>
  2. #include <stdlib.h>
  3. #include "uart.h"
  4. #include <stdio.h>
  5. #include "12864.h"
  6. #include "tcs_resource.h"

  7. unsigned char hour = 23;
  8. unsigned char mnt = 59;
  9. unsigned char sec = 50;
  10. sbit KEY1 = P1^0;
  11. sbit KEY2 = P1^1;
  12. void delay(uint ms);
  13. void button();
  14. void Delay10ms(uchar u);
  15. void Timer0Init(void);
  16. void show(void);
  17. void main(void)
  18. {
  19.         num=0;
  20.         TMOD=0x01;
  21.         EA = 1;                        //開總中斷
  22.         ES = 1;                        //串口中斷標志位
  23.         Timer0Init();
  24.         UartInit();
  25.          
  26.         choose12864(2);                //選擇為全屏操作
  27.         init12864();                //初始化12864
  28.         clear12864();                //清屏
  29.         while(1)
  30.         {
  31.                 show();
  32.                 button();
  33.                
  34.         }
  35. }
  36. void show(void)
  37. {
  38.         char j = 0;
  39.         play8(0,0,2,letter[13]);
  40.         play8(0,1,2,letter[20]);
  41.         play8(0,2,2,letter[22]);
  42.         play8(0,3,2,fuhao[0]);
  43.         play8(0,4,2,Number[Number1/10]);
  44.         play8(0,5,2,Number[Number1%10]);
  45.         
  46.         play8(1,0,2,letter[22]);
  47.         play8(1,1,2,letter[15]);
  48.         play8(1,2,2,fuhao[0]);
  49.         play8(1,3,2,Number[num/10]);
  50.         play8(1,4,2,Number[num%10]);
  51.         //顯示時分秒
  52.         play8(0,3,1,Number[hour/10]);
  53.         play8(0,4,1,Number[hour%10]);
  54.         play8(0,5,1,fuhao[1]);
  55.         play8(0,6,1,Number[mnt/10]);
  56.         play8(0,7,1,Number[mnt%10]);
  57.         play8(1,0,1,fuhao[1]);
  58.         play8(1,1,1,Number[sec/10]);
  59.         play8(1,2,1,Number[sec%10]);
  60. }

  61. void button()
  62. {
  63.         if(KEY1==0)
  64.         {
  65.                 delay(5);
  66.                 if(KEY1==0)
  67.                 {                        
  68.                         Number1++;
  69.                         num=Number1-1;
  70.                         choose12864(2);        //選擇為全屏顯示
  71.                         init12864();                //初始化12864
  72.                         clear12864();
  73.                         Delay10ms(1);
  74.                         while(KEY1==0);
  75.                         send();
  76.                 }
  77.         }
  78. }
  79. void delay(uint ms)
  80. {
  81.         uint i,j;
  82.         for(i=ms;i>0;i--)
  83.                 for(j=110;j>0;j--);
  84. }

  85. void Delay10ms(uchar u)               
  86. {
  87.         unsigned char i, j;

  88.         i = 108;
  89.         j = 145;
  90.         while(u--)
  91.         {
  92.         do
  93.         {
  94.                 while (--j);
  95.         } while (--i);}
  96. }

  97. void Timer0Init(void)                //62毫秒@11.0592MHz
  98. {
  99.         TMOD |= 0x01;
  100.         ET0 = 1;
  101.         TR0 = 1;                //定時器0開始計時
  102. }

  103. void T0ISR() interrupt 1
  104. {
  105.         static char n = 0;
  106.         TH0=(65536-62500)/256;//在65.536ms定時器允許的最大范圍內取最大值,1000/n=62.5ms,n=16
  107.         TL0=(65536-62500)%256;        
  108.         n++;
  109.         if(n>15)
  110.         {
  111.                 n = 0;
  112.                 sec++;
  113.                 if(sec>59)
  114.                 {
  115.                         sec = 0;
  116.                         mnt++;
  117.                         if(mnt>59)
  118.                         {
  119.                                 mnt = 0;
  120.                                 hour++;
  121.                                 if(hour>23)
  122.                                         hour = 0;
  123.                         }
  124.                 }
  125.         }
  126. }
復制代碼
51hei.png
所有資料51hei提供下載:
叫號系統.7z (43.97 KB, 下載次數: 68)

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

回復

使用道具 舉報

ID:302325 發表于 2020-5-13 12:38 | 顯示全部樓層
感謝分享               
回復

使用道具 舉報

ID:377614 發表于 2020-6-15 22:36 | 顯示全部樓層
資料文件不全
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 色888www视频在线观看 | 精品国产乱码久久久久久a丨 | 国产精品成人在线播放 | 国产乱码精品1区2区3区 | 久久久久久久久久久久91 | 国产午夜精品一区二区三区嫩草 | 一本色道精品久久一区二区三区 | 日本字幕在线观看 | av色在线 | 999久久| 狠狠久 | 国产精品美女久久久久aⅴ国产馆 | 一级片在线观看视频 | 免费簧片视频 | 国产三区精品 | 成年视频在线观看 | 欧美精品一级 | 超碰av在线 | 天天av网 | 婷婷丁香在线视频 | 日本一区精品 | 91原创视频在线观看 | 国产乡下妇女做爰 | 久久精品一区二区视频 | 一区二区三区国产精品 | 亚洲免费片 | 亚洲免费网 | 欧美三级视频在线观看 | 日韩一区二区在线视频 | 色橹橹欧美在线观看视频高清 | 激情一区二区三区 | 日本黄色大片免费 | 亚洲成人在线视频播放 | 成人h电影在线观看 | 少妇精品亚洲一区二区成人 | 日日操夜夜操天天操 | 凹凸日日摸日日碰夜夜 | 成人福利网 | 少妇久久久 | 成人性生交大片免费看中文带字幕 | 国产精品国产三级国产aⅴ无密码 |