stack u PIC 18Fxxx

Jan Waclawek wek@evona.sk
Úterý Leden 4 16:44:27 CET 2005


> ale tech dat je docela dost, takze je nemam kam uklidit
> a posilaji se UARTem, coz trva dost dlouho na to, abych celou dobu zustaval
> v preruseni. Bude mi to blokovat prijem a tak. 

Ak mate vela prijatych dat a nemate ich kam dat, tak predsa nevadi, ze 
to blokuje prijem, ved potom nemate kam dat ani prijimane data, ci nemam 
pravdu?

Inak sa este pouziva taka finta, ze sa ukonci prerusenie v zmysle, ze sa 
znovupovolia prerusenia, spracuju sa data a az potom sa vrati do 
hlavneho cyklu, nieco ako:

prerusovacia_rutina:
	prijmi_udaje
	ak neprijate_vsetko skoc_na koniec_prerusenia
	push pokracovacia_adresa
koniec_prerusenia:
	reti
pokracovacia_adresa:
	spracuj_prijate_data
	ret


Dalsia moznost je, ak sa maju prijate data len presypat na vystup, tak 
sa v preruseni prijimaca nakopne vysielanie a ukonci sa prerusenie 
prijimaca; o skutocne vyslanie sa postara prerusenie vysielaca.

> Snad bych mohl v tom preruseni nastavit na 1 pocitadlo te smycky, takze se
> sice neukonci hned, ale dobehne jeden cyklus, to by tak nevadilo. Ona
> nastesti ta smycka neni uplne nekonecna, ale vzdycky probehne konecny pocet
> cyklu, otestuje se nejaky priznak a pak nanovo. Takhle by to snad slo.
> 
To je v konecnom dosledku takmer to iste ako v cykle testovat nejaky 
priznak nastavovany v preruseni; a to ste (neviem preco) hned na 
zaciatku zamietli.

wek



Další informace o konferenci Hw-list