1. 程式人生 > >51微控制器:每次按S1鍵,流水燈移位演示

51微控制器:每次按S1鍵,流水燈移位演示

原理圖

這裡寫圖片描述

這裡寫圖片描述

//原始碼

#include <reg52.h>
#include <intrins.h>    //包含移位函式
#define uint unsigned int   //巨集定義
#define uchar unsigned char
sbit S1=P3^7;       //定義S1變數
void delay(uint);
uchar temp;

  void main()
  {     
        temp=0xfe;      //初始化
        P2=temp;

      while(1)
      { 
        if(S1==0
) //判斷是否按下 { delay(10); if(S1==0) //再次判斷是否按下 { temp=_crol_(temp,1);//右移 delay(100); //延時 P2=temp; //重新賦值 while(!S1); //消抖 delay(5); while(!S1); } } } } void
delay(uint z) //延時程式 { uint x,y; for(x=200;x>0;x--) { for(y=z;y>0;y--); } }