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?
Lesezeichen