Intern og Xtal-oscillator samtidig i en Microchip PIC12F629

Et spørgsmål til PIC-processor eksperterne.

Jeg har disassembleret hexfilen til en lille pejlesender der har været i CQDL for godt 4 år siden, men undrer mig over om det er muligt at bruge den interne 4MHz oscillator til at clocke Timer-0 med samtidig med at et krystal i XT-oscillator mode clocker processoren? - eller om den istedet kører hele processoren på den interne 4MHz generator og bruger Xtal-oscillatoren til styresender ?? (Det første synes muligt ifg databladet men ikke det sidste)

Forhistorien er at jeg for en måned siden på en tur med en masse andre radioamatører kom til at lege med senderen og konstaterede problemer med at programmere kredsen og få den til at virke. RETLW OSCCAL instruktionen i toppen af programhukommelsen har nok været gået tabt på nogle af de kredse der blev prøvet med og så går de sandsynligvis i uendeligt loop. Jeg blev interesseret i problemet og har efterfølgende disassembleret programmet og mangler sådan set kun at forstå den interruptdrevne timing funktion fuldt ud.

Nogen der kan hjælpe mig med at opklare mysteriet?

Hex-filen er Minifux3.hex på linket

formatting link

/Lars

Reply to
Lars Peter Larsen
Loading thread data ...

"Lars Peter Larsen" skrev i en meddelelse news:4a415072$0$48236$ snipped-for-privacy@news.sunsite.dk...

Kunne du godt programmere kredsen eller var der slet ingen kontakt ?

Kender ikke rigtigt til Microchip,men vi bruger nogle ST kredse, og fjumrer man med optionbittene, ryger den interne oscillator og så man er nødt til at clocke eksternt på det ene X-tal ben, indtil man har fået sat options til intern oscillator igen.

mvh JBH

Reply to
JBH

Jeg prøvede ikke selv men kiggede på ud af øjenkrogen da jeg var igang med noget andet. mine venner havde deres problemer med at programmere den og endnu mere med at få den til at virke. Der for blev jeg interesseret i hele pejlesenderkonstruktionen og disassemblerede hexfilen da vi kun har den. Jeg er bekendt med at visse kalibreringsværdier er lagret i Flashprommen og bliver slettet når man sletter hele kredsen. Jeg har mistanke om de har slettet nogle af kredsene inden de har forsøgt at programmere og så er RETLW OSCCAL gået fløjten og den bruges i langtids timer funktionen i programmet. Er den erstattet med en NOP går processoren i et uendeligt loop under initialiseringen

Det er derfor jeg søger lidt præcis information om hvorvidt begge oscillatorer kan bruges samtidig og hvordan.

Jeg har faktisk aldrig selv prøvet at skrive et PIC-program fra grunden

- ej heller at programmere en kreds - men da jeg lever af at programmere er det ikke det store problem at forstå assemblerkoden og chippens arkitektur og finde hovsa'er og smart eller usmart kode, men derfor er der alligevel områder hvor jeg kommer til kort uden lidt input som f.eks om clock-oscillatorerne.

Som jeg skrev er XT-oscillatoren valgt i konfigurationen mens Timer0 bliver clocket af den interne 4MHz oscillator.

/Lars

Reply to
Lars Peter Larsen

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.