PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : SRF10 Problem



bergowitch
11.02.2005, 17:08
Hallo,
ich habe folgendes Programm um den SRF10 zu testen zusammengebastelt.

$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


Leider gibt mir der Sensor immer nur für beide Werte 255 aus. angechlossen ist es am rn-control. (die led blinkt brav)
hat jemand eine idee wo der Fehler ist?

PicNick
11.02.2005, 18:01
Hi, also zum Lesen mußt du schon wirklich &HE1 als adresse schicken.
irgendwie ist das da untergegangen.

bergowitch
11.02.2005, 18:11
wie dumm jetzt tut er es
danke
gruß stefan

Majus
16.01.2006, 11:30
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