mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik externer ADc an Mega8


Autor: Robert Breicher (Firma: Privat) (eshidata)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
bin neu dabei und fange gerade mit diesem Thema an, microControler, 
Assembler....
Meine Frage:
Ich möchte/muss an einem mega8(16,32) an 8 Eingänge jeweils 8 analoge 
Werte einlesen, also 64 analoge Werte!.
Es sollen alle (64) Thermofühler (PT1000) hintereinander abgelesen und 
per ser. Schnittstelle ausgegeben werden.
Also mega8-Eingang 1, dort sollen alle MUX-Kanäle geschaltet und 
ausgegeben werden werden, dann der nächste mega8-Kanal geschaltet und 
dort den jeweiligen MUX auslesen..usw. und alles so lange bis gestoppt 
wird.
Meine Schaltung: 8x(8x ADC(TLC549)-> 1x MUX(74LS251))->mega8 ->MAX232 
->SubD9
Meine Frage/n:
1. Hat jemand schon sowas gemacht und kann mir da hilfreiche Hinweise 
geben ?
2. Habe den assembler-Code (AVR-Tutorial)aus dem Forum getestet (für 
interne ADCs), wie aber muss der Code umgestrickt werden um externe ADCs 
zu verwenden?
Vielen Dank.

PS:
Also nach meinem Verständniss müsste der mega8 an 3 Aussgänge die 3bit 
für die Umschaltung des MUX ausgeben, dann werden alle 8 Eingänge des 
MUX eingeschaltet und die Werte der jeweiligen ADCs eingelesen. Wenn 
alle 8 Eingänge des MUX geschaltet worden sind springt der mega8 und der 
nächste Eingang wird verarbeitet....
Ich benutze das Board von Pollin mit mega8 (Atmel Evaluationboard Ver. 
2.0) und habe daran eine Europlatine mit den 8xADCs,1xMUX per 
Flachbandkabel angeschlossen. Diese Extraplatine wird 8x gebaut, also 
jeweils 8 Eingänge auf einer Platine die jeweils an einem mega8-Eingang 
angeschlossen wird.
Als Software benutze ich das Atmel AVR-Studio in Simulationsmodus, für 
die Übertragung auf den mega8 verwende ich PonyProg2000.

Autor: jack (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Meine Schaltung: 8x(8x ADC(TLC549)-> 1x MUX(74LS251))->mega8

Versteh ich nicht. Wieso nimmst Du nicht den internen AD-Wandler plus
8 mal 8 in 1 Multiplexer? Wieso 64 TLC549??

Autor: Robert Breicher (Firma: Privat) (eshidata)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die schnelle Antwort.
Es war mir nicht klar dass ich die ADCs nach einem MUX schalten kann.
So wird auch der Aufwand geringer!
Hast Du auch zu meinem Hauptproblem eine Idee?
Vielen Dank

PS:
Wenn dass so geht dann kann ich den Code aus dem AVR-Tutorial nehmen und 
nur zusätzlich den 3bit-Umschakter für die MUX "anbauen"...

Autor: Dirk S. (fusebit)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
PT1000 mit 8bit AD-Wandlung?

Der Schaltungsaufwand für die Widerstandsmessung steht dann doch in 
keinem Verhältnis zum Ergebnis!?

Autor: Robert Breicher (Firma: Privat) (eshidata)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die schnelle Antwort...
Also ich habe halt diese Teile hier, wollte keine neuen Thermofühler 
besorgen.
Gibt es eine Berechnung welcher Wert für welche bit-Auflösung sinnvoll 
ist ?
Vielen Dank

Autor: Dirk S. (fusebit)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ist Dir überhaupt klar wie Du Widerstandsthermometer oder alternativ 
Thermoelemente beschalten musst?

Die kannst Du nicht an den ADC klemmen und gut ist.

Autor: Robert Breicher (Firma: Privat) (eshidata)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke für die schnelle Antwort.
Also ich weiß dass ich einen Spannungsteiler für jeden Fühler bauen 
muss.
Ich verwende eine Ref.spannung, diese muss per Spannungsteiler (R1 + 
Rth) so bemessen sein das der Eingang des mega8 nicht übersteuert wird.
Gibt es noch was zu bedenken was ich übersehen habe ?
Vielen Dank

PS:
Noch was fällt mir auf: mein mega8 in PDIP-Gehäuse hat nur 6x interne 
ADCs!
Muss ich einen anderen "mega" benutzen oder gibt es da ein Trick?
Danke

Autor: Dirk S. (fusebit)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ich denke Du weißt so gut wie nichts. Das ist nicht böse gemeint, aber 
Deine Reaktionen zeigen, dass Du die Verwendung von Pt1000-Fühler 
überhaupt nicht verstanden hast.

Du benötigst eine KonstantSTROMquelle um den sich ändernen 
Widerstandswert des Fühlers messen zu können. Obendrein macht sich ein 
kleiner Operationsverstärker zwecks Signalverstärkung noch ganz gut...

Ich habe Dir mal ein pdf angehangen, welches ich irgendwann mal, 
irgendwo im Netz gefunden habe.

Autor: Robert Breicher (Firma: Privat) (eshidata)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vieln Dank,
das wusste ich wirklich nicht.
Also muss ich für jeden Fühler so eine Schhaltung benutzen....
Soweit klar!
Danke

PS:
Gilt diese Schaltung für alle Thermoelemente ?
In meiner Teilekiste habe ich auch einige NTCs und PTCs gefunden...
Habe auch einen LM34 hier, der gibt 10mV/°F aus....
Danke

Autor: Dirk S. (fusebit)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein PT100 ist KEIN Thermoelement! NTC und PTC sind auch keine 
Thermoelemente, genauso wenig wie ein LM34...

Ich würde sagen Du solltest Dich wirklich erstmal mit den Grundlagen der 
Elektronik auseinandersetzen, bevor Du ein 64 Kanal Thermometer baust.

Autor: mandrake (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Robert!

Ich verstehe nicht ganz, warum du soviele AD-Wandler benötigst.
Mein Ansatz wäre folgender:

Internen AD-Wandler verwenden oder falls der nicht genau genug ist einen 
genaueren Externen. Auf diesen würde ich dann mit einem 64 -> 1 DEMUX 
(Demultiplexer) meine 64 Analog-Signale nacheinander aufschalten und 
wandeln.
Falls du sowieso immer ALLE Werte benötigst und nicht spezielle 
selektieren willst, kannst du noch einen Zähler spendieren, der dir die 
DEMUX-Adressen bildet. So brauchst du nur noch eine Taktleitung für den 
Zähler und eine Resetleitung (für einen definierten Anfangszustand) und 
natürlich die Leitung zu deinem AD-Wandler-Eingang.

Der Algorithmus sieht dann prinzipiell so aus:
Beim ersten Start: Reset einmal toggeln
Im Betrieb dann:
->AD-Wandeln
->Verarbeiten
->auf Schnittstelle senden
->Takt per IO-Port an Zähler senden für nächsten Wert
->AD-Wandeln
->Verarbeiten
      .
      .
      .

Ich hoffe, dass ich dir noch ein paar wertvolle Tipps gegeben habe.

Viel Erfolg bei deiner Lösung!
Mandrake

Autor: Robert Breicher (Firma: Privat) (eshidata)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Erstmal vielen Dank
Es ist mir klar das ich Wissenslücken habe, deswegen bin ich hier und 
ich bedanke mich für jede Hilfe.

Habe hier im AVR-Tutorial das Thema ADC und Themperaturmessung 
durchgelesen und mir war soweit alles klar....
Gut, ich werde mein Wissen sicherlich vertiefen müssen, was aber auch 
nur durch lernen und versuchen am besten funktioniert!

Zurück zu meiner Frage:
Wenn ich alles soweit richtig gemacht habe, komme ich wieder zurück zum 
mega8 im PDIP-Gehäuse.
Der hat nur 6x ADCs, was bedeutet dass ich entweder nur 6 Kanäle habe 
oder ich verwende 9x MUX, also 8x MUX für die Thermoeingänge und das 
9´te MUX um alle anderen MUX an einem ADC-Eingang zu verschalten!
Eine andere Möglichkeit ist einen anderen "mega" zu verwenden der schon 
8xADC an Board hat.
Ist das soweit OK?

Vielen Dank

Autor: Robert Breicher (Firma: Privat) (eshidata)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Mandrake und vielen Dank für die schnelle und einfache Antwort.

Wie gesagt war es mir nicht klar dass ich einen analogen Wert durch 
einen MUX jagen und erst danach einen ADC einsetzen kann.
Habe hier einige 74LS251 (8->1) und würde sie gerne verwenden...
Hast Du zufällig einen Tip für einen 64->1 MUX oder soll/kann ich es mit 
9xMUX, wie beschrieben machen ?
Vielen Dank

Autor: Michael Wilhelm (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Zieh dir mal das Datenblatt vom 74HC4051. Das ist ein 
Analogmulti-Demultiplexer.

MW

Autor: jack (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Wenn ich alles soweit richtig gemacht habe, komme ich wieder zurück zum
>mega8 im PDIP-Gehäuse.
>Der hat nur 6x ADCs

Entweder TQFP...

>Eine andere Möglichkeit ist einen anderen "mega" zu verwenden der schon
>8xADC an Board hat.

...oder gleich ATMega16/32.

Autor: Robert Breicher (Firma: Privat) (eshidata)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Michael,
vielen Dank für die schnelle Antwort.
Habe mir das Datenblatt soeben geholt....
Bedeutet dass das ich meine 74LS251 nicht verwenden kann ?
Währe sehr schade!
Auch mit diesem Modell müsste ich aber mit einem mega8 eine 2-Ebenen 
Matrix aufbauen, 8x MUX für die 64 eingänge und 1x Mux für die 8 
Ausgänge an den ADC.
Vielen Dank

Autor: Robert Breicher (Firma: Privat) (eshidata)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Jack,
vielen Dank für die schnelle Antwort.
OK, werde mir dann den mega16 einbauen.
Der Code bleibt aber der selbe wie im AVR-Tutorial für den mega8 
beschrieben, oder?
Danke
PS:
Klar dass da einige Anpassungen bezüglich des Contr. gemacht werden 
müssen..

Autor: jack (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Bedeutet dass das ich meine 74LS251 nicht verwenden kann ?

Der 74LS251 ist KEIN Analogmultiplexer, der 4051 schon.

Autor: Robert Breicher (Firma: Privat) (eshidata)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
OK, also MUSS ich den 4051 nehmen....
Gucke gerade wo ich den günstig finden kann...
Vielen Dank

Autor: Robert Breicher (Firma: Privat) (eshidata)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Jack,
habe in meiner Kiste einen mega8535 gefunden...der müsste es auch tun!
Also dann:
8x 74HC4051 -> mega8535 -> MAX232 ->SubD9
Die Software aus dem AVR-Tutorial (ADC) anpassen, 3 Ausgänge als 
Schalter für die MUX....
Hast Du einen hilfreichen Tip wie man das am besten macht ?
Ich bin neu im Assembler-Geschäft....aber lernfähig :-)

Vielen Dank

Autor: Olli (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wieso machst du das ganze nicht einfach in C?

Ich denke ist ein bisschen eifacher zu programmieren.

Gruss Olli

Autor: Robert Breicher (Firma: Privat) (eshidata)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Olli,
danke für die schnelle Antwort.
Also ich bin in keiner der beiden Programmiersprachen ein Ass.
Hier habe ich den Assembler-Code gefunden den ich mit AVR-Studio testen 
konnte um erste Erfahrungen zu sammeln.
Wenn Du Code in C haben solltest dann würde ich mir das Ganze auch in C 
angucken und einarbeiten.
Mit der Software AVR-Studio ist auch WinAVR installiert worden, so kann 
ich auch in C schreiben und testen. Würde mich sehr darüber freuen.
Vielen Dank

Autor: jack (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Ich bin neu im Assembler-Geschäft....aber lernfähig :-)

Mit Assembler sollte das nicht allzu schwierig sein, den Ablauf hat ja
"mandrake" weiter oben schon beschrieben.

Falls Du noch nicht viel Erfahrung im Umgang mit µC-Programmierung hast,
würde ich zuerst versuchen, nur einen einzigen Analogwert einzulesen
und den über den UART zu senden.

Autor: vitis_01 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
auch ein guter Analogmux ist der 4067 (1:16) oder zweikanalig der 4097 
(2x 1:8).

Autor: vitis_01 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
aber bevor Du n Bausteingrab zusammentüftelst solltest Du Dir
evtl. die Frage stellen ob es nicht sinnvoller währe
einfach 8-mal nen Mega16 zu nehmen, diese mit jeweils
8 Temperaturfühlern auszustatten und die ganze Geschichte
über z.B. UART miteinander kommunizieren zu lassen.
Hätte bei der Verwendung von z.B. RS485 den Vorteil, dass Du
die Sensorinseln räumlich weit auseinander platzieren kannst.

Autor: Robert Breicher (Firma: Privat) (eshidata)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
jack wrote:

> Falls Du noch nicht viel Erfahrung im Umgang mit µC-Programmierung hast,
> würde ich zuerst versuchen, nur einen einzigen Analogwert einzulesen
> und den über den UART zu senden.

Hallo Jack und danke für die schnelle Antwort.
Habe auch diesen Weg genommen und den Code aus dem Tutorial 
(AVR-Tutorial - ADC) getestet.
Ich bin gerade dabei die Ausgabe zu formatieren und beisse mir noch die 
Zähne aus wie ich alle 6 ADCs mit einer Schleife auslesen und ausgeben 
kann...
Bin für jede Hilfe dankbar.

PS:
Zur Zeit liest der mega8 den ADC 1 ein und gibt den Wert aus, den guck 
ich mir gerade mit einem Terminal an.
Habe angefangen mit ASCII-Code die Ausagabe zu bearbeiten...
Aber die Schleife bereitet mir noch viel Kopfzerbrechen....
Ansatz ?
Danke

Autor: Robert Breicher (Firma: Privat) (eshidata)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
vitis_01 wrote:

> Hätte bei der Verwendung von z.B. RS485 den Vorteil, dass Du
> die Sensorinseln räumlich weit auseinander platzieren kannst.

Hallo und danke für die schnelle Antwort.
Hört sich interessant an, ich bin aber ein Anfänger und die Software 
ist noch etwas schwer für mich.
Denke das erstmal einfache Schritte mich da weiterbringen werden.
Dann kommt noch dazu dass ich nur wenige mega´s habe,
da sind mega8, 16, 32 und 8535, die besagten TLC549, einige 74LS251 und 
einige PT1000, NTC und PTC, noch zu erwähnen sind einige LM34....
Nicht wenig aber auch nicht viel.. :-)
Werde aber die Idee im Hinterkopf behalten....interessant !
Vielen Dank

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Robert Breicher (Firma Privat) (eshidata)

>Habe angefangen mit ASCII-Code die Ausagabe zu bearbeiten...

Festkommaarithmetik

>Aber die Schleife bereitet mir noch viel Kopfzerbrechen....
>Ansatz ?

Wo ist das Problem?

ADC-MUX umschalten, kurz warten, messen, Wert ausgeben

Das in einer Schleife.

MfG
Falk

Autor: Robert Breicher (Firma: Privat) (eshidata)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Falk,
danke für die schnelle Antwort.
Mein "kleines" Problem ist das ich Assembler-Anfänger bin und noch etwas 
"hincke"...
Wo genau muss sie hin, was muss noch wann gemacht werden....
Etwas unsicher halt....und es dauert bis Klarheit aufkommt!
Habe auch keinen Demo-Code um zu sehen wie die Profis sowas machen....
Hast Du etwas was mir den Weg zeigt, etwas Demo-Code ?
Z.B.:
3 Ausgänge die alle Werte einer 3bit-Zahl-Wahrheitstabelle ausgibt oder 
das umschalten der mega8/16 Eingänge nach dem alle MUX geschaltet wurden 
oder einfach wie ich eine Schleife um diesen Demo-Code aus dem Tutorial 
lege....
Jede Hilfe ist willkommen :-)
Danke

Autor: Thilo M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Messaufnehmer direkt mit einem MUX schalten würde ich nicht.
Da es beim Widerstands-Messfühler (PT1000) zu Übergangswiderständen am 
MUX kommt, verfälscht das auch das Messergebnis. Noch schlimmer ist es 
bei Thermoelementen, da diese eine Vergleichsstelle brauchen 
(Klemmentemperatur wo das Element angeklemmt ist).

Autor: Robert Breicher (Firma: Privat) (eshidata)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Thilo M. wrote:
> Die Messaufnehmer direkt mit einem MUX schalten würde ich nicht.
> Da es beim Widerstands-Messfühler (PT1000) zu Übergangswiderständen am
> MUX kommt, verfälscht das auch das Messergebnis. Noch schlimmer ist es
> bei Thermoelementen, da diese eine Vergleichsstelle brauchen
> (Klemmentemperatur wo das Element angeklemmt ist).

Hallo Thilo,
danke für Deine Hilfe,
könntest Du mir auch einen Ausweg nennen ?
Wie soll ich dann bis 64 Thermo/Sensoren einsetzen ?
Für jede Hilfe dankbar !
Vielen Dank

Autor: Thilo M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich bin grade dabei, eine Heizungssteuerung (Regelung) zu bauen, Solar & 
Schnickschnack, brauche da 10x PT100. Ich habe vor, für jeden Geber eine 
Konstantstromquelle (LM334) aufzubauen und das Signal für meine Bereiche 
auf 0..5V zu konditionieren. Umschalter kenne ich von meiner Arbeit, 
allerdings waren das sehr hochwertige Goldkontakte (1 Relais 275€).
Für 64 Messtellen ist das natürlich ein extremer Aufwand.
Es gibt auch von PHOENIX Messumformer in 6.3mm breiten Reihenklemmen, 
allerdings fallen da ca. 120€ pro Kanal an.

Autor: Robert Breicher (Firma: Privat) (eshidata)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Thilo,
danke für den Hinweiss aber das sprengt meine "Portokasse", leider...
Ich benötige nur einen 64-Kanal-Thermometer um eine Schaltung (in der 
Entwicklung) überwachen zu können.
Es gibt viele sogenannte "Hotspots" die ich überwachen muss, 
Leistungstransistoren, Traffos usw., die werden alle warm/heiss und ich 
möchte gucken ob die Lüftung ausreichend funktioniert.
Dafür der Einsatz!
Der mega16 und Konsorten mit einigen MUX würde für mich genau das 
Richtige sein, wenn... ich es schaffe (mit Euere Hilfe!) das der megaXX 
das macht was ich will/brauche.
Eine einfache Idee um eine sogenannte Wahrheitstabelle (3bit-Zahl) an 3 
Ausgänge auszugeben (um die MUX zu schalten) würde mir jetzt sehr 
helfen...
Die MUX werden per 3bit geschaltet, also alle 8 Eingänge der MUX werden 
binär angesteuert, also muss der megaxx 3 Ausgänge dafür opfern, aber 
wie implementiere ich sowas in Assembler ???
Vielen Dank

Autor: jack (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Die MUX werden per 3bit geschaltet, also alle 8 Eingänge der MUX werden
>binär angesteuert, also muss der megaxx 3 Ausgänge dafür opfern, aber
>wie implementiere ich sowas in Assembler ???

http://www.mikrocontroller.net/articles/AVR-Tutori...

Am besten Du arbeitest das Tutorial durch, anscheinend ist das Dein
erstes Programm.

Autor: Thilo M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du könntest dir mal den DG509 (Analogschalter) ansehen, evtl. mal eine 
Testschaltung damit aufbauen, vielleicht klappt das ja, die Geber zu 
multiplexen (zumndest die PTs)?
Werde das interessehalber auch mal probiern, brauche ja auch ein paar 
Fühler. ;-)

Autor: Robert Breicher (Firma: Privat) (eshidata)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
jack wrote:

>
> Am besten Du arbeitest das Tutorial durch, anscheinend ist das Dein
> erstes Programm.

Hallo Jack,
stimmt, es ist mein erstes Assembler-Programm....
Hocke alleine in mein Kämmerlein und grübbel vor mich hin und komme 
schwer weiter....
Bin sehr Dankbar für euere Hilfe.
Vielen Dank

PS:
Ich bewege mich nur noch in den Tutorials.....
Es ist dennoch sehr schwer für mich, zu viele "Unbekannten"....
Danke

Autor: Thilo M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lass' dir Zeit, da steckt mittlerweile viel dahinter.
Es ist noch kein Meister vom Himmel gefallen (zumindest nicht mit 
Absicht). :-)

Autor: Robert Breicher (Firma: Privat) (eshidata)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Thilo,
habe von Fa. Conrad ein Bausatz mit 8 Eingänge, so ein billiger 
8-Kanal-Analogwandler, der funktioniert einwandfrei.
Es wurde ein mega48 eingesetzt, daran sind 8 Eingänge und es klappt 
alles super.
Als Fühler verwende ich einen NTC/PTC, habe auch einen LM34 drangemacht, 
es klappt alles einfach.
Jetzt wollte ich das selbe mit 64 Fühler aufbauen....
Deswegen diese Aktion.

PS:
habe auch einen PT1000 via Spannungsteiler dran gemacht, auch alles OK.
Danke

Autor: Robert Breicher (Firma: Privat) (eshidata)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja Thilo, da hast Du recht.....
Danke für Deine aufbauende Worte....
Wenn ich bloß Demo-Code finden würde die mir das einfach erklären....
Dann klappt es auch sehr schnell...
Vielen Dank

Autor: Thilo M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kannste die Bestellnummer von dem Conrad-Bausatz mal posten?
Evtl. kann ich da auch was draus machen.

Autor: Robert Breicher (Firma: Privat) (eshidata)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Thilo,
hier die Infos:
1.
10 BIT DATENERFASSUNGSSYSTEM - BST
Artikel-Nr.: 190226 - 62
2.
USB 10-BIT-DATENERFASSUNGSSYS. BAUSTEIN
Artikel-Nr.: 191028 - 62

Beide liegen bei ca. 30€ - 35€.
Dabei ist auch eine Demo-Software.....

Ich habe das USB-Modul besorgt, damit klappt es sehr gut.
Viel Spass/Erfolg damit.

PS:
Habe es gerade geschafft die ADCs per Variabel zu schalten.
Habe also eine Variable angelegt, dieser eine binäre Zahl zugeordnet, 
diese Variabele als Initialisierung für das ADMUX eingetragen und 
voila... es geht.
Jetzt kann ich, manuell erstmal, die ADC-Eingänge ein- und ausschalten 
wie ich es will.
Werde alles in einer Schleife packen und schon wird der mega alle seine 
ADCs schön der Reihe nach auslesen...
"Mühsam ernährt sich das Eichörnchen..."

Autor: Thilo M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Jo, der LTC1090 ist schon prima, nur, 8 Kanäle mit 10 bit haste auf 
vielen Atmels ja schon drauf.
Ich habe meine Erfassung mit dem LTC1290 (12-Bit-Version) geplant. Muss 
aber noch testen.

Autor: Robert Breicher (Firma: Privat) (eshidata)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
12bit für Themepraturmessung ?
Ist es nicht ein wenig zu viel des Guten ?
Im Labor mag das gut sein aber für Deine "Consumer"-Anwendung....
Hauptsache es "funzt" :-)
Viel Erfolg

Autor: Robert Breicher (Firma: Privat) (eshidata)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
jack wrote:
>>Die MUX werden per 3bit geschaltet, also alle 8 Eingänge der MUX werden
>>binär angesteuert, also muss der megaxx 3 Ausgänge dafür opfern, aber
>>wie implementiere ich sowas in Assembler ???
>
> http://www.mikrocontroller.net/articles/AVR-Tutori...
>
> Am besten Du arbeitest das Tutorial durch, anscheinend ist das Dein
> erstes Programm.

Hallo Jack,
Habe es gerade geschafft die ADCs per Variabel zu schalten.
Habe also eine Variable angelegt, dieser eine binäre Zahl zugeordnet,
diese Variabele als Initialisierung für das ADMUX eingetragen und
voila... es geht.
Jetzt kann ich, manuell erstmal, die ADC-Eingänge ein- und ausschalten
wie ich es will.
Werde alles in einer Schleife packen und schon wird der mega alle seine
ADCs schön der Reihe nach auslesen...
"Mühsam ernährt sich das Eichörnchen..."

Vielen Dank noch mal.....

Autor: Thilo M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>12bit für Themepraturmessung ?
Hat schon sinen Sinn. Auch mit Mittelwertbildung.
Da hier einige Mischer (Stellantriebe) angesteuert werden, sollte das 
Ganze nicht zu grob aufgelöst sein, da sonst die Stellantriebe ständig 
am Laufen sind, was ziemlich auf die Lebensdauer geht.

Autor: Robert Breicher (Firma: Privat) (eshidata)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Also 12 Bit = 4096
bei 5V/4096 = 0,00122V
Oder bei einem Themp.Delta von 100°C/4096 = 0,024V / Step.
Wenn jetzt der Step grober ist als dieser Wert dann ist die Auflösung zu 
hoch oder Du musst sie kappen...
Mach ich da ein Denkfehler ?
Ich gehe davon aus dass Du weisst was zu machen ist, es war einfach nur 
eine Denkübung für mich....fachsimpeln :-)
Erst mal danke

Autor: Robert Breicher (Firma: Privat) (eshidata)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Thilo,
ich bedanke mich für heute, ich muss leider für heute Feierabend 
machen....
Morgen geht es weiter, da muss die Schleife her....
Ich bedanke mich sehr herzlich an alle die so hilfreich waren, ohne Euch 
währe der Anfang nicht zu schaffen.
Vielen Dank & gute Nacht an alle !
Ciao

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.