hmm was meinst du mit fixen string??
Das "?" wird natürlich einfach ausgegeben.
Wenn ich mit ~pot0~ etwas ausgebe funktioniert es auch, aber eben nur
statisch. An AN0 hängt bei mir nen Temp.sensor dran, deswegen scheinen
mir Werte für ~pot0~ zwischen 3 ung 6 nicht gerade plausibel. Klar muss
der Wert dann noch an die Geradengleichung angepasst werden.
Aber das ist ja nicht das Problem. Ich muss erstmal die dynamische
Anzeige des Potis hinkriegen. Was genau meinst Du mit fixen Strings,
Stampede?
Das Problem ist das für den PIC24E keine Voreinstellungen vorhanden sind
und ich nicht sicher bin ob ich die ADC initialisierungen richtig
gemacht habe:
Für den PIC33F und PIC24H heisst es ja beispielsweise im Code:
1 | // ADC
|
2 | AD1CHS0 = 0; // Input to AN0 (potentiometer)
|
3 | AD1PCFGLbits.PCFG5 = 0; // Disable digital input on AN5 (potentiometer)
|
4 | AD1PCFGLbits.PCFG4 = 0; // Disable digital input on AN4 (TC1047A temp sensor)
|
Diese Kommandos gibt es beim PIC24E aber nicht:
ich habe (siehe oben) einfach folgendes gemacht:
1 | // ADC
|
2 | ANSELBbits.ANSB0 = 1; // AN0 isanalog
|
3 | TRISBbits.TRISB0 = 1; //input
|
4 | AD1CON1 = 0x84E4; // Turn on, auto sample start, auto-convert, 12 bit mode (on parts with a 12bit A/D)
|
5 | AD1CON2 = 0x0404; // AVdd, AVss, int every 2 conversions, MUXA only, scan
|
6 | AD1CON3 = 0x1003; // 16 Tad auto-sample, Tad = 3*Tcy
|
7 | AD1CSSL = 1<<5; // Scan pot
|
Der Ansel Befehl setzt BO (da ist AN0 dran) als analogen Input, sollte
also dem Befehl vom PIC24H
1 | AD1CHS0 = 0; // Input to AN0 (potentiometer)
|
gleichgestellt sein.
1 | AD1CSSL = 1<<5; // Scan pot
|
ist dann wohl das gleiche wie
und scannt den Ausgang AN0. Ich hoffe das man das so machen kann, habe
da aber noch keine Erfahrungen mit dem ADC, bzw. dem PIC24E. Vielleicht
liegt der Fehler auch wonanders????