Gast
#3812734
Hallo Leute, Ich möchte alle 8 Pins (singleended) von Port A digitalisieren. Für die Umsetzung möchte ich keinen Freerun-Modus verwenden sondern die Digitalisierung selber triggern. Momentan benutze ich eine 4 Channel-Pipeline. Jeder Channel ist einem anderen Pin zugewiesen (CH0 = PORTA.0, CH1 = PORTA.1 usw.). Wenn ich die Digitalisierung der 4 Channel starte und solange warte bis die Interruptflags aller 4 Channel den Zustand 1 besitzen dann lese ich die Werte aus dem Ergebnisregister aus. Dies funktioniert auch bereits schon gut. Jedoch wenn ich die 4 Channels nach dem Auslesen der Ergebisse umstelle um dann die anderen 4 Pins (PORTA.4 bis PORTA.7) zu digitalisieren, dann erhalte ich fehlerhafte Werte. Dies ist leider reproduzierbar. Muss ich eine Wartezeit einhalten wenn ich die MUX umstelle? Ich habe leider keine Informationen dazu im Datenblatt gefunden. Den Quellcode habe ich beigefügt.