Sida 1 av 1

SRF04 avståndsmätare, BS2

Postat: 11 april 2005, 10:28:03
av hak0n
Hej!

Jag håller på att tragla med en SRF04 till BS2. Detta kodexmpel fick man med från tillverkaren.

Kod: Markera allt


Trigger PIN 0
Echo     PIN 1

PULSOUT Trigger, 5
RCTIME Echo, 1 pWidth

Nu har jag skalat av koden till det som är problemet. Med den metoden så får jag en massa 1: or och ibland ett bra värde. Jag kollade då upp kommandot RCTIME, och där stod det ifall Echo är på när den börjar mäta, så skickar det bara värdet 1 till pWidth, variablen. rätta mig om jag har fel.

Men då tänkte jag att det är väll bara och lägga in en if sats för att få bort problemet.

Kod: Markera allt


Trigger  PIN 0
Echo      PIN 1

igen:
PULSOUT Trigger, 5
RCTIME Echo, 1 pWidth
IF pWidth = 1 THEN igen



Detta fungerade bra när jag bara använde avståndsmätaren på boebotten. Men när jag också ville att roboten skulle köra blev det helt konstig, den börja hacka sig fram i servona.

Så vet någon ett bätte kodexempel för BS2? eller hur ska jag lösa detta.

Förmodligen..

Postat: 11 april 2005, 13:53:23
av bengt-re
Tar rutinen för lång tid därför sevona hackar. i PBasic har jag löst det enligt nedan kodexempel för srf04 och det funkar bra.

pulsout c6,20
pulsin c7,1,range
range=range/60 ;Ger avståndet i cm

Men kan inte redigt skilnaden mellan basic stamp och pBasic dock.