Bei 30 MIPS ist der im Datenblatt angegebene maximale Wert von 25ns in jedem Fall zu hoch für aufeinanderfolgende Schreibzugriffe auf einzelne Bits des Portregisters, da das Auslenen zu Beginn des Instruction Cycles stattfindet und das Schreiben am Ende. Effektiv vergehen zwischen Schreiben und Lesen nur etwa 8,3ns - 16,7ns (1* oder 2*t_osc).
So etwas hatte ich mir schon fast gedacht. Nur hatte ich bei den PIC16er damals (bis vor vier Jahren) das Problem nur wenn richtige Lasten an den Pin hingen. Dort bin ich zwar auf die LAT gekommen, aber diese Dinge nach all den AVRs und M16C/M32C total wieder vergessen. So hatte ich das Silizium in Verdacht - ganz klar nicht zuende gedacht. Dabei sind die meisten Fehler bei einem Selber zu suchen.
Im übrigen muss ich die Errata-Politik von Microchip loben. Ständig bekomme ich von denen Meldungen über Änderungen oder bekannte Fehler. Das vermisse ich bei Atmel. Selbst einen Siliziumfehler den ich bei einer Datecodereihe der Mega32er fand (und der wurde von Atmel zugegeben; die tauschten die 100 Stück) taucht nirgendwo auf. Zwei Wochen habe ich mich mit dem Teil abgeplagt und alle Bemühungen hineingesteckt, dass ich nicht den Lauten mache und am Ende ist es ann doch mein Fehler. Daher war ich wohl auch beim dsPIC ein wenig zu schnell beim Silizium...
Meine IDE ist sehr flexibel, es ist der Visual Slick Edit.
Ich hoffe es werden deutlich mehr, die sich für den dsPIC erwärmen.
Hälge