PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : ADC Mega8



Spurius
26.11.2004, 17:33
Hallo,
ich versuche mit Bascom einen Wert von dem A/D-Wandler an Port PC5 zubekommen. Leider bekomme ich nur einen Wert:


$regfile = "m8def.dat"
$crystal = 4000000

Config Lcd = 16 * 2

Config Adc = Single , Prescaler = Auto

Start Adc

Dim Temp As Word , Channel As Byte

Do

Temp = Getadc(channel)
Incr Channel
If Channel > 7 Then Channel = 0
Cls

Locate 1 , 1
Lcd Temp
Waitms 500
Loop

End

Der Wert ist 1023, also eigentlich zu hoch da ADC5 ja nur einen 8-Bit Wandler hat.
Die Spannung die anliegt beträgt so ca. 3.6 V.

Wisst ihr warum ich keine anderen Werte bekomme?

Gruß
Spurius

andysafe
27.11.2004, 07:30
Hallo
wie kommst du darauf das da nur ein 8bit wandler ist?
ich habe mal ins Handbuch zum Mega 8 geschaut und da steht folgendes:

The ATmega8 features a 10-bit successive approximation ADC. The ADC is connected
to an 8-channel Analog Multiplexer which allows eight single-ended voltage inputs constructed
from the pins of Port C. The single-ended voltage inputs refer to 0V (GND).

Mfg Andreas

harryup
27.11.2004, 08:49
hi,
wenn deine referenz in 'config adc' nicht als EXT oder OFF angegeben wird, wird die interne referenz verwendet. die beträgt zwischen 2,4 und 2,8v, insofern stimmen die 1023 schon, wenn am adc 3,6v anliegen.
spannungsteiler 2:1 an die messspannung, dann wird's.
gruss, harry

Spurius
27.11.2004, 11:06
Hallo,
also sowie ich das verstanden habe, sind ADC5 und ADC4 nur 8-Bit Wandler.
Note that ADC channel ADC4 and ADC5 are limited to 8-bit accuracy.
Wie kann ich denn so einen Spannungsteiler am einfachsten realisieren oder wäre es sinnvoller die Referenzspannung auf 5V festzulegen?
Dann müsste ich AVCC auf Masse legen und AREF auf +5V oder?

andysafe
27.11.2004, 14:40
Also so wie ich das kenne müßen an den AVcc auch 5V weil das die Stromversorgung für den ADC ist
Ich habe bei mir AVcc und AVref an 5V angeschlossen und das funktioniert ganz prima.Ich habe mir dazu eine kleine Platine gemacht mit 3 Potis.

MfG Andreas

Spurius
27.11.2004, 16:54
Und sind ADC4 + 5 jetzt 8 oder 10 bit Wandler?
Weil so wie ich das DB verstehe, sind es 8-bit Wandler.

Pascal
27.11.2004, 17:14
ich hab mich letzthin mal wieder mit dem Datenblatt vom ATMEGA8 ein wenig beschäftigt und da stand, dass der ADC mit 10-bit-Genauigkeit läuft, nur zwei Pins davon mit 8(ich glaub, das waren Pin 4 und 5)

27.11.2004, 17:15
Hallo

Der Mega 8 hat nur einen 10 BIT Wandelr.

ADC4 + 5 haben nur 8 Bit "Genauigkeit", da die Pins noch für
SDA + SCL beschaltet werden können und sich dadurch
ihre interne Beschaltung etwas unterscheidet.

MFG
Dieter

27.11.2004, 17:36
FALSCH.

Ein Download des aktuellen Datenblatts sollte helfen:

Aus Datasheet Revision (S.294):

ADC4 and ADC5 support 10-bit accuracy. Document updated to reflect this.
Updated features in “Analog-to-Digital Converter” on page 193.
Updated “ADC Characteristics” on page 245.

Wer lesen kann ist klar im Vorteil :-)

Spurius
27.11.2004, 17:46
Ok, danke, ich hab mir jetzt auch das aktuelle DB runtergeladen.
Aber ich habe noche in Problem und zwar verstehe ich das mit den 8 'Channeln' noch nicht. Was bedeutet das?

x-ryder
27.11.2004, 17:49
das heißt, das du 8 kanäle hast, und das heißt das du 8 ad-wandler hast die du einzeln abfragen kannst.

Martin

Spurius
27.11.2004, 18:05
Ich dachte es sind 6? Zumindest hat der ATMega8 8 Eingänge für A/D Wandlung.
//Edit: Soll heissen 6 Eingänge für A/D Wandlung

27.11.2004, 19:06
Kommt auf das Package an. Beim DIL sind es 6, sonst 8. RTFM :-)

UHU
28.11.2004, 17:21
Hallo zusammen, bin ein UHU und hab mich in meinen Alter noch der UP-
Programmierung zugewendet.
Finde Eure Seite toll und werde sicher Eure Hilfe benötigen.
Starte mit AtMega 8 und hoffe, Euch nicht allzusehr auf den Kecks zu gehen