AVR instrukce

Jiri Beranek berosh@volny.cz
Středa Květen 5 15:55:58 CEST 2004


Komentar dale v textu:

> MP> jake je spravne nastaveni  vsech registru  pro vstup a vystup ? uz
> MP> ponekolikate lustim datasheet a mam v tom nejakej gulas
> MP> DDRx,  PUD, PINx   ?  pull up rezistory jsou zapnuty automaticky  kdyz
> MP> je nezakazu  pomoci PUD?
>
> DDRx nastavis dle toho, ktery piny chces IN a ktery OUT. 0 je IN a 1
> je OUT. Výstup je full TOTEM, takze pozor pokud prechazis od 8051, kde
> byly OC.
>
> Ohledne PullUpu, myslim, ze prave naopak, jsou vypnuty, a musis si je
> zapnout. Ale stejne jsou povoleny pouze pri smeru IN (bitem 0 v DDR)
> jinak nemaji smysl. Pro IIC sbernici napriklad se pouziva zapis ne na
> port PORT ale na port DDR s tim, ze registr PORT je v 0 (spina se OUT
> log.0, a IN s pullupem), tedy vlastne takova emulace OC. Pokud se
> mylim opravte me.
>
> Ohledne bitu, jen maskovanim. Atmely AVR nemaji bitove instrukce v
> tomto smyslu. Tedy

Jenom male doplneni.
Lze vyuzit instrukce SBIC a SBIS - preskoci nasledujici instrukci v
zavislosti na tom,
zda je prislusny bit 0 (SBIC), nebo 1 (SBIS).
Ve vetsine pripadu je to naprosto dostacujici.


SBIC P, b Skip if Bit in I/O Register Cleared if (P(b)=0) PC ? PC + 2 or 3

SBIS P, b Skip if Bit in I/O Register is Set if (P(b)=1) PC ? PC + 2 or 3

S pozdravem Jiri Beranek


>
> if (PORTA & (1 << SCL_PIN)) Do_something();
>
>
> Chtelo by to mozna trosku RTFM, pred dotazem. ;)
>
> -- 
> S pozdravem,
>  František Burian
>  BuFran@seznam.cz
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> HW-list@mailman.nethouse.cz
> http://nethouse.cz/mailman/listinfo/hw-list
>
>




Další informace o konferenci Hw-list