"NEED INPUT"
Eindelijk wat vorderingen w.b. picbasic!
Een lcd aansturen met een 16f628 ging probleemloos, maar op een 16F877 liep ik al meteen tegen een veelvoorkomend probleem op, n.l. de eerste rij met allemaal zwarte blokjes.
Dat ik niet de enige was bleek wel uit de vele hits op de zoekmachine naar dit probleem
Het was een probleem in de config regel.
Nu dit werkte heb ik mijn SRF05 aangesloten, en met veel experimenteren en na +/- 200 ERRORS in proton heb ik het nu voor elkaar.
Hij meet mooi de afstand, en zet dit op mijn LCD.
nu komt de volgende vraag, waar ikzelf zo niet uit kom:
Ik wil een poort hoog maken als als de gemeten waarde binnen bv. 50cm komt.
Picbasic.nl werkt alleen maar met het commando POT
En iets anders kon ik met Google niet vinden
moet ik hiervoor ADIN of RCIN voor gebruiken? en hoe?
DE code zover ik nu ben:
pic basic code:
Device 16F877
Config hs_osc,wdt_off,pwrte_on,BODEN_On,LVP_OFF
XTAL 4
Dim afstand As Word
Dim zendpuls As Word
Dim echo As Word
Symbol pulsuit = PORTD.2
Symbol ontvang = PORTD.3
DelayMS 500
Cls
While 1 = 1
PulsOut pulsuit, 1 ; zend puls
DelayUS 40 ; wacht op echo
afstand = PulsIn ontvang,1
DelayUS 40 ; ontvant de echo
Print At 1, 1, Dec afstand /58 ; zet waarde op lcd
Wend
End
Lucky Luke schreef: Als je de sensor met een servo kunt laten ronddraaien kun je kijken bij welke servopositie de sensor de grootste afstand meet. Daar zit dan de vrije doorgang. Vervolgens stuur je je robot die richting op (eerst bijdraaien tot je bij rechtdoor kijkende sensor die grote afstand hebt, vervolgens rechtdoor).
Dit is precies waar ik uiteindelijk naar toe wil.
Mijn robot krijgt straks een draaibaar hoofd op een servo.
Dat stukje code van Lucky Luke is voor mij nog wartaal, maar het pricipe kan ik er toch wel een beetje van begrijpen
Let wel! Dit wordt mijn eerste zelfgeschreven programma (ledje aan/ledje uit buiten beschouwing gelaten)
verder ben ik nog een volslagen leek, en alle hulp is dan ook van harte welkom.
Karel