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

QQ登錄

只需一步,快速開始

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

電腦上位機(jī)控制單片機(jī)流水燈花樣的變化

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:3721 發(fā)表于 2016-6-17 01:21 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式



上位機(jī)程序,vc++編程,51黑附件中該可以下載源代碼

下面是電腦可控流水燈的下位機(jī)單片機(jī)源碼:
  1. #include<reg52.h>
  2. #include <intrins.h>                                //該庫函數(shù)中包含了下面程序中要用到的_crol_()函數(shù)
  3. #define uint unsigned int
  4. #define uchar unsigned char
  5. uchar flag,d;
  6. const unsigned char design[77]={0xFF,0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,// 左移
  7. 0x7F,0x7F,0xBF,0xDF,0xEF,0xF7,0xFB,0xFD,//右移
  8. 0xFE,0xFF, 0xFF,0xFE,0xFC,0xF8,0xF0,0xE0,0xC0,0x80,0x0, //逐漸點(diǎn)亮
  9. 0xFE,0xFF, 0xFF,0xFE,0xFC,0xF8,0xF0,0xE0,0xC0,0x80,0x0, //逐漸點(diǎn)亮
  10. 0xE7,0xDB,0xBD,0x7E,0xFF ,//從中間到兩邊
  11. 0xE7,0xDB,0xBD,0x7E,0xFF,//從中間到兩邊
  12. 0x7F,0x7F,0xDF,0xDF,0xf7,0xf7,0xfd,0xfd,0x0,0x0,
  13. 0xbf,0xbf,0xef,0xef,0xfb,0xfb,0xfe,0xfe,0x0,0x0,
  14. 0x3f,0xcf,0xfc,0xf3,
  15. 0x1f,0x8f,0xc7,0xe3,0xf1,};





  16. void delayms()            // 延時(shí)子程序
  17. {                                               
  18.         uint i;

  19.   for(i = 0; i < 20000; i++);

  20. }



  21. void main()
  22. {
  23.   TMOD=0x20;
  24.   TH1=0xfd;
  25.   TL1=0xfd;
  26.   TR1=1;
  27.   REN=1;
  28.   SM0=0;
  29.   SM1=1;
  30.   EA=1;
  31.   ES=1;
  32.   while(1)
  33.   {           if(flag==1)
  34.      {         ES=0;
  35.             flag=0;
  36.             SBUF=d;

  37.            while(!TI);
  38.            TI=0;
  39.                 ES=1;
  40.                  
  41.          
  42.          }
  43.   
  44.   }       

  45. }
  46. void ckzd() interrupt 4
  47. { uchar b,LED,c, i;         uint a;
  48. uchar LED1=0XFE,LED2=0XFD,LED3=0XFB,LED4=0XF7,LED5=0XEF,LED6=0XDF,LED7=0xbf,LED8=0X7F;
  49.          RI=0;
  50.          b=SBUF;

  51.     d=SBUF;
  52.          flag=1;





  53. switch( b ) {
  54.     case 'a':
  55.   
  56.       P1=P1&LED1;break;

  57.         case 'A':                        //led1

  58.       P1=P1|(~LED1);break;

  59.     case 'b':

  60.       P1=P1&LED2;break;
  61.          case 'B':                         //led2

  62.      P1=P1|(~LED2);break;

  63.         case 'c':
  64.       
  65.       P1=P1&LED3;break;

  66.         case'C':                        //led3

  67.            P1=P1|(~LED3); break;

  68.     case'd':

  69.       P1=P1&LED4;break;

  70.         case'D':                   //led4

  71.            P1=P1|(~LED4);break;

  72.         case 'e':

  73.       P1=P1&LED5; break;

  74.     case'E':
  75.                                           //led5
  76.            P1=P1|(~LED5); break;

  77.         case 'f':                          

  78.         P1=P1&LED6;break;

  79.         case'F':
  80.        
  81.            P1=P1|(~LED6);break;         //led6

  82.         case 'g':

  83.       P1=P1&LED7; break;

  84.      case'G':

  85.          P1=P1|(~LED7);break; //led7

  86.          case 'h':
  87.    
  88.       P1=P1&LED8;break;

  89.          case'H':
  90.        
  91.            P1=P1|(~LED8);break;         //led8

  92.   






  93.         case '1':

  94.               LED = 0x7f;
  95.            P1 = P1&LED;
  96.       for(i=0;i<8;i++)
  97.           {

  98.                              
  99.                 LED = _crol_(LED,1);//循環(huán)左移1位,點(diǎn)亮下一個(gè)LED,_crol_()是庫函數(shù)左移
  100.                 P1 = LED;
  101.                          delayms();//延時(shí)

  102.           }        ;
  103.              LED = 0x7f;
  104.            P1 = P1&LED;
  105.       for(i=0;i<8;i++)
  106.           {

  107.                              
  108.                 LED = _crol_(LED,1);//循環(huán)左移1位,點(diǎn)亮下一個(gè)LED,_crol_()是庫函數(shù)左移
  109.                 P1 = LED;
  110.                          delayms();//延時(shí)

  111.           }        ;

  112.                 P1=0xff;
  113.    
  114.        break;
  115.            case '2':

  116.               LED = 0xFE;
  117.            P1 =P1& LED;

  118.           for(i=0;i<8;i++)
  119.           {

  120.                              
  121.                 LED = _cror_(LED,1);//循環(huán)右移1位,點(diǎn)亮下一個(gè)LED,_crol_()是庫函數(shù)左移
  122.                 P1 = LED;
  123.                 delayms();//延時(shí)
  124.                

  125.           }        ;

  126.                   LED = 0xFE;
  127.            P1 =P1& LED;

  128.           for(i=0;i<8;i++)
  129.           {

  130.                              
  131.                 LED = _cror_(LED,1);//循環(huán)右移1位,點(diǎn)亮下一個(gè)LED,_crol_()是庫函數(shù)左移
  132.                 P1 = LED;
  133.                 delayms();//延時(shí)
  134.                

  135.           }        ;
  136.                  P1=0xff;
  137.    
  138.        break;

  139.    case '3':
  140.   
  141.            for (c=0; c<77; c++)
  142.                             {
  143.                              for(a=0; a<30000; a++); //延時(shí)一段時(shí)間
  144.                              P1 = design[c]; //讀已定義的花樣數(shù)據(jù)并寫花樣數(shù)據(jù)到 P0 口
  145.                             }
  146.          

  147.      default:
  148.       P1=0xff;
  149.       break;
  150.   }
  151.        
  152. }
  153.        
復(fù)制代碼



可以通過上位機(jī)按鈕控制流水燈花樣變化
led上位機(jī)下位機(jī).rar (4.99 MB, 下載次數(shù): 147)

評(píng)分

參與人數(shù) 4黑幣 +19 收起 理由
xb84510 + 5
小菜不敗 + 4 絕世好帖!
23032 + 5 很給力!
dcs + 5 贊一個(gè)!

查看全部評(píng)分

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

相關(guān)帖子

回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:138918 發(fā)表于 2016-9-9 10:12 | 只看該作者
真的不錯(cuò)哦 果斷收藏
回復(fù)

使用道具 舉報(bào)

板凳
ID:199554 發(fā)表于 2017-5-11 15:01 | 只看該作者
感謝
回復(fù)

使用道具 舉報(bào)

地板
ID:249699 發(fā)表于 2017-11-15 15:51 | 只看該作者
給力!51黑有你更精彩。!
回復(fù)

使用道具 舉報(bào)

5#
ID:240034 發(fā)表于 2018-4-12 18:11 | 只看該作者
不錯(cuò),跟著學(xué)習(xí)了。
回復(fù)

使用道具 舉報(bào)

6#
ID:218113 發(fā)表于 2018-8-24 13:43 | 只看該作者
感謝分享,很不錯(cuò)
回復(fù)

使用道具 舉報(bào)

7#
ID:456793 發(fā)表于 2018-12-27 20:46 | 只看該作者
老鐵,很棒
回復(fù)

使用道具 舉報(bào)

8#
ID:432687 發(fā)表于 2019-5-26 03:16 來自手機(jī) | 只看該作者
完美一直在尋找它很長一段時(shí)間! 謝謝你的分享。
回復(fù)

使用道具 舉報(bào)

9#
ID:71883 發(fā)表于 2019-7-31 17:35 | 只看該作者
感謝分享,很不錯(cuò)。w10能用嗎?
回復(fù)

使用道具 舉報(bào)

10#
ID:384552 發(fā)表于 2019-10-31 15:51 | 只看該作者
非常感謝
回復(fù)

使用道具 舉報(bào)

11#
ID:185751 發(fā)表于 2019-11-10 14:43 | 只看該作者

不錯(cuò),跟著學(xué)習(xí)了!
回復(fù)

使用道具 舉報(bào)

12#
ID:517493 發(fā)表于 2019-11-26 17:50 | 只看該作者
支持樓主,學(xué)習(xí)
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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