Hi, also zum Lesen mußt du schon wirklich &HE1 als adresse schicken.
irgendwie ist das da untergegangen.
Hallo,
ich habe folgendes Programm um den SRF10 zu testen zusammengebastelt.
Leider gibt mir der Sensor immer nur für beide Werte 255 aus. angechlossen ist es am rn-control. (die led blinkt brav)Code:$regfile = "m16def.dat" 'Mega16 Defdatei $crystal = 16000000 'Quarzfrequenz $baud = 9600 'Übertragungsgeschwindigkeit 'für serielle Schnittstelle '############################################################### 'Initialisierung der Ports '############################################################### Config Sda = Portc.1 Config Scl = Portc.0 I2cinit Dim Us_data_h As Byte , Slave As Byte Dim Us_data_l As Byte Slave = &HE0 'slave address of srf10 Us_data_l = 0 'reset variable Us_data_h = 0 'reset variable Cls Lcd "Test" Wait 1 Do Cls I2cstart 'Messung auslösen I2cwbyte Slave I2cwbyte 0 'Register 0 - Befehlsregister I2cwbyte 81 'Befehl 81 - Messung in cm I2cstop Waitms 85 'delay 85mS auf Ergebnis warten I2cstart I2cwbyte Slave 'Lesen beginnen E0 I2cwbyte 2 'Reg 2 => Entfernung I2cstop I2cstart 'I2cwbyte 22 'Leseadresse (E1) I2cwbyte Slave 'Addresse vom srf 10 I2crbyte Us_data_h , Ack I2crbyte Us_data_l , Nack I2cstop Lcd Us_data_h Lcd Us_data_l Waitms 500 Loop End 'end program
hat jemand eine idee wo der Fehler ist?
Hi, also zum Lesen mußt du schon wirklich &HE1 als adresse schicken.
irgendwie ist das da untergegangen.
mfg robert
Wer glaubt zu wissen, muß wissen, er glaubt.
wie dumm jetzt tut er es
danke
gruß stefan
Hi,
kann ich dein fertiges Programm haben? Ich habe auch nen SRF10. Meine I2C Kenntnisse sind nicht ganz so gut. Wie hast du dem SRF10 die Adresse jetzt zugewiesen?
Danke im Vorraus
Majus
Lesezeichen