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

QQ登錄

只需一步,快速開始

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

單片機(jī)病床呼叫系統(tǒng)仿真原理圖+程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
病床呼叫系統(tǒng)設(shè)計(jì)仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)


單片機(jī)源程序如下:
  1. #include<reg51.h>
  2. #define uchar unsigned char
  3. #define uint insigned int
  4. uchar code LED[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};
  5. uchar Buffer[]={0x3F,0x3F};
  6. sbit CLAER=P3^1;
  7. sbit BUZZ=P3^0;
  8. uchar key_scan();
  9. void key_count(uchar num);
  10. void disp();
  11. void delay(uchar s);
  12. void buzz_on();
  13. void main()
  14. {
  15. uchar temp;
  16. while(1)
  17.         {
  18. disp();
  19. temp=key_scan();
  20.         if(temp!=0xFF)
  21.           {
  22.                   key_count(temp+1);
  23.                         while(CLAER==1)
  24.                         {
  25.                         buzz_on();
  26.                         disp( );
  27.                         }
  28.                 Buffer[0]=0x3F;
  29.                 Buffer[1]=0x3F;
  30.                 BUZZ=1;
  31.                 }
  32.         }
  33. }
  34. void disp()
  35. {
  36.         uchar i,w;
  37.         w=0x01;
  38.   for(i=0;i<2;i++)
  39.     {
  40.     P2=~w;
  41.     w<<=1;
  42.     P0=Buffer[i];
  43.     delay(10);
  44.     P2=0xFF;
  45.     }
  46. }               
  47. uchar key_scan(void)
  48. {
  49.         uchar key=0xFF,cord_h,cord_1;
  50.         P1=0x0F;
  51.         cord_h=P1&0x0F;
  52.         if(cord_h!=0x0F)
  53.         {
  54.         delay(10);
  55.         if(cord_h!=0x0F)
  56.           {
  57.                 cord_h=P1&0x0F;
  58.                 P1=0xF0;
  59.                 cord_1=P1&0xF0;
  60.                 while((P1&0xF0)!=0xF0);
  61.                 switch(cord_h+cord_1)
  62.                         {
  63.                         case 0xEE:key=0;break;//S1
  64.                         case 0xED:key=1;break;//S2
  65.                         case 0xEB:key=2;break;//S3
  66.                         case 0xE7:key=3;break;//S4
  67.                         case 0xDE:key=4;break;//S5
  68.                         case 0xDD:key=5;break;//S6
  69.                         case 0xDB:key=6;break;//S7
  70.                         case 0xD7:key=7;break;//S8
  71.                         case 0xBE:key=8;break;//S9
  72.                         case 0xBD:key=9;break;//S10
  73.                         case 0xBB:key=10;break;//S11
  74.                         case 0xB7:key=11;break;//S12
  75.                         case 0x7E:key=12;break;//S13
  76.                         case 0x7D:key=13;break;//S14
  77.                         case 0x7B:key=14;break;//S15
  78.                         case 0x77:key=15;break;//S16
  79.                         default: key=0xFF;break;
  80.                         }
  81.                 }
  82.         }
  83.           return(key);
  84.   }
  85. void key_count(uchar num)
  86. {
  87.         Buffer[0]=LED[num/10];
  88.         Buffer[1]=LED[num%10];
  89.   }
  90. void buzz_on()
  91. {
  92. BUZZ=0;
  93. delay(1);
  94. BUZZ=1;
  95. delay(1);
  96. }
  97. void delay(uchar s)
  98. {
  99.         int j;
  100. while(s--)
  101.         for(j=0;j<20;j++);
  102.   }
復(fù)制代碼

所有資料51hei提供下載:
病床呼叫系統(tǒng).zip (18.59 KB, 下載次數(shù): 123)


評(píng)分

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

查看全部評(píng)分

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

使用道具 舉報(bào)

沙發(fā)
ID:433124 發(fā)表于 2018-11-25 23:11 | 只看該作者
請(qǐng)問您這個(gè)源代碼是完整的嗎,我用Isis仿真之后,數(shù)碼管沒有顯示
回復(fù)

使用道具 舉報(bào)

板凳
ID:302325 發(fā)表于 2018-11-26 08:38 | 只看該作者
感謝分享   賺錢下載              
回復(fù)

使用道具 舉報(bào)

地板
ID:492152 發(fā)表于 2019-6-8 13:56 | 只看該作者
很不錯(cuò)
回復(fù)

使用道具 舉報(bào)

5#
ID:1064114 發(fā)表于 2023-2-27 08:45 | 只看該作者
白衣 發(fā)表于 2018-11-25 23:11
請(qǐng)問您這個(gè)源代碼是完整的嗎,我用Isis仿真之后,數(shù)碼管沒有顯示

我用proteus仿真數(shù)碼管只亮,按鍵也沒有顯示
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表