hallo.. habe folgendes problem: wenn der srf02 außer reichweite misst, dann kommt er nicht weiter char i2c_read(char address, char reg) { char read_data = 0; TWCR = 0xA4; while(!(TWCR & 0x80)); TWDR = address; TWCR = 0x84; while(!(TWCR & 0x80)); TWDR = reg; TWCR = 0x84; while(!(TWCR & 0x80)); TWCR = 0xA4; while(!(TWCR & 0x80)); TWDR = address+1; TWCR = 0xC4; while(!(TWCR & 0x80)); TWCR = 0x84; while(!(TWCR & 0x80)); //--> kommt nicht weiter read_data = TWDR; TWCR = 0x94; return read_data; } was könnte ich machen, damit er diesen schritt überspringt ? oder soll ich nach einer gewissen zeit abbrechen ? mfg
ich habe auch an der besagten stelle ein problem. bei mir bleibt er auch an dieser position hängen, jedoch macht es keinen unterschied ob der senor frei misst oder ich die hand davor halte. ist eine lösung für dieses PROBLEM bekannt???
wenn ich bei mir die besagte while-Schleife ausklammere und die abfrage starte wird als ergebniss immer 225 geliefert. egal ob high- bzw. low-register oder fireware version.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.