Bibliothek für Ultraschallsensoren SRF10 und SRF08

Gast #2180793
Lesenswert?

Habe eine Bibliothek für die Ultraschallsensoren von Devantech Ltd 
(Robot Electronics) erstellt.

Vielleicht kann es ja jemand brauchen!
Jeder wer will darf den Code natürlich beliebig verändern und 
weiterentwickeln.

Die Abfrage der Sensoren erfolgt synchron, d.h. nach dem Initiieren 
einer Reichweitenmessung wird in der Routine solange gewartet bis das 
Ergebnis verfügbar ist.

Die I2C Kommunikation erfolgt mit der I2C Lib von Peter Fleury.
Ein Dankeschön für die Bereitstellung!!
Die Library kann unter http://www.jump.to/fleury -> Libraries - > I2C 
Master Interface gefunden werden.

Getestet wurde der Code auf einem Atmega128 und 3 Stück SRF10, mit einer 
Quarzfrequ. von 14.7456 MHz.




Verwendung:
1
#define US_addr1  0x32
2

3
us_init();    //Init I2C
4
u8 swrevi;    //Variable für die Software Versionsabfrage
5
u8 ret = get_SWRev(US_addr1, swrevi);  //Liest die SW-Version vom US-Modul
6
if (ret)
7
{
8
  // Modul antwortet nicht
9
}       
10
ret = us_set_gain(US_addr1, 3);    //Verstärkung des Moduls einstellen
11
if (ret)
12
{
13
  // Modul antwortet nicht  
14
}    
15
u16 distance;
16
ret = getDistance(US_addr1, &distance);    //Erfragt die Distanz in cm
17
if (ret)
18
{
19
  // Modul antwortet nicht
20
}
21
// --> An dieser Position is der Rechweitenwert verfügbar (0 bedeutet kein Objekt detektiert, ungleich null der Abstand in cm
Angehängte Dateien:

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren