这是我的一个
仿真图,下面是程序,图中的BEEP和FIRE现在是低电平输出,驱动后面的模块开始工作,我要把它改成高电平驱动后面的模块,就是输出高电平开始工作,请问要怎么改。
#include
#define u8 unsigned char
#define u16 unsigned int
#define BEEP_ON (PORTC &= ~(1<
#define BEEP_OFF (PORTC |= (1<
#define FIRE_ON (PORTC &= ~(1<
#define FIRE_OFF (PORTC |= (1<
void Delay(u16 t) //不准确延时
{
u16 x,y;
for(x=t; x>0; x--)
for(y=100; y>0; y--);
}
void GPIO_Init(void)//IO口初始化
{
DDRC = (1<
PORTC = 0XFF;
DDRD &= (1<
PORTD != (1<
}
int main(void)
{
GPIO_Init();
while(1)
{
if((PIND&(1<
{
Delay(100); //软件消抖
if((PIND&(1<
{
FIRE_OFF; //没有火焰 关掉报警、破窗装置
BEEP_OFF;
}
}
else //检测有火焰 打开报警、破窗装置
{
FIRE_ON;
BEEP_ON;
}
}
return 0;
}