Für dieses Forum muß Javascript im Browser aktiviert werden!
Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C2 Quellcode formatieren: <code>Quellcode</code> ASM Quellcode formatieren: <asm>Quellcode</asm> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! > Hat jemand eine Antwort, vielleicht die Programmierer des OS (mafoe) oder das CTC? > > Das Handbuch der C Control 2 Unit sagt auf Seite 32 im Kapitel A/D-Ports: > > ... Das Betriebssyszem nimmt im Hintergrund ständig A/D Wandlungen vor. Zur Reduzierung von Störeinflüssen werden die Spannungssignale durch eine gleitende Mittelwertbildung gefiltert. ... > > Das disassemblierte OS von Eric Hospel zeigt aber folgenden Code zur A/D Wandlung: > > 0x1690: MOV [-R0],R6VM_GET_ADC_PORT > 0x1692: MOV R14,#0xa > 0x1694: MOV R13,#0x0 > 0x1696: AND R12,#0x7 alles ausblenden ausser Kanalnummer > 0x1698: MOV R15,#0x1 > 0x169a: SHL R15,R12 > 0x169c: OR P5DIDIS,R15 > 0x16a0: ADD R12,#0x100 !!!! Fixed Channel Single Conversion !!!! > 0x16a4: MOV ADCON,R12 > 0x16a8: MOVB RL6,#0x0 > 0x16aa: JMPR cc_UC,0x16c0 > 0x16ac: BSET ADSTStart conversion > 0x16ae: JB ADBSY,0x16aeWait until ready > 0x16b2: MOV R12,ADDATRead a/d result > 0x16b6: AND R12,#0x3ff > 0x16ba: ADD R13,R12 > 0x16bc: BCLR ADST > 0x16be: ADDB RL6,#0x1 > 0x16c0: MOVBZ R12,RL6 > 0x16c2: CMP R12,R14 > 0x16c4: JMPR cc_SLT,0x16ac > 0x16c6: MOV R4,R13 > 0x16c8: MOV MDL,R4 > 0x16cc: DIVU R14 > 0x16ce: MOV R4,MDL > 0x16d2: MOV R6,[R0+] > 0x16d4: RETS > > Laut OS-Auszug wird also eine Einzelwandlung bei jedem Aufruf von ports.adc(channel); ausgeführt, und das Ergebnis unmittelbar zurückgegeben. Das deckt sich auch mit meinen Beobachtungen. > > Cris