zdravím prosím mohl by mi někdo pomoct s nastavením přerušení nebo vysvětlil jak se přerušení píše v jazyce C děkuji za odpovedí
administrator: přejmenováno z "pic16f627A"
zdravím prosím mohl by mi někdo pomoct s nastavením přerušení nebo vysvětlil jak se přerušení píše v jazyce C děkuji za odpovedí
administrator: přejmenováno z "pic16f627A"
ked prezradis v com pises tak skor dostanes odpoved…
NApriklad takto:
void interrupt isr (void) // Here be interrupt function - the name is unimportant.
{
if(T0IF) // Was this a timer overflow?
{
TMR0 = 100;
t++;
cas++;
if (cas>200) cas=0;
}
T0IF = 0; // Clear interrupt flag, ready for next
}
Někde jsem četl, že PIC řady 16F nejsou vhodné pro psaní v C, ale každé IDE má svoje příklady - examples pro základní věci - určitě i pro přerušení - stačí hledat .
píšu v C a v mplabu ,a to je celá ta funkce tam mi to vzdy odskoci kdyz nastavim priznak do 1 ?
tento kod mam i jako vzorovy ale neustale mi vyhazuje chybu v podobe
void interrupt isr (void){
^------
Error[1] C:\Users..\main.c 11 : Too many types or double declaration
void interrupt isr (void){
^------
Error[2] C:\Users..\main.c 11 : Syntax error
(The expression must be corrected. The marker ^------ shows
the approximate position where CC5X gives up. The documentation
should be checked if the cause is not obvious)
tak IDE už bychom věděli, teď ještě jaký máš C compiller - MPlab jich podporuje víc.
Ten atlanův příklad je asi z jiného než máš ty a proto mu ten tvůj nerozumí
Zkus to bez toho isr, jen…
void interrupt (void)
{
}