Re: Suche Hilfe zum I2C gg. kleine Bezahlung Kategorie: Programmierung Basic (von UlliS - 1.09.2008 17:22) | ||
Als Antwort auf Re: Suche Hilfe zum I2C gg. kleine Bezahlung von Sebastian - 29.08.2008 11:57 | ||
| ||
> Hi Ulli, > > sind die Pullup-Widerstände unbedingt notwendig? Ich habe schon öfter hier im Forum gelesen, dass > man noch zusätzliche Pullup-Widerstäde einbauen muss, wenn man die I2C-Schnittstelle nutzt. > Warum eigentlich? > > Hättest du Lust, mir deinen Quellcode mal zu schicken? > > Gru� > Sebastian > > > > > Hi, > > > > > > hat jemand schon mal die I2C-Schnittstelle des Boards verwendet und wäre bereit, mir > > > (gegen Bezahlung) ein paar Tipps zu geben, wie man so etwas genau macht. Irgendwie stehe ich bei > > > diesem Thema noch wie der Ochse vorm Berg, obwohl ich schon seit über zwei Wochen daran sitze. > > > > > > Ich möchte gerne mehrere Ultraschallsensoren zum Laufen bringen, die über eine I2C-Schnittstelle > > > verfügen. > > > > > > hier mal das Datenblatt der Sensoren: > > > > > > http://www.robotikhardware.de/download/srf10doku.pdf > > > > > > Das Demoprogramm, das hier beiliegt, habe ich schon so weit übertragen. Aber im Moment klappt > > > es noch nicht. Ich bin mir auch nicht sicher, ob ich den Sensor überhaupt richtig am Board > > > angeschlossen habe. > > > > > > Da bräuchte ich schon mal den ersten Tipp. > > > > > > Wenn sich jemand bereit findet - Meine E-mailadresse habe ich oben angegeben. > > > > > > Sebastian > > > > > > > > > > > > > > > > Hallo Sebastian, > > > > wo genau hängt es den? > > Ich hatte mal Probleme mit den Firmware Abfrage bei Sensor bereit für Messung. > > Setz dafür mal ein AbsDelay(60) ein. > > > > Prüfe auch mal di e Pullup Widerstände nach. > > > > Ansonst müsste das ganze funktionieren, ich selber benutze meist die SRF02 Sensoren. > > > > Grü�e Ulli > > Hallo Sebastian, hier der Code zum SRF02 '---------------------------------------------------------------------------------- '----- DEMO ----- DEMO ----- DEMO ----- DEMO ----- DEMO ----- DEMO ----- DEMO ----- '---------------------------------------------------------------------------------- 'Projektname: SRF02.cprj 'Benötigte Libs´s: IntFunc_lib.cc 'Routinen: SRF02.cbas 'Autor: Ulli Sommer 'Datum: 04.04.2008 'Funktion: SRF02 der Fa. Devantech auslesen (Ultraschall Sensor) ' ' '---------------------------------------------------------------------------------- Dim SRF02_Slaveid As Byte Dim LSB As Byte Dim MSB As Byte Dim Entfernung As Word Dim Ausgabe As Word Dim Bezeichner(10) As Char Sub main() I2C_Init(I2C_100kHz) SRF02_Slaveid = &HE0 Bezeichner = " cm" Do While True Ausgabe = SRF02_Entfernung(SRF02_Slaveid) Msg_WriteWord(Ausgabe) Msg_WriteText(Bezeichner) Msg_WriteChar(13) 'AbsDelay(100) End While End Sub Sub SRF02_Entfernung(Slaveid As Byte) As Integer Dim Lob As Byte Dim Hib As Byte Dim Firmware As Byte Dim Temp As Byte Dim Slaveid_read As Byte Slaveid_read = Slaveid + 1 'Messvorgang in starten I2C_Start() I2C_Write(Slaveid) I2C_Write(0) I2C_Write(81) I2C_Stop() AbsDelay(250) 'Warte auf Messung I2C_Start() I2C_Write(Slaveid) I2C_Write(2) I2C_Stop() I2C_Start() I2C_Write(Slaveid_read) MSB = I2C_Read_ACK() LSB = I2C_Read_NACK() I2C_Stop() Entfernung = Makeint(LSB , MSB) 'Bytes zusammenfassen Return Entfernung End Sub 'Sub-Routine um High-Byte und Low-Byte zusammenzufügen Sub Makeint(A As Byte , B As Byte) As Word Dim tmp As Word tmp = A 'High-Byte übernehmen tmp << 7 'um 7 Bit nach links schieben tmp = tmp + B 'Low-Byte hinzufügen Return tmp End Sub Grü�e Ulli | ||
Antwort schreiben Antworten: Re: Suche Hilfe zum I2C gg. kleine Bezahlung (von Sebastian - 2.09.2008 20:55) Re: Suche Hilfe zum I2C gg. kleine Bezahlung (von UlliS - 2.09.2008 21:59) Re: Suche Hilfe zum I2C gg. kleine Bezahlung (von Sebastian - 8.09.2008 21:40) |
Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum