#include "stm8s.h"
#define ulong unsigned long
void delay(ulong i)
{
while(i--);
}//延时函数
void main(void)////////////主函数
{
unsigned char flag=0;
GPIO_DeInit(GPIOD);
GPIO_Init(GPIOD, GPIO_PIN_0, GPIO_MODE_OUT_PP_LOW_FAST);
GPIO_DeInit(GPIOB);
GPIO_Init(GPIOB, GPIO_PIN_0, GPIO_MODE_IN_FL_IT);
while(1)
{
if(!GPIO_ReadInputPin(GPIOB, GPIO_PIN_0))
{
delay(250);//去抖动
if(!GPIO_ReadInputPin(GPIOB, GPIO_PIN_0))
{
flag++;
if(flag==2)
flag=0;
}
}
while(!GPIO_ReadInputPin(GPIOB, GPIO_PIN_0));//是否释放
if(flag==0)
GPIO_WriteLow(GPIOD, GPIO_PIN_0);//亮
else
GPIO_WriteHigh(GPIOD, GPIO_PIN_0);//灭
}
}