PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : RN-Mega2560 Muß man Aref noch mit 100nF beschalten? [gelößt]



Steffen44
25.06.2007, 07:29
Hallo,

Ich habe hier viele schöne Schaltpläne mit Beschriftungen der einzelnen Bauteile. Leider finde ich keine Bauteilliste um herauszufinden ob der Kondensator der im Schaltplan am Aref schon vorhanden ist 100nF groß ist.

Wenn ich das richtig erkenne und davon ausgehe das es die 100nF sind muß man um eine ADC Messung zu machen diesen nicht weiter beschalten ist das so korrekt ?

Vielen Dank

Gruß
Steffen

goara
25.06.2007, 12:44
also um ne messung zu machen legst du von vcc auf aref nen draht rueber, im programm schaltest du aref auv avcc dann schaltest du die spannung die zwishcne 0 und 5 volt leigen muss! zwischen gnd und den adc ..
kondensator kannst machen, dann wirds genauer, aber ich hab auch nen rnmega2560 und ohne kondensator funzt das prima...

Steffen44
25.06.2007, 13:20
laut datenblatt ist der aref schon mit einem Kondensator gegen masse verbunden da muß man gar nichts mehr machen. Was ich wissen möchte ist ob der Kondensator auch 100nF hat. In der Anleitung ist leider keine Teileliste dabei und ausmessen kann ich den Kondensator nicht da ich kein Messgerät dafür habe.

Die Korrekte Beschaltung habe ich unten in diesem Tread zusammengefasst.

https://www.roboternetz.de/phpBB2/zeigebeitrag.php?t=31758&highlight=

Gruß
Steffen

goara
25.06.2007, 14:27
also ich hatte es erst versucht nur intern auf avcc zu shcalten, da kam aber gar keine wertr raus wenn ich gemessn hab, jetzt hab ich vcc und areff verbunden und es fnktioniert wunderbar...

Steffen44
25.06.2007, 15:04
mhh funktionieren soll es ja angeblich. Hast du auch im Bascom Reference = AVCC eingestellt ?

Das ganze mit AVCC zu testen habe ich auch noch vor mir aber funktionieren sollte es schon nachdem ich mir nun so viele Quellen angesehen habe die alle das selbe behaupten.

Gruß
Steffen

goara
25.06.2007, 16:02
ja hatte refernece = avcc .. da is aber gar nix passiert und mit der physikalishcen verbindung der 2 ports gings dann.. weis auch nich...

Steffen44
28.06.2007, 15:15
so ich habe das jetzt mal probiert ohne das AVCC und ARF verbunden ist und es ging gar nichts.

Jetzt habe ich alles wieder verbunden und was vorher ging geht jetzt nicht mehr :-( .... hoffentlich ist durch das dumme experiement nichts kaput gegangen. Jetzt bekomme ich gar keine Messwerte mehr versteh ich nicht.

linux_80
28.06.2007, 18:15
Hallo,

Wenn an AREF nur ein Kondensator hängt, muss man eine interne Referenz, bzw. AVCC, auswählen.
Der M2560 hat auch 2 unterschiedliche int. Ref-Spannungen, evtl. setzt Bascom das auch noch nicht richtig, evtl. mal im Disassembler nachprüfen, welche Bits wirklich gesetzt werden.
Gehört hab ich davon aber noch nix, bzw. hab nicht danach gesucht ;-)

Wie schaut denn der Programmteil aus zum Initialisieren und holen des ADC-Wertes ?

goara
28.06.2007, 21:58
noch ne frage zu den ports.. wenn ich am avc(0) messe bekomm ich bei u0 bis 5 volt werte von 0 bis 1024 beim avc(1) nur von 0 bis 512 ... also kelienr auflösung... is das bei dem board so ? , wenn ja wuerde mich mal interessieren welche ports welche auflösung haben, bzw kann man das umstellen ??

linux_80
29.06.2007, 00:17
Die Werte können verfälscht werden, wenn irgendwo am Pin noch Widerstände in der Leitung sind (Pull-up/-down),
bzw. Pullupwiderstände im AVR aktiviert werden.

Hast Du mal gemessen ob die gewünschte Spannung auch wirklich am Pin anliegt ?
Wie schaut die TestSchaltung dafür aus ?

goara
29.06.2007, 00:47
hab nen poti, das ich an der einen seite auf vcc andere seite auf gnd hab und den schleifer auf adc .. das ganze kann ich ueber stecker an verscidene adcs einstöpseln...

Steffen44
29.06.2007, 06:35
hallo

so ich habe einen Fehler gefunden : Ich habe den PORTK angeschlossen den ich vorher noch nie getestet habe.

Ich frage im Bascom alle 16 Analogports ab und ADC0 bis ADC7 funktionieren. ADC8 bis ADC15 funktioniert dagegen nicht.

Kannst du bitte mal testen Goara ob du am PortK (ADC8 bis ADC15) analoge Messwerte einlesen kannst ?


Schnipsel Beispiel:

Config Portk = Input ' Port k als Anlogeingang konfigurieren 8 Analogports '
Config Portf = Input ' Port f als Anlogeingang konfigurieren 8 Analogports

start adc

A = Getadc(0)
Waitus = 11
B = Getadc(1)
Waitus = 11
... usw. bis
P = Getadc(15)

Ich habe so das Gefühl das in der Bascom Version 1.11.8.7 irgendwie ein Bug in der Abfrage der Analogeingänge 8-15 ist.


Gruß
Steffen

PS.: Die 10 Bit sollten an jedem ADC verfügbar sein. Für die ADC0-7 kann ich jedenfalls definitiv bestätigen das die 10Bit Auflösung funktioniert.


PSS : So ich habe jetzt nocheinmal die Referenz AVCC eingestellt und der ADC 0-7 funktioniert damit. Soweit so gut nun müßte nur noch ADC 8-15 irgendwie funktionieren.

linux_80
29.06.2007, 11:03
Hallo,
es könnte schon sein, das Bascom in dieser Version noch einen Bug hat, denn soviele ADC-Eingänge haben sonst nicht viele andere AVR.
Beim M2560 ist der ADMUX auf zwei Register verteilt, deswegen funktionieren die unteren, aber nicht die oberen.

Ich kann heut Nachmittag evtl. mal probieren, ob es in der neusten Bascom-Version anders ist (Wenn's derweil keine anderen neuen Erkenntnisse gibt). Ich hab zwar keinen M2560, kann das aber im ASM kontrollieren ob die richtigen Register gesetzt werden.

Steffen44
29.06.2007, 11:19
das wäre schön wenn du das mal prüfen kannst. ASM habe ich selber noch nie benutzt.

Ich habe es jetzt noch mit Bascom 1.11.8.8 getestet. Das ist die neuste Version aber die 2560.def Datei wurde nicht verändert so das es immer noch bei dem Fehler bleibt.

Langsam bin ich hier am verzweifeln ich habe jede Leiterbahn verfolgt und alle Spannungen gemessen die nur gehen ich habe jeden Pin am PortK (ADC8-15) probiert alles ohne Erfolg.

Du wärst meine letzte Rettung um wenigstens den Fehler einzugrenzen.

Gruß
Steffen

linux_80
29.06.2007, 12:03
Jetzt probieren wir erst mal einen workaround, 8-[
denn beim M2560 sind die ADC-Kanäle nicht direkt hintereinander von 0-15 ansprechbar, dH. 0-7 passt mit GetdADC(0-7), aber für 8-15 brauchts einen Tricks:
Ich hab das jetzt noch nicht probiert, aber das darfst Du machen :-)

Wenn ADC8-15 gemessen werden soll, vorher mit

ADCSRB.MUX5 = 1 ' ADC8-15
umschalten, dann wird mit GetAdc(0 -7) ADC8-15 gemessen !
Wenn man ADC0-7 messen will, wieder mit

ADCSRB.MUX5 = 0 ' ADC0-7
zurückschalten zum Normalzustand !

Steffen44
29.06.2007, 13:46
ok ich hab´s probiert und es geht leider nicht.

Ist der Code einfach nur falsch ... ich verstehe es nicht :


Ich habe jetzt mal den Code zusammengeschrumpft um nur den ADC10 auszulesen.
Der Code ist so minimal und Übersichtlich das ich keine Fehler entdecken kann. Das einzigste wo ich mir unsicher bin ob ich den Analogeingang auch mit Config Portf = Input konfigurieren muß.



'Diese Anweisung setzt die Fusebits automatisch korrekt (Syntax $PROG LB, FB , FBH , FBX )
$prog , 255 , &B11011001 , 'Quarz an / Teiler aus / Jtag aus
$regfile = "m2560def.dat"
$hwstack = 82 '80
$framesize = 68 ' 64
$swstack = 68 '44
$crystal = 16000000 'Quarzfrequenz



'Definition USB
Config Com4 = 38400 , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 , Clockpol = 0
Open "com4:" For Binary As #4 'USB Port


'Analogport Definition
Config Portk = Input ' Port k als Anlogeingang konfigurieren 8 Analogports '
Config Portf = Input

Enable Interrupts

Dim Getdata As Word



Config Adc = Single , Prescaler = Auto , Reference = Avcc 'Analog Digitalwander Zuweisungen


Start Adc



Do


'hab ich noch zusätzlich eingetragen und auch ohne probiert aber ob das sinn ergibt ?
Adcsrb.acme = 1
Adcsrb.aden = 1
'ergibt das sinn ende


Adcsrb.mux5 = 1 ' ADC8-15


Getdata = Getadc(10)
Print #4 , Getdata
Print #4 ,


Waitms 500

Loop
End


Der Code gibt mir auf meiner RS232 immer 1021 schwankend bis 1023 aus den wirklichen Messwert macht er nie.

Steffen44
29.06.2007, 14:10
so neue erkenntnisse:

Adcsrb.mux5 = 1 verhindert das ich die ADC0-7 auslesen kann soweit stimmt das.

Adcsrb.acme = 1 und Adcsrb.aden = 1 haben dem Programm erstmal nicht geschadet soweit so gut.

Ich habe jetzt mal den ADC11 genommen und da erhalte ich einfach nur willkürlich schwankene 10 Bit Werte und das obwohl Adcsrb.mux5 = 1 gesetzt ist.

Das alles hat eigentlich zur Folge das der gesamte Port K defekt ist was ich eigentlich nicht glaube da ich meine Eingänge über einen Spannungsteiler und zusätzlich mit einem Widerstand von 4,7 KOhm den Port gegen zu hohe Ströme geschützt habe. Selbst ein Z-Diode habe ich eingebaut gegen Überspannung.


Kann es irgendwie sein das die Register falsch ausgelesen werden in Datenblatt steht irgendwas von Links und Rechtsbündig angeordnet was ich aber auch noch nicht ganz verstanden habe wie das funktioniert ?

Naja ich glaube nur dein ASM verschafft noch Klarheit ^^

Gruß
Steffen

linux_80
29.06.2007, 14:47
Hallo !
Wenn du mit Adcsrb.mux5 = 1 umschaltetst, darfst du nicht wieder mit GetAdc(10) die Daten holen !
sondern mit GetAdc(0) für ADC8, usw. !
Der max. Wert für GetADC ist 7 !

Also entweder MUX5 = 0 dann bekommt man mit GetADC(0) den ADC0-wert eingelesen, oder mit MUX5 = 1 dann bekommt man mit GetAdc(0) den ADC8-Wert eingelesen.

Die andern Bitsetzereien, die Du gemacht hast, kannst mal weglassen, da es ja vorher ansonsten auch geklappt hat !


getadc(x) | Mux5 = 0 | Mux5 = 1
----------+-------------+-----------
0 | 0 | 8
1 | 1 | 9
2 | 2 | 10
3 | 3 | 11
4 | 4 | 12
5 | 5 | 13
6 | 6 | 14
7 | 7 | 15

Aber trotzdem ohne Gewähr, hab mein ASM noch nicht angeworfen :-$

Edit:

Adcsrb.acme ist für den Analog Comparator, das können wir hier nicht brauchen ! [-X
Noch einer:
Adcsrb.aden gibts garnicht, deswegen hats nicht geschadet :-)

linux_80
29.06.2007, 16:42
Hallo,
jetzt hab ich erstmal ein update von Bascom gemacht, nicht das wir hier einen alten Fehler finden ;-)

Hab ein kleines Testprog gebaut, das nur ein Getadc enthält, einmal mit Getadc(1) und mal mit Getadc(10), und so wie es mal in der Hilfe stand, wird der Wert in der Klammer direkt an ADMUX übergeben, und nicht wie man meinen könnte, der entsprechende ADC-Eingang angesprochen !
Es ist also nicht vorgesehen, dass man den ADMUX auf zwei Register verteilt (GetADC > 7).

Die ADC-Eingänge von 7 - 15 haben beim MUX eigentlich die Werte 32 - 39, was man aber nicht so darstellen kann, da die Bits auf zwei Register aufgeteilt sind.

Es müsste also so funktionieren wie ich oben beschrieben habe.

Da Du im schriftlichen englisch besser bist als ich, darfst Du den Bug an MCS-Mark weiterleiten :-) Im MCS-Forum hast Du es ja schon angefragt.

Steffen44
29.06.2007, 17:28
uii uii es funzt ***mega freu und an die decke spring***

Du hast absolut recht getadc(0) beim Mux5 = 1 ist der ADC8. Das der andere Code quatsch ist hätte ich mir fast denken können mit den Datenblättern muß ich mich erstmal anfreunden.

Falls du mal in meiner nähe bist erinnere mich drann das ich dir einen Kasten Bier oder was auch immer du drinken willst schulde.

Ich glaube das hätte ich ohne dich nie hinbekommen.
Ich suche mal die aktuelle Bugliste und schreibe es noch mit unten drann.


Tausend und einmal Danke
Steffen


PS.: Japp habe gerade im MCS Forum die Lösung gepostet ... man hätte ja meinen können das da mal ein Entwickler ab und zu vorbei schaut ^^.

PSS. : MCS Mark ist informiert mal schauen was er antwortet.

Hehe zwischendurch ist bei mir soviel passiert das ich wahrscheinlich heute nacht nicht mehr schlafen kann :-)

1.µController funzt endlich.
2.Auto ist kaput gegangen da bin ich erstmal schnell zu Werkstatt und habe einen Schlauch wechseln lassen.
3.Mein Mutter ist im RTL Mittagsmagazin zu sehen ^^ uihh voll die Prominenz hier ... da hole ich mir gleich nen Autogramm hohoho.

linux_80
29.06.2007, 19:42
Falls du mal in meiner nähe bist erinnere mich drann das ich dir einen Kasten Bier oder was auch immer du drinken willst schulde.

M*st, meine Eltern waren letztes WE in Leipzsch, u.a. ableger der neuen Firma im norden (noch nicht in Google zu sehen) angucken, hättest ein paar Tage früher mit dem ADC angefangen :-)


Aber hat sich doch fast noch rentiert, das ich heute frei hatte :-)

Und schau mamal, was dem Mark einfällt.

Steffen44
29.06.2007, 20:49
hehe naja macht nichts das Angebot ist unbegrenzt verfügbar ;-)

Und mit dem ADC beschäftige ich mich schon seit Monaten ... davon bin ich absolut fasziniert da einem da alle Türen offen stehen egal welche Sensoren man anschließt.

Morgen gehts erstmal weiter mit dem Watchdog und dann ma schauen wie der Sleepmode funktioniert. Da bin ich mal gespannt was Bascom noch für Überaschungen berreithält.

Was ich mich auch schon ewig Frage ist ob man die Referenzspannung die zum Vergleich der ADC Eingänge notwendig ist irgendwie noch auslesen kann ?

Schönen Abend noch Gruß
Steffen

linux_80
29.06.2007, 22:48
Wegen der Referenzspannung, die sollte man schon kennen, deshalb ist es ja die Referenz !
http://de.wikipedia.org/wiki/Referenz

Ansonsten mit der internen Referenz über einen ADC-Eingang messen, solange die dann kleiner ist.

Steffen44
29.06.2007, 22:52
japp das ist klar ich meinte auch eher das ich mir die Spannung noch mal irgendwie auslesen kann das ich sozusagen einen 17 ADC Port habe. Was ich für eine Spannung an den Pins anliegen habe weis ich ja immer aber wie die aktuelle Spannungsversorung am ADCC Pin aussieht weis man nie wirklich. Der AVCC ist nun wie im Datenblatt mit Drossel und Kondensator mit 5 Volt beschalten aber woher weis ich denn wann mein Netzteil mal schwankt und mal mehr oder mal weniger Spannung ausgibt.

Immerhin funktioniert der Controller mit 4,8 Volt bis 5 Volt. Wenn es mal nur noch 4,8 Volt sein sollten dann ist der Vergleich der ADC´s nicht mehr richtig möglich.

Aber vermutlich denke ich da ein bisschen in die falsche richting weil nicht umsonnst gibt es duzende Messschaltungen wie man die Betriebsspannungen mist.

Gruß
Steffen

linux_80
30.06.2007, 00:36
Bei Boards die mit Akku betrieben werden, wird diese direkt (über Spannungsteiler) an einen ADC-Eingang gelegt, und am besten mit einer internen Referenz gemessen, denn diese ist dann in gewissem Rahmen unabhängig von der externen Versorgung.

Auch kann man den BOD aktivieren/einstellen, der schaltet dann ab, bzw. hält den Reset, wenns zu wenig Spannung hat.

Steffen44
30.06.2007, 23:50
Mark hat geantwortet und hat sich gleich entschlossen das zubeheben :-)



thanks for your comment on the ADC. I will change it for the next version.

mull
17.07.2007, 22:38
Hey Jungs, habt ihr ne Idee warum ich keine Kommunikation mit meinem TMC222 und dem Rn2560 aufbauenkann über I2C ?
Irgendwie kommt da gar nichts zurück :-(

Könnt ihr mir da helfen?
Schöne Grüsse

mull
15.02.2008, 14:19
Sorry Leute, bei meiner neuen Version ist das Problem immernoch nicht behoben.

Also habe ich das mit dem umschalten von Mux 0 auf Mux 1 genutzt und es funtioniert, aber ich kann nicht mehr zurückschalten, das ist jetzt ziemlich schlecht, was kann ich machen?

Grüssle , Michael

Steffen44
15.02.2008, 18:43
Welche Bascom Version und welcher Program Code ?

Gruß
Steffen

mull
18.02.2008, 14:59
Version war jetzt zuletzt 1.11.9.0 , habe nach langem romprobieren die alte Version wieder installiert und mit Mux5 gearbeitet,da es mir viel Nervenkrieg erspart.....

Der Bug scheint immernoch nicht vollständig gelöst zu sein. Kann hier heute Abend meinen Code noch angeben.

kaktus
18.04.2008, 11:30
So Leute, kämpfe mit dem gleiche Problem wie hier beschrieben, kann egal was ich mache nur adc 0-7 lesen.

Gibt es dafür schon ne Lösung?




$prog , 255 , &B11011001 , 'Quarz an / Teiler aus / Jtag aus

$regfile = "m2560def.dat"
$hwstack = 82 '80
$framesize = 68 ' 64
$swstack = 68 '44

$crystal = 16000000 'Quarzfrequenz

Config Pind.5 = Output
Led Alias Portd.5


$baud = 57600

Dim Kanal As Byte
Dim X As Word



'*** RS232 Protokoll ***

Const Tz = ","

' *** ADC ***
Config Adc = Single , Prescaler = Auto , Reference = Internal_1.1
Start Adc

'*** Hauptschleife ***

Do


Kanal = 0
Print "*" ; Tz;
Led = 0
Adcsrb.mux5 = 0
Waitms 100
For Kanal = 0 To 7
X = Getadc(kanal)
Print X ; Tz;
Next Kanal

Adcsrb.mux5 = 1
Kanal = 0
Waitms 100
For Kanal = 0 To 7
X = Getadc(kanal)
Print X ; Tz;
Next Kanal
Led = 1
Print "#" ; Tz



Loop
End

kaktus
20.04.2008, 21:25
Gibt es für diesen Fehler noch keine Lösung?

linux_80
20.04.2008, 23:54
Solange es von MCS kein Update gibt, gibts nur ein Workaround, nämlich den GetAdc selber proggen.

Hier nochmal warum es mit dem Workaround MUX5 setzen auch nicht mehr geht (in ASM):

'W = Getadc(10)
+000000AA: 9100007C LDS R16,0x007C ADMUX
+000000AC: 7E00 ANDI R16,0xE0 Bits 0-4 löschen
+000000AD: 9110007B LDS R17,0x007B ADCSRB
+000000AF: 7F17 ANDI R17,0xF7 MUX5 löschen
+000000B0: 600A ORI R16,0x0A Kanalnr. !!
+000000B1: 9310007B STS 0x007B,R17 ADCSRB
+000000B3: 9300007C STS 0x007C,R16 ADMUX
+000000B5: 940E00C8 CALL 0x000000C8 GETADC aufrufen
....
' GetADC
+000000C8: 9170007A LDS R23,0x007A ADCSRA
+000000CA: 6470 ORI R23,0x40 ADSC setzen
+000000CB: 9370007A STS 0x007A,R23 ADCSRA
+000000CD: 9000007A LDS R0,0x007A ADCSRA
+000000CF: FC06 SBRC R0,6 Skip if bit ADSC in register cleared
+000000D0: CFFC RJMP PC-0x0003 Relative jump

+000000D1: 9170007A LDS R23,0x007A ADCSRA
+000000D3: 6470 ORI R23,0x40 ADSC setzen
+000000D4: 9370007A STS 0x007A,R23 ADCSRA
+000000D6: 9000007A LDS R0,0x007A ADCSRA
+000000D8: FC06 SBRC R0,6 Skip if bit ADSC in register cleared
+000000D9: CFFC RJMP PC-0x0003 Relative jump

+000000DA: 91800078 LDS R24,0x0078 ADCL
+000000DC: 91900079 LDS R25,0x0079 ADCH
+000000DE: 9508 RET Subroutine return

Bei jedem GetADC wird MUX5 gelöscht, und immer noch die falsche KanalNr bei > 7 mitgegeben !

linux_80
21.04.2008, 00:21
Das muss einen neuen Post Wert sein :-)

Hab einen neuen Workaround gefunden !

Hier erstmal wieder der ASM Auszug:

W = Getadc(33)
+000000AA: 9100007C LDS R16,0x007C ADMUX
+000000AC: 7E00 ANDI R16,0xE0 Bits 0-4 löschen
+000000AD: 9110007B LDS R17,0x007B ADCSRB
+000000AF: 6018 ORI R17,0x08 MUX5 setzen, weil KanalNr >= 32
+000000B0: 6001 ORI R16,0x01 Kanalnr. 1 !! stimmt so !
+000000B1: 9310007B STS 0x007B,R17 ADCSRB
+000000B3: 9300007C STS 0x007C,R16 ADMUX
+000000B5: 940E00C8 CALL 0x000000C8 GETADC aufrufen

Erklärung:
Hab in der History zu 1.11.9.1 gefunden, das es ab jetz funktionieren soll :-k
dabei ist mir der Fehler* aufgefallen, es wird nicht die KanalNr geprüft, sondern nur der Wert der übergeben wird, und beim M2560 wird für KanalNr > 7 ein ADMUX-Wert von 32+x gebraucht !!

Und so gehts, wenn ein Kanal 8-15 gelesen werden soll, muss man das selber abfragen/ausrechnen, und dann mit GetADC(32+x) Aufrufen, dann wird das MUX5 richtig gesetzt !
Also Wert 32 entpsricht ADC-Kanal 8.

Edit:
\:D/

PS:
* mit Fehler ist Anwenderfehler gemeint :-$

kaktus
21.04.2008, 10:45
Danke ! War ein heiser Tipp.

Habe mir das Datenblatt nochmal angeschaut, erscheint mir jetzt auch als logisch was du da schreibst

100000 ADC8 entspricht DEZ 32
100001 ADC9
100010 ADC10
100011 ADC11
100100 ADC12
100101 ADC13
100110 ADC14
100111 ADC15 entspricht DEZ 39


Mit folgendem Bascom 1.11.9.1Code funktioniert es jetzt bei mir



$regfile = "m2560def.dat"
$hwstack = 82 '80
$framesize = 68 ' 64
$swstack = 68 '44

$crystal = 16000000 'Quarzfrequenz

Config Pind.5 = Output
Led Alias Portd.5


$baud = 57600
'Config Com4 = 115200 , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 , Clockpol = 0
'Open "com4:" For Binary As #4 'USB Buchse


Dim Kanal As Byte

Const Tz = "," ' Trennzeichen ist ein Komma

' *** ADC ***
Config Adc = Single , Prescaler = Auto , Reference = Internal_1.1
Start Adc

'*** Hauptschleife ***

Do

Print "*" ; Tz;
Led = 0

For Kanal = 0 To 15
If Kanal > 7 Then Kanal = Kanal + 24 ' Wegen Bascom 1.11.9.1 Bug notwendig
Print Getadc(kanal) ; Tz;
If Kanal > 7 Then Kanal = Kanal - 24 ' Wegen Bascom 1.11.9.1 Bug notwendig
Next Kanal

Led = 1
Print "#" ; Tz

Loop
End




man kann natürlich auch zwei getrennte Schleifen programmieren
For Kanal = 0 To 7
und
For Kanal = 32 To 39 ' = 8-15

Nochmal Danke und viel Spaß weiterhin