Archiv verlassen und diese Seite im Standarddesign anzeigen : srf04 modul
pebisoft
26.11.2004, 08:25
hallo, ich möchte das modul srf04 programmieren in bascom. wer kann hier weiterhelfen. ich bekomme das mit der zeitmessung am avr16 nicht hin.
ps: das modul srf08 läuft schon auf meinem küchenbrettroboter mit einem servo um sich ein bisschen zu drehen.
mfg pebisoft
Hi pebisoft,
hast du die schonmal probiert (auch von Gerrys Seite):
' ulrasonic functions SRF04
' adapted from Koen Van den Heuvel, http://users.pandora.be/vandenheuvel/robot.html
' Declare Sub Initialize_ultrasonic()
' Declare Function Ultrasonic() As Integer
Function Ultrasonic() As Integer
Portc.6 = 0 ' Set initial state of trigger pin
Pulseout Portc , 6 , 10 ' generate a 5us pulse @ 8 mhz
Pulsein Ultrasonic , Pinc , 7 , 1 ' measure the return pulse
End Function
Sub Initialize_ultrasonic
Config Pinc.6 = Output
Config Pinc.7 = Input
End Sub
HTH und Viele Grüße
Jörg
pebisoft
30.11.2004, 18:00
ganz habe ich das programm für den srf04 nicht geschnallt mit dem bascom. kann einer bitte mal die sache für dieses modul näher erklären. ich habe gelesen mit puls und trigger usw. wie verwirkliche ich das mit einem avr in bascom mit der umrechnung in cm z.b.
mfg pebisoft
Hi pebisoft,
ich habe mir gerade mal die Hilfe von Bascom angesehen, pulsin liefert das Ergebnis in 10us Schritten. Das heißt, das Ergebnis der Funktion Ultrasonic() muss noch durch 6,2 geteilt werden, um die Entfernung in cm rauszukriegen. Dazu am besten mit 10 multiplizieren und durch 62 teilen (Vermeidung von Floating-Point Geschichten).
BTW, im obigen Code ist noch ein Fehler dringewesen, Ultrasonic_left muss natürlich Ultrasonic heißen. Ich ändere das nochmal schnell.
HTH und Viele Grüße
Jörg
pebisoft
02.12.2004, 13:41
vielen dank. das srf04-modul läuft dank deiner hilfe hervorragend.
mfg pebisoft
Freut mich, dass es funktioniert.
Viele Grüße
Jörg
Powered by vBulletin® Version 4.2.5 Copyright ©2024 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.