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