В мейне пишу
TRISB = 0; //Выходы
T0IE = 1;
GIE = 1;
Перед мейном функцию
void interrupt I(void)
{
RB7 = 1;
T0IF = 0;
}
Но на выходе порта нету напряжения.
Подскажите пожалуйста как правильно нужно делать?
Я новичёк, Не подскажите как это сделать? =) Простого мануала по этой теме на С не нашёл =(Аlex писал(а):Его(таймер) нужно сначала настроить.
Ничего незная, там не ответы а чёрный лес. По примерам легче ориентироватся когда ничего не знаешь. А не лезть в эти дебри.Аlex писал(а):А причём тут Си ? Все ответы есть в даташите на Ваш МК.
Код: Выделить всё
unsigned cnt;
void interrupt() {
cnt++; // Increment value of cnt on every interrupt
TMR0L = 96;
INTCON = 0x20; // Set T0IE, clear T0IF
}
void main() {
ADCON1 = 0x0F; // Set AN pins to Digital I/O
T0CON = 0xC4; // Set TMR0 in 8bit mode, assign prescaler to TMR0
TRISB = 0; // PORTB is output
PORTB = 0xFF; // Initialize PORTB
TMR0L = 96; // Timer0 initial value
INTCON = 0xA0; // Enable TMRO interrupt
cnt = 0; // Initialize cnt
do {
if (cnt == 400) {
PORTB = ~PORTB; // Toggle PORTB LEDs
cnt = 0; // Reset cnt
}
} while(1);
}