Holla
ich bin neueinsteiger und möchte einen Datenlogger zum Wasserstandsmessen bauen.
Dazu verwende ich folgende Hardware:
Atmega8; mit 3686400hz Crystal (auf My Avrbord)
und das SRF05 (vorerst im Mode mit einem Pinanschluss)
Hardwartechnisch funktioniert die Entfernungsmessung soweit ganz gut,
nur die Genauigkeit lässt stark zu wünschen übrig.
Ich denke es liegt an der Pulsein einstellung im Bascomcode (nicht auf mein Cristal abgestimmt)
Meine Frage: kann mann mit dieser Hardware genauigkeiten im mm schon (+-5mm)
erreichen und wenn ja wie sähe der Bascom Code Aus ?????
mein bisheriger Code:
Code:'Die üblichen Definitionen bei Standardprogrammen auf Miniboard $regfile = "m8def.dat" 'ATmega8 deklaration $crystal = 3686400 'Quarzfrequenz $baud = 9600 $hwstack = 32 $framesize = 32 $swstack = 32 Dim Zeitmessung As Word Dim Entfernung As Word Print "**** SRF05 mit RN-MINICONTROL *****" Print "Entfernung in mm anzeigen" Config Pind.2 = Output Do Portd.2 = 0 'Port Low Pulseout Portd , 2 , 40 'Min. 10uS Impuls senden Pulsein Zeitmessung , Pind , 2 , 1 Zeitmessung = Zeitmessung * 100 'mal 10 da Pulsein in 10uS Einheiten Ergebnis ermittelt Entfernung = Zeitmessung / 29 'Umrechnen in Zentimeter Print "Entfernung: " ; Entfernung ; " mm" Wait 1 Loop End
Danke an alle helfenden
Lesezeichen