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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5121|回復: 0
打印 上一主題 下一主題
收起左側

51單片機流水燈及計數器程序

[復制鏈接]
跳轉到指定樓層
樓主


  1. #include<reg51.h>
  2. unsigned char led[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
  3. unsigned charled_mod[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};
  4. unsigned char j=0;
  5. unsigned char LCD_Status;
  6. bit dir=0,run=0;
  7. sbit RS=P1^6;
  8. sbit RW=P1^7;
  9. void delay(unsigned int count)   //延時函數
  10. {  unsigned char i;
  11.    while(count--)
  12.    for(i=0;i<120;i++);
  13. }
  14. unsigned char Busy_Check()    //檢查忙函數
  15. {  RS=0;RW=1;  
  16.    P2=0x4f;
  17.    delay(2);
  18.    LCD_Status=P0;       //讀出LCD的狀態
  19.    delay(2);
  20.    P2=0x8f;         
  21.    return LCD_Status;
  22. }
  23. void  wcmd(unsigned char cmd)   //寫命令函數
  24. {  while((Busy_Check() &0x80)==0x80);
  25.    RS=0;RW=0;
  26.    P2=0x4f;         
  27.    P0=cmd;              //命令由P0口送入LCD
  28.    delay(2);
  29.    P2=0x8f;         
  30. }
  31. void  wdat(unsigned char dat)   //寫數據函數
  32. {  while((Busy_Check() &0x80)==0x80);  
  33.    RS=1;RW=0;
  34.    P2=0x4f;            
  35.    P0=dat;                 //數據由P0口送入LCD
  36.    delay(2);        
  37.    P2=0x8f;
  38. }
  39. void LCD_init()       //初始化函數
  40. {  wcmd(0x38);         //38H=0011 1000,使用8位,用5×7的字型,2行
  41.    delay(20);      
  42.    wcmd(0x01);         //01H=0000 0001,清屏
  43.    delay(20);      
  44.    wcmd(0x06);         //06H=0000 0110,字符不動,光標自動右移一格
  45.    delay(20);
  46.    wcmd(0x0e);          //0eH=0000 1110,開顯示,有光標,字符不閃爍
  47.    delay(20);
  48. }
  49. void main(){          //主函數,流水燈運行
  50. signed char j;
  51. IT1=1;
  52. EX1=1;
  53. EA=1;
  54. PX1=0;
  55. while(1){
  56. switch(P3&0x3c){
  57. case 0x38:run=1;dir=1;break;
  58. case 0x34:run=0;dir=0;break;
  59. case 0x2c:dir=0;break;
  60. case 0x1c:dir=1;break;}
  61.     if(run==1)
  62.     if(dir==1)
  63.       for(j=0;j<=7;j++){
  64.             P2=led[j];
  65.       delay(500);
  66.       }
  67.         else
  68.           for(j=7;j>=0;j--){
  69.             P2=led[j];
  70.       delay(500);
  71.             }
  72.     else P2=0xff;
  73. }}
  74. K2() interrupt 2{          //中斷函數,LCD顯示,計數開始
  75. LCD_init();
  76. wcmd(0x80+00);   
  77. wdat('1');         
  78. wdat('1');         
  79. wdat('1');        
  80. wdat('2');
  81. wdat('2');
  82. wdat('2');
  83. wdat('3');
  84. wdat('3');
  85. wdat('3');
  86. wdat('4');
  87. wdat('4');
  88. wdat('4');
  89. wcmd(0x80+0x40);
  90. wdat('B');
  91. wdat('1');
  92. wdat('1');
  93. wdat('2');
  94. wdat('2');
  95. wdat('3');
  96. wdat('3');
  97. wdat('4');
  98. wdat('4');
  99. for(j=0;j<=99;j++)
  100. {P2=0x8f;
  101. P0=led_mod[j/10];
  102. P2=0x1f;
  103. P0=led_mod[j%10];
  104. delay(500);
  105. P0=0;}
  106. }
復制代碼


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

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 激情综合五月 | 91精品国模一区二区三区 | 日韩在线不卡 | 国产日韩精品一区二区三区 | 在线一区二区国产 | 二区av| 日韩一区二区免费视频 | 激情久久网 | 日本精品视频在线观看 | 在线成人www免费观看视频 | 久久高清国产视频 | 国产激情一区二区三区 | 欧洲成人 | 丁香色婷婷 | 久久久精品一区 | 精品免费视频 | 国产成人在线一区二区 | 日韩欧美国产精品一区二区三区 | 成人国产网站 | 国产中文字幕在线 | 毛片在线免费 | 97国产在线观看 | 久久91精品国产 | 日本精品一区二区三区视频 | 99热在线免费 | 国产成人在线播放 | 亚洲欧美日韩在线一区二区 | 色婷婷亚洲一区二区三区 | 中文字幕在线观看视频一区 | 亚洲一区国产精品 | 国产三级 | 精品国产成人 | 欧美一区二区三区在线观看 | 一区二区成人 | 做a视频| 99久久精品国产一区二区三区 | 欧美成人精品一区二区男人看 | 色综合久久久久 | 9色视频在线 | 91在线色视频 | 中文字幕在线观看视频一区 |