<tfoot id="ygvxt"><menuitem id="ygvxt"></menuitem></tfoot>
    • <kbd id="ygvxt"></kbd>
      <th id="ygvxt"><progress id="ygvxt"></progress></th>

      您好,歡迎訪問上海意泓電子科技有限責(zé)任公司網(wǎng)站!
      4新聞資訊
      您的位置: 首頁 ->  新聞資訊 -> 單片機

      ?51單片機 (2)流水燈實驗

      文章出處:單片機 責(zé)任編輯:上海意泓電子科技有限責(zé)任公司 發(fā)表時間:
      2018
      05-19

      一、控制一/多燈亮滅

      匯編實現(xiàn)


      1. ;注釋  

      2. LOOP:  

      3. ;SETB P1.1 ;(1)熄滅燈  

      4. MOV P1,#0FFH;  

      5. LCALL DELAY     ;(2)延時一段時間  

      6. ;CLR P1.1        ;(3)點亮燈  

      7. MOV P1,#0FDH;  

      8. LCALL DELAY     ;(4)延時一段時間     

      9. AJMP LOOP       ;(5)跳轉(zhuǎn)到第一句LOOP處  

      10.   

      11. ;以下子程序   

      12. DELAY:   

      13.     MOV R7,#250 ;  

      14. D1: MOV R6,#250 ;  

      15. D2: DJNZ R6,D2  ;R6=R6-1;IF(R6!=0) GOTO D2;  

      16.     DJNZ R7,D1  ;  

      17.     RET         ;返回主程序  

      18. END             ;子程序結(jié)束標(biāo)志  


      C語言實現(xiàn)


      1. #include   

      2.   

      3. sbit led=P1^3;  

      4. void Delay(){  

      5.     unsigned char i,j;  

      6.     for(i=0;i<250;i++)  

      7.     for(j=0;j<200;j++);  

      8. }  

      9. void main(){  

      10.    while(1){  

      11.       P1=0xfe;  

      12.       Delay(); Delay();Delay();Delay();  

      13.       led=0;  

      14.       Delay(); Delay();Delay();Delay();  

      15.       P1=0x00;  

      16.       Delay(); Delay();Delay();Delay();  

      17.    }  

      18. }  

      開關(guān)控制單燈亮滅


      1. #include   

      2.   

      3. sbit led=P1^3;  

      4. void main(){  

      5.    while(1){  

      6.       if(P0^1==0){ //開關(guān)是否按下  

      7.         led=0;  

      8.       }else{  

      9.             led=1;  

      10.       }  

      11.    }  

      12. }  

      流水燈表示乘法運算結(jié)果


      1. #include  

      2. void main(void){  

      3.   unsigned char s,m,n;  

      4.   m=64;  

      5.   n=71;  

      6.   s=m*n;  //s=4544=17*256+192  所以用P0表示17、P1表示192  

      7.   P0=s/256;  

      8.   P1=s%256;  

      9. }  


      走馬燈


      1. #include   

      2. void Delay(){  

      3.     unsigned char i,j;  

      4.     for(i=0;i<250;i++)  

      5.     for(j=0;j<250;j++);  

      6. }  

      7. void main(){  

      8.    unsigned int i;  

      9.    i=0x01;   

      10.    while(1){  

      11.       P1=i; Delay();  

      12.       i<<=1;  

      13.       if(i==0x100) i=0x01;  

      14.    }  

      15. }  

      摘自《單機片C語言編程100個實例》


      1. //實例19:用if語句控制P0口8位LED的流水方向  

      2. #include  //包含單片機寄存器的頭文件   

      3. sbit S1=P1^4;     //將S1位定義為P1.4  

      4. sbit S2=P1^5;     //將S2位定義為P1.5  

      5. /***************************** 

      6. 函數(shù)功能:主函數(shù)  

      7. *****************************/  

      8. void main(void)  

      9. {    

      10. while(1)  

      11. {  

      12. if(S1==0)   //如果按鍵S1按下   

      13. P0=0x0f;  //P0口高四位LED點亮   

      14. if(S2==0)   //如果按鍵S2按下   

      15. P0=0xf0;  //P0口低四位LED點亮   

      16. }        

      17. }  


      上海意泓電子科技有限責(zé)任公司 版權(quán)所有 未經(jīng)授權(quán)禁止復(fù)制或鏡像

      CopyRight 2020-2025 www.hljhgw.com All rights reserved   滬ICP備2021005866號

      国产强伦姧在线观看,…中文天堂在线一区,亚洲欧洲精品污网站在线观看,在线视频综合站
      <tfoot id="ygvxt"><menuitem id="ygvxt"></menuitem></tfoot>
        • <kbd id="ygvxt"></kbd>
          <th id="ygvxt"><progress id="ygvxt"></progress></th>