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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機(jī)流水燈試驗(yàn)程序

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主


  1. #include <REGX51.H>
  2. #include <intrins.h>
  3. unsigned char code table[]={0XC0,0XF9,0XA4,0XB0,0X99,0X92,0X82,0XF8,0X80,0X90};
  4. unsigned char code wei[]={0XF7,0XFB,0XFD,0XFE};
  5. sbit K1=P3^3;
  6. sbit K2=P3^4;
  7. sbit K3=P3^5;
  8. sbit K4=P3^6;
  9. sbit K5=P2^7;
  10. sbit K6=P2^4;
  11. sbit K7=P2^5;
  12. sbit K8=P2^6;
  13. void key();
  14. void seg_display_buffer(char *buffer);
  15. void Delay(unsigned int xms);
  16. bit interrupt_flag = 0;
  17. unsigned char i;
  18. #define LED_PORT P1
  19. #define SEG_PORT P2
  20. char display_bufer[]={0,0,0,0};
  21. void Delay500ms();
  22. bit flag1 = 0, flag2 = 0, flag3 = 0;
  23. void main()
  24. {
  25.         IT0 = 1; // 邊沿觸發(fā)
  26.     EX0 = 1; // 允許INT0中斷
  27.     EA = 1;  // 開總中斷
  28.         while(1)
  29.         {
  30.                 seg_display_buffer(display_bufer);
  31.                 key();
  32.                 {
  33.         if(!interrupt_flag) {
  34.             LED_PORT = 0xFE;
  35.             Delay500ms();
  36.             for( i=0; i<7; i++) {
  37.                 LED_PORT = _crol_(LED_PORT, 1);
  38.                 Delay500ms();
  39.             }
  40.         }
  41.     }
  42.         }
  43. }
  44.         void seg_display_buffer(char *buffer)
  45.         {

  46.                 int i,j;
  47.                 for(i=0;i<=3;i++)
  48.                 {
  49.                 P0=table[buffer[i]];
  50.                 P2=wei[i];
  51.                 for(j=0;j<20;j++);
  52.                 P2=0XFF;
  53.                 for(j=0;j<10;j++);
  54.                 }       
  55.         }
  56. void Delay(unsigned int ms)                //@12.000MHz
  57. {
  58.         unsigned char i, j;
  59.         for(i=0;i<ms;i++);
  60.         for(j=0;j<810;j++);
  61. }
  62. void INT0_ISR() interrupt 0 {
  63.     interrupt_flag = 1;
  64.     SEG_PORT=0000;
  65.         LED_PORT=0000;
  66.     Delay500ms();    // 消抖
  67. }
  68. void key()
  69. {
  70.         if(!K1)
  71.         {       
  72.                 Delay500ms();
  73.                 while(!K1);
  74.                 Delay500ms();
  75.                 display_bufer[3]=1;
  76.                 display_bufer[2]=1;
  77.                 display_bufer[1]=1;
  78.                 display_bufer[0]=1;
  79.                 LED_PORT=0xFE;
  80.                 Delay500ms();
  81.         }
  82.                 if(!K2)
  83.         {       
  84.                 Delay500ms();
  85.                 while(!K2);
  86.         Delay500ms();
  87.                 display_bufer[3]=2;
  88.                 display_bufer[2]=2;
  89.                 display_bufer[1]=2;
  90.                 display_bufer[0]=2;
  91.                 LED_PORT=0xFD;
  92.                 Delay500ms();
  93.         }
  94.         if(!K3)
  95.         {
  96.                 Delay500ms();
  97.                 while(!K3);
  98.                 Delay500ms();
  99.                 display_bufer[3]=3;
  100.                 display_bufer[2]=3;
  101.                 display_bufer[1]=3;
  102.                 display_bufer[0]=3;
  103.                 LED_PORT=0xFB;
  104.                 Delay500ms();
  105.         }
  106.         if(!K4)
  107.         {
  108.                 Delay500ms();
  109.                 while(!K4);
  110.                 Delay500ms();
  111.                 display_bufer[3]=4;
  112.                 display_bufer[2]=4;
  113.                 display_bufer[1]=4;
  114.                 display_bufer[0]=4;
  115.                 LED_PORT=0xF7;
  116.                 Delay500ms();
  117.         }
  118.         if(!K5)
  119.         {
  120.                 Delay500ms();
  121.                 while(!K5);
  122.                 Delay500ms();
  123.                 display_bufer[3]=5;
  124.                 display_bufer[2]=5;
  125.                 display_bufer[1]=5;
  126.                 display_bufer[0]=5;
  127.                 LED_PORT=0xEF;
  128.                 Delay500ms();
  129.         }
  130.         if(!K6)
  131.         {
  132.                 Delay500ms();
  133.                 while(!K6);
  134.                 Delay500ms();
  135.                 display_bufer[3]=6;
  136.                 display_bufer[2]=6;
  137.                 display_bufer[1]=6;
  138.                 display_bufer[0]=6;
  139.                 LED_PORT=0xDF;
  140.                 Delay500ms();
  141.         }
  142.         if(!K7)
  143.         {
  144.                 Delay500ms();
  145.                 while(!K7);
  146.                 Delay500ms();
  147.                 display_bufer[3]=7;
  148.                 display_bufer[2]=7;
  149.                 display_bufer[1]=7;
  150.                 display_bufer[0]=7;
  151.                 LED_PORT=0xBF;
  152.                 Delay500ms();
  153.         }
  154.         if(!K8)
  155.         {
  156.                 Delay500ms();
  157.                 while(!K8);
  158.                 Delay500ms();
  159.                 display_bufer[3]=8;
  160.                 display_bufer[2]=8;
  161.                 display_bufer[1]=8;
  162.                 display_bufer[0]=8;
  163.                 LED_PORT=0x7F;
  164.                 Delay500ms();
  165.         }
  166. }

  167. void Delay500ms()                //@12.000MHz
  168. {
  169.         unsigned char i, j, k;
  170.         i = 4;
  171.         j = 205;
  172.         k = 187;
  173.         do
  174.         {
  175.                 do
  176.                 {
  177.                         while (--k);
  178.                 } while (--j);
  179.         } while(--i);
  180. }
復(fù)制代碼

11.261.7z

77.39 KB, 下載次數(shù): 0

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

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 欧美精品一区免费 | 日韩精品一区二区三区四区视频 | 久久亚 | 亚洲视频免费在线观看 | 亚洲美女一区二区三区 | 成人欧美一区二区三区在线播放 | 美女人人操 | www.日本三级| 国产成在线观看免费视频 | 欧美日韩专区 | 综合亚洲视频 | 我想看国产一级毛片 | 国产精品区二区三区日本 | 超碰导航 | 欧美一区二区在线 | 91玖玖| 日韩在线一区二区 | 天堂中文在线播放 | 天堂在线1| 天天操夜夜骑 | 大伊人久久 | 亚洲图片一区二区三区 | 欧美婷婷 | 国产丝袜av| 国产乱码精品一区二区三区忘忧草 | 久久福利电影 | 伊人91在线| 久久久国产一区 | 中文字幕av网站 | 日日做夜夜爽毛片麻豆 | 国产 日韩 欧美 中文 在线播放 | 狼色网| 日本黄色免费视频 | 久久免费福利 | 国产欧美一区二区久久性色99 | 国产乱码精品一区二区三区中文 | 国产精品久久久久一区二区 | 一区天堂 | 午夜丰满寂寞少妇精品 | 深夜福利亚洲 | 91视频在线观看 |