Gast
#2294372
Hallo,
zur Erklärung: Ich nutze einen atxmega16d4 und messe einen Eingang, ich
habe 30 Geräte. die Messkurve entspricht bei etwa der hälfte einer
Geraden. Aber bei der anderen kommen Ausschläge zu stande.
Die Ausprägungen sind sehr unterschiedlich. Ich vermute es liegt an der
Kalibration, die scheint nicht zu funktionieren. in der Headerdatei habe
ich bisher nur den ADC ergänzt (bug). Gibt es auch zum Thema Kalibration
beim atx16d4 einen bug ?
Mit dem avrisp mkII kann ich die Kalibrationsbytes auslesen, leider
stehen diese immer bei 0x0444, darum nehme ich an, dass diese nicht
übernommen werden,
Zum COde:
ADCA.CALL=read_calibration_byte(PROD_SIGNATURES_START+ADCACAL0_offset);
ADCA.CALH=read_calibration_byte(PROD_SIGNATURES_START+ADCACAL1_offset);
....
uint8_t read_calibration_byte( uint8_t index )
{
uint8_t result;
/* Load the NVM Command register to read the calibration row. */
NVM_CMD = NVM_CMD_READ_CALIB_ROW_gc;
result = pgm_read_byte(index);
/* Clean up NVM Command register. */
NVM_CMD = NVM_CMD_NO_OPERATION_gc;
return( result );
}
Leider bringt auch der direkte Eintrag nicht viel: Keine Verbesserung
oder Verschlechterung, auch das auslesen mit avrstudio4 + mkII bringt
immernoch 0x0444
Kurz vor dem aktivieren des adc´s nutze ich die calibration.
Kann mir jemand hierbei helfen, vielleicht korrekte io Headerdatei zum
atxmega1d4 ? danke.


