色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > PIC12F508單片機用按鍵控制LED燈C語言程序

          PIC12F508單片機用按鍵控制LED燈C語言程序

          作者: 時間:2016-11-29 來源:網絡 收藏
          #include
          #include "main.h"
          __CONFIG(MCLRDIS&WDTDIS&UNPROTECT&INTRC); //設置配置位(MCLR腳復位禁止,看門狗關,無代碼保護,內部RC振蕩)
          uint count=0;
          uchar Key_Flag=0;
          void Delay_US(uchar delay)
          {
          while(delay--);
          }
          void Delay_Ms(uchar delay)
          {
          uchar i;
          while(delay--)
          {
          for(i=0;i<165;i++);
          }
          }
          void Delay_Sec(uchar delay)
          {
          uchar i;
          for(i=0;i
          {
          Delay_Ms(251);
          Delay_Ms(251);
          Delay_Ms(251);
          Delay_Ms(252);
          }
          }
          void GPIO_Port_Init(void) /*********繼電器/傳感器端口初始化函數**********/
          {
          TRIS = 0x1c; //繼電器和LED_RED設為輸出 壓力流量設為輸入
          OPTION = 0x00; //OPTION復位值為:0xFF
          }
          void Key_Scan(void) /*********按鍵掃描函數**********/
          {
          Key_Flag=0; //掃描鍵盤之前先將按鍵標志清零
          if(Key==0)
          {
          Delay_Ms(10); //延時去抖
          if(Key==0)
          {
          while(!Key); //等待K1鍵釋放
          Key_Flag=1;
          }
          }
          }
          void main()
          {
          Delay_Ms(200);
          GPIO_Port_Init();
          Delay_Sec(2);
          Relay_Out=1;
          while(1)
          {
          Key_Scan();
          Red_Led=1;
          if(Key_Flag==1)
          {
          while(1)
          {
          Red_Led=0;
          Delay_Ms(200);
          Red_Led=1;
          Delay_Ms(200);
          }
          }
          }
          }
          #ifndef __MAIN_H__
          #define __MAIN_H__
          #define uchar unsigned char
          #define uint unsigned int
          #define Relay_Out GP0
          #define Red_Led GP1
          #define Fluid_In GP2
          #define Press_In GP3
          #define Key GP4
          void Delay_US(uchar delay);
          void Delay_Ms(uchar delay);
          void Delay_Sec(uint delay);
          void GPIO_Port_Init(void);
          void Key_Scan(void);
          #endif


          評論


          技術專區(qū)

          關閉