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

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 4060|回復(fù): 2
打印 上一主題 下一主題
收起左側(cè)

雙51單片機(jī)叫號(hào)系統(tǒng)源程序+Proteus仿真

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
兩個(gè)51單片機(jī)采用串口通信,實(shí)現(xiàn)叫號(hào)系統(tǒng),附加為代碼+Proteus仿真,采用LCD12864顯示
仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


單片機(jī)源程序如下:
  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;                        //串口中斷標(biāo)志位
  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.         //顯示時(shí)分秒
  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;                //定時(shí)器0開始計(jì)時(shí)
  102. }

  103. void T0ISR() interrupt 1
  104. {
  105.         static char n = 0;
  106.         TH0=(65536-62500)/256;//在65.536ms定時(shí)器允許的最大范圍內(nèi)取最大值,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. }
復(fù)制代碼

所有資料51hei提供下載:
叫號(hào)系統(tǒng).7z (43.97 KB, 下載次數(shù): 68)

評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏3 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:302325 發(fā)表于 2020-5-13 12:38 | 只看該作者
感謝分享               
回復(fù)

使用道具 舉報(bào)

板凳
ID:377614 發(fā)表于 2020-6-15 22:36 | 只看該作者
資料文件不全
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 一级片视频免费观看 | 性天堂网 | 91视频在线| 久久亚洲视频 | 人操人人 | 成人免费小视频 | 国产精华一区 | 中文字幕人成乱码在线观看 | 亚洲视频在线一区 | 精品视频一区二区三区在线观看 | 成人欧美一区二区三区在线观看 | 91视频精选 | 欧美小视频在线观看 | 欧美在线视频一区 | 国产一二区免费视频 | 丝袜 亚洲 另类 欧美 综合 | 成人国产精品久久久 | 成人av观看 | 中文字幕一区二区三区日韩精品 | 国产精品永久免费视频 | 欧美精品网站 | 亚洲高清在线 | 一区二区成人 | 日韩欧美一区二区三区免费观看 | 一区二区三区视频在线观看 | 啪啪免费网 | 国产麻豆乱码精品一区二区三区 | 一区中文字幕 | 精品一区二区三 | 欧美一卡二卡在线观看 | 一二区成人影院电影网 | 国产欧美精品一区二区 | 色婷婷国产精品 | 亚洲视频一区二区三区 | 久久久久久久久久久久久9999 | 国产成人精品一区二 | 国产成人精品一区二区三区四区 | 日本精品视频一区二区 | 亚洲欧美在线观看 | 成人免费看 | 一级黄a视频 |