Имеется мини отладочная плата и PIC12F508
Пробую простейшие программы со светодиодами
Не могу разобраться, почему уровни 0=включено, 1= выключено.
К примеру GPIO = 0b00000011; выключает два светодиода на ногах GP0 и GP1
Кнопки тоже работают наоборот, в чем может быть проблема?
Код: Выделить всё
#include <xc.h>
// chip=PIC12F508
// CONFIG
#pragma config CP = OFF // Code protection off
#pragma config OSC = IntRC // internal RC oscillator
#pragma config MCLRE = ON // GP3/MCLR pin function is MCLR
#pragma config WDT = OFF // WDT disabled
#define _XTAL_FREQ 4000000L
//#define BUTTON GPIO0
#define LED1 GP0
#define LED2 GP1
#define KEY1 GP2
#define KEY2 GP5
void main(void)
{
GPIO = 0x00; //
OPTION = 0b11000000; // Подтяжка и пробуждение по входам отключены
TRIS = 0b11111100; // GP1,GP2 = output
GPIO = 0x00;
int flag=0;
while (1)
{
LED1=1;
LED2=0;
}
}