Mikro-Forth und HC-SR04

MikroForth für Attiny- und Atmega-Mikrocontroller
Antworten
Didi
Beiträge: 9
Registriert: Mi 28. Nov 2012, 16:08

Mikro-Forth und HC-SR04

Beitrag von Didi » Sa 29. Jun 2013, 08:55

Hier ist eine Möglichkeit, mit Hilfe von Mikro-Forth und dem HC-SR04, Entfernungen zu messen.
Das Prinzip ist ähnlich, dem weiter unten mit Basic beschriebenen Beitrag.
Der Trigger wird am PinD6 angeschlossen. Das Echo verbindet man mit PinB7.
Das Programm funktioniert folgendermassen:
Timer0 läuft im Overflowmodus und löst ca. alle 65ms einen Interrupt aus.
In der Timer0-Interruptroutine wird am Pind6 ein ca 10us Impuls (Zeit relativ unkritisch) ausgegeben.
Port BinB7 wird als Pinchangeinterrupt programmiert. In der PchInterruptroutine wir entschieden, ob eine
steigende Flanke vorhanden ist. Wenn ja, wird der Timer1 gestartet, wenn eine fallende Flanke vorhanden
ist, wird der Timer1 gestoppt.
Die gezählten Timer1-Impulse ist ein Maß für die Entfernung.
Der Rest ist nur eine Umrechnung in Zentimeter und wird zur Anzeige gebracht.
Viel Spass beim experimentieren.

Didi
Dateianhänge
Entfernungsmessung.zip
(18.08 KiB) 3071-mal heruntergeladen

Antworten