HAllo, ich habe ein Problem, wie so viele die hier posten! ich benutze einen PIC18F2585 und bräuchte das CCP-Modul. Ist auch vorhanden, allerdings habe ich im Datenblatt feststellen müssen, dass das CCPR1L und CCPR1H-Register nicht existiert in genanntem Prozessor. (Finde ich schon echt seltsam) Wie kann ich trotzdem die CCP-Funktion benutzen ohne sie selbst über einen Timer zu machen. Wird vielleicht ein anderes Register stattdessen benutzt? Oder wie bekomme ich es hin ohne nen interrupt dafür zu benutzen ??? vielen Dank schon mal im voraus Gruß Holger
noch nen Nachschlag: im PIC-Simulator der MPLAB-IDE werden die beiden Register jedoch angezeigt (nur der Compiler kennt sie nicht)
Was hast Du denn für einen Compiler? Entweder sind die Register in der 18F2585.h definiert oder der Zugriff kann über Sonderfunktionen erfolgen. Zur Not definierst Du dir die Register eben selbst.
Danke hmm, auf der Homepage von HTSOFT gibt es ein Update, mal schaun was das bringt. Aber seltsam ist es trotzdem, dass im Datenblatt drinsteht, dass die beiden Register gar nicht implementiert sein sollen. Ich bin schon fast der meinung dass das wohl ein Druckfehler ist, da an anderen Stellen kein Vermerk ist, dass das Register nicht existiert.
Warum sollten die Register nicht implementiert sein? CCPR1H=0x0FBF CCPR1L=0x0FBE jedenfalls nach meinem Datenblatt. Wo hast Du denn das gefunden?
Datei 39625b.pdf (Datenblatt für 18F2585/2680/4585/4680) Seite 173 ist allerdings wohl die einzige Stelle an der die Fußnote angegeben ist !
Da hast Du wohl eine andere Datei wie ich. Du kannst davon ausgehen, dass es ein Fehler ist.
Hallo Holger, wo steht denn da genau, dass CCPR1L/H nicht existieren? Der 18F2585 hat laut Datenblatt nur einen CCP, keinen ECCP (wie die die PIC18F4X8X). Die Register CCPR1L/H gehören aber zum CCP1 und sind auch vorhanden. Da der Comiler sie nicht kennt, wird entweder ein falsches Headerfile verwendet oder das des 18F2585 fehlerhaft (ein Fall für HI-Tech). Sieh' doch mal im Headerfile nach, ob da Zeilen wie static volatile unsigned char CCPR1L @ 0x0FBF; static volatile unsigned char CCPR1H @ 0x0FBE; vorhanden sind. Andreas
Direkt von der microchip-homepage(z.B.) hier der Link: http://ww1.microchip.com/downloads/en/DeviceDoc/39625b.pdf dann Seite 173 direkt neben CCPR1L/H steht die Fußnote und darunter der Hinweis 1: These registers are unimplemented on PIC18F2X8X devices. na das sagt doch alles oder ? Danke Andreas, siehe erster Post offensichtlich haben sie es korrigiert, aber ich habe da noch ein kleines Probl. jetzt mit dem Linken
Holger, genau das Datenblatt habe ich auch, aber ich habe verstanden: Auf Datenblatt-Seite 173. Du meintest aber PDF-Seite 173, das ist Datenblatt-Seite 171. Da ich die Datenblätter meist in gedruckter Form habe, sehe ich natürlich die PDF-Seiten nicht. Andreas
Ja, sorry soviel Papier um mich rum, da kann ich nicht vernünftig arbeiten :-)
Das ist ein Schreibfehler. Wie Andreas schon gesagt hat betrifft das nur die ECCPXX-Register.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.