I2C na 16F87x
Lukáš K.
lukas-k
Středa Březen 17 12:01:21 CET 2004
Dobry den,
snazim se komunikovat pomoci I2C mezi 16F874 a pameti 24LC02 a PCF8583
(hodiny + kalendar), ale nejak to nejde a ja z toho zacinam silet. Vyuzivam
(tedy, chtel bych) hardwarove I2C.
Nejdriv jsem zkusil napsat vlastni rutinu, to ale neslo, tak jsem si rekl,
ze nebudu vymyslet neco, co uz existuje a proto se pokousim zprovoznit
komunikaci tak jak je popsana v prikladu (AN735) z www.microchip.com. Vzdy
jsem si vystacil s jednim souborem asm a inc, ale ten priklad popsany v AN
obsahuje 8 souboru (*.asm, *.inc, *.lkr). Ty se mi nedari zapracovat do toho
meho puvodniho asm. Par erroru, jsem odstarnil ale ted mi to hlasi u radku
zacinajicich GLOBAL nebo EXTERN v souboru i2ccomm1.inc error 149 (Directive
only allowed when generating an object file). Jak se tehle hlasky zbavim, to
opravdu nevim.
1) Mohl byste mi nekdo poradit, jak odstranit tenhle problem a nebo
nasmerovat na nejaky jiny priklad vyuziti hw I2C v PIC16F87x, ktery by byl
napsan v jedinem souboru *.asm ?
2) Jak mohu volat z jednoho *.asm podprogram v jinem *.asm ? (I kdyz to
toho prvniho (1.asm) napisu #include 2.asm, tak to nejde.)
Vim, ze tohle tema tady uz parkrat bylo, ale v archivu konference od
zacatku tohoto roku jsem nenasel uspokojivou odpoved.
Dekuji,
Lukas
PS: Katalogove listy od vseho mam, pull-up na SDA i SCL taky. Bity
SSPM3:SSPM0 v SSPCON -> 1000 (I2C master mode). Pouzivam MPLAB (neexistuje
nahodou neco lepsiho o cem nevim?).
Další informace o konferenci Hw-list