Archiv verlassen und diese Seite im Standarddesign anzeigen : Arduino MiniPro -> Bascom, analoge Abfrage
Andree-HB
16.03.2015, 07:36
Hi Kollegen,
ich programmiere derzeit kleinere Arduinos (MiniPro und Nano) mit Bascom (über das Programm XLOADER), was soweit auch klappt...nur kann ich warum auch immer keine Analogwerte einlesen. Es sind jeweils 328P`s drauf, der ADC wird gestartet, per getadc abgefragt....aber ich bekomme als Wert immer 1023 raus, egal was ich einspeise. (Pins digital, I2C, usw. ist Alles kein Problem)
...hat da schon mal Jemand ähnlich Erfahrung gemacht, habe ich vielleicht irgendwo einen Denkfehler gemacht, oder Arduino`s noch eine Eigenart ?
(Bootloader sind jeweils noch drauf)
Gruß
Andree
HeXPloreR
16.03.2015, 09:47
Hallo Andree,
ist ja witzig ich hatte gestern genau das gleiche Problem. Wollte 5V über eine Widerstand (ca 2,5V) einlesen und wunderte mich über die 1023 - ich hatte so 512 erwartet.
Die Lösung war ich hatte keinen Spannungsteiler aufgebaut.
Natürlich muss der ADC auch über Config aktiviert werden.
Viele Grüße
Jörg
Andree-HB
16.03.2015, 10:34
Moin Jörg,
ich hatte ein Poti als Spannungsteiler dran...kann auch am Eingang die regelbare Spannung mit einem Meßgerät messen, aber irgendetwas funktioniert nicht.
Habe die einfach Funktion aus der Hilfe zum getadc genommen, auf `nem "normalen" Mega8 funktioniert auch Alles.
Ich vermute irgendetwas wegen Fuses oder Bootloader...hmm...
Gruß
Andree
HeXPloreR
16.03.2015, 12:59
Das Programm wäre hilfreich?!
Welchen Pin benutzt du? Es gehen ja standartmässig nur PORTC.0-.3 (.4-.5 nicht wenn man I²C mitbenutzt). Andere weiß ich jetzt nicht sicher.
Andree-HB
16.03.2015, 16:36
$regfile = "m328pdef.dat"
$crystal = 16000000
$baud = 9600 'RS232 Baudrate definieren
$hwstack = 250
$swstack = 250
$framesize = 450
config PORTb.5 = output '(die kleine onboard-LED/D12)
portb.5=0
Config Adc = Single , Prescaler = Auto
Start Adc
Dim W As Word
Do
W = Getadc(0)
print w
toggle portb.5
wait 1
Loop
End
- - - Aktualisiert - - -
klassischer Anfängerfehler von mir - ich habe vergessen anzugeben, welche Referenz er für den ADC nehmen soll,
die Erweiterung auf REFERENCE = AVCC brachte den gewünschten Erfolg. :-)
HeXPloreR
16.03.2015, 18:33
Sehr gut. Habe grade in ein Programm geschaut - wäre nun auch mein Tipp gewesen die Reference anzugeben, denn sonst sieht der Code richtig aus ;)
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.