Hallo, ich habe einen dsPIC30F6010A und will den internen FRC oszillator mit PLL x16 verwenden. Wenn man im CCSC compiler als FUSE FRC_PLL16 eingibt kommt folgender Fehler: "The configuration bits are invalid and might cause problems if programmed. do you want them to set them to the default value?" config field FOSFPR yes / no" bei "no" bleibt bleibt PLL deaktiviert, bei "yes" tut sich nichts. D.h. will ich die Register selbst setzen. OSCCON ist eine 16 bit register. Im Datenblatt http://ww1.microchip.com/downloads/en/devicedoc/70150a.pdf auf S.155 steht folgendes: "To write to the OSCCON high byte, the following instructions must be executed without any other instructions in between: Byte Write “0x78” to OSCCON high Byte Write “0x9A” to OSCCON high" Meine Frage: wie kann ich von einem 16 Bit Register nur das high byte beschreiben? danke, lg clemy
entweder einzeln mittels Bitmanipulation: http://www.mikrocontroller.net/articles/Bitmanipulation oder im Endeffekt das gleiche einfach eine |= OSCCON |= 0b1111000000000000; // = 0x78 im high byte ich tu noch bisschen rumschauen - mit << und >> kann man da sicherlich auch was machen.
danke für deine hilfe, leider funktioniert es so nicht. kann es sein das folgende deklaration richtig ist: #word OSCCON = 0x0742 //Oscillator Control Register #byte OSCCONL = 0x0742 #byte OSCCONH = 0x0743 Da im p30f6010A.inc file folgendes steht: .equiv OSCCONL, _OSCCON .equiv OSCCONH, _OSCCON+1 lg clemy
die lösung: ccsc compiler auf 4.111 updaten und unter #fuses FRC_PLL16 schreiben. so simpel... lg
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.