Gast
#91379
Hallo, versuche mir momentan Routinen für den I2C - Bus selber zu schreiben. Zum ausprobieren habe ich 2 PCF8574 angeschlossen. An einem sind 8 Led's und am anderen 8 Taster. Das Arbeiten mit Ausgängen, also den LED's, funktioniert schon wurderbar. Nur bei dem Einlesen der Eingänge komme ich nicht weiter. Zum Test sollen halt je nach dem welcher Taster gedrückt wurde die entsprechende LED leuchten. Habe mir schon Routinen von anderen angeschaut und gegoogelt, aber ich finde den Fehler einfach nicht. Ich denke der Fehler liegt in dieser Routine (der gesamte Quellcode ist im Anhang): bytein: clr byte cbi i2cport,SDA cbi I2CDDR, SDA ldi temp,8 bytein0: rcall pause sbi i2cport, SCL rcall pause cbi i2cport, SCL rcall pause sbic I2CPIN,SDA sbr byte, 1 rcall pause lsl byte dec temp brne bytein0 cbi i2cport,SCL sbi I2CDDR,SDA mov i2cdata,byte ret Kann mir da vielleicht jemand nen Tip geben?