PIC a C, otazkay zaciatocnikov

hobby@rq-elektronik.sk hobby@rq-elektronik.sk
Sobota Leden 31 16:53:18 CET 2009


zdravim,

skusam nanecisto (v simulatore) pic16f877a a prekladac od hi-techu v lite
mode

mam z toho ale divne pocity, kod je :

-------------------------
#include <htc.h>

__CONFIG(HS & WDTDIS & PWRTDIS & BORDIS & UNPROTECT);

volatile unsigned char tim128us;
unsigned char tim1ms;

void timer_init(void);

void main(void)
{
	timer_init();
	ei();
	while(1)
	{
//		di();
		if (tim128us >=4 )
		{
			tim1ms++;
			tim128us = 0;
		}
//		ei();

	}
}

void interrupt isr(void)
{
	if (TMR1IE && TMR1IF) 
	{
		TMR1IF=0;
		tim128us++;
	}

}
//timer1
void timer_init(void)
{
TMR1CS = 0;
TMR1ON = 1;
T1OSCEN = 1;

TMR1IE = 1;  //?

PIE1 = 0x1;
}
-------------------


1. nejde to - myslim prerusenie od casovaca, simulator niukdy neskoci do
isr, aj ked counter pretecie

2. zapis TMR1IE = 1; nenastavi bit PIE1 registri ale sposobi 1 v PIR1

Robim nieco principialne zle? 

vdaka za pripadne nakopnutie, p.rosko






Další informace o konferenci Hw-list