#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
声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/bandaoti/255601.html