AW: Fw: Dotaz - SP u 89c52 a SW reset

Kaliciak, Richard Richard.Kaliciak@ibykus.de
Úterý Duben 5 14:58:40 CEST 2005


> Pokud nemam WD a musim chci nasimulovat reset,
> tak pouzivam nasledujici sekvenci (uz asi tak 20 let :-))) )
> 
>    di
>    push 0
>    push 0
>    call x
> x: reti
> 
> 
> Držím tu v ruce knížku Petra Skalického MC řady 8051 a nějak 
> se mě nedaří nalést instrukci DI 
> co to prosím koná ?
> 
> Ps je nějaký rozdíl mezi doporučeným kodem a JUMP 0 ?
> 

To je ako ked v C napises i++ namiesto i=i+1

DI znamena DISABLE INTERRUPT, nahrad ho CLR EA
dvakrat PUSH 0 vlozi do zasobniku navratovu adresu 0x0000, na ktoru sa pomocou RET skoci. A aby sa vynuloval priznak prerusenia, tak sa namiesto RET pouzije RETI. A kedze 8051 ma dve urovne prerusenia, tak navrat z urovne 1 nasimulujeme comocou CALL x na RETI a navrat z urovne 0 tou istou instrukciou RETI.



Další informace o konferenci Hw-list