Ebben az esetben is logikusabb és jobban áttekinthető a C (szerintem). Akik más nyelv mellett tették le voksukat, azoknak is talán többet mond, mivel látszik a struktúra.
#include <16F877.h>
#FUSES NOWDT, XT, NOPUT, NOPROTECT, BROWNOUT, NOLVP, NOCPD
#use delay(clock=4000000)
#byte PORTD = 0x08 //PORTD regiszterre mutató pointer
//================================================================
#int_TIMER0
void TIMER0_isr() {
//================================================================
PORTD ^= 0xFF;
}
//================================================================
void main(){
//================================================================
set_tris_a(0b00011111); //PORTA bemenet nem használjuk, de a gomb ott van
set_tris_d(0b00000000); //PORTD kimenet
output_d(0b01010101); //LED bekapcs
setup_timer_0(RTCC_INTERNAL|RTCC_DIV_256);
enable_interrupts(INT_TIMER0); //TMR0 megszakítás be
enable_interrupts(GLOBAL); //GIE bekapcsol
for(;;) {
//Semmit nem csinálunk
}//for
}//main
Az egész program forráskód és lefordított hex: tmr0_ccs.zip
Most nézzük a WDT-t!
A cikk még nem ért véget, lapozz!
Értékeléshez bejelentkezés szükséges!