Pagina 1 di 1

Configurazione PLL PIERIN PIC18

MessaggioInviato: 12 giu 2013, 22:11
da michper1
Buonasera a tutti!
Sono, grazie a quel grande Uomo dal nickname Foto UtenteTardoFreak, un felice e fortunato possessore di una scheda PIERIN PIC18. Premetto che è la prima volta che lavoro con i PIC.
Leggendo il datasheet e confrontando le informazioni in esso contenute con il template creato ad hoc per la suddetta scheda mi sono imbattuto in una (sicuramente apparente) contraddizione.
La frequenza del quarzo è 12 MHz e la frequenza che deve arrivare al PLL è 4 MHz. Quindi la prima deve essere divisa per 3. Sul datasheet (pag. 41, tabella 3-5) la divisione per tre, per mezzo dei bit PLLDIV[2:0] viene codificata come 101, mentre nel file di configurazione compare l'assegnazione PLLDIV = 3.
Come avvengono queste assegnazioni? In teoria per configurare il registro non avrei dovuto assegnare a PLLDIV 5 (101)?

Grazie a tutti!
O_/

Datasheet

Re: Configurazione PLL PIERIN PIC18

MessaggioInviato: 12 giu 2013, 22:21
da TardoFreak
Se hai MPLAB e vai nella sezione HELP trovi, selezionando "topics->Language tools" un documento che tratta solo della configurazione dei micro che si chiama "PIC18 config settings". Illustra tutti i parametri possibili per le configurazioni delle opzioni di tutti i micro.
Le direttive
Codice: Seleziona tutto
#pragma config
sono una semplificazione che permettono allo sviluppatore di evitare di pensare ai bit dei registri di configurazione impostando in modo, diciamo, discorsivo le varie opzioni.
Quindi non vi è corrispondenza fra l' opzione selezionata dalla direttiva #pragma e l' effettiva configurazione dei bit. L' opzione PLLDIV = 2 potrebbe significare una qualsiasi e strana configurazione dei bit ma è un lavoro che fa, appunto, la direttiva #pragma per gli affari suoi.
La cosa singolare è che questa facilitazione non esiste, ad esempio, per la famiglia PIC24!

Ma con PIERIN si lavora con i PIC18, abbiamo la vita semplificata e ... ce ne facciamo una ragione. :mrgreen:

Re: Configurazione PLL PIERIN PIC18

MessaggioInviato: 12 giu 2013, 22:36
da rusty
L'assegnazione del tipo PLLDIV = X non è una assegnazione del tipo binario (per intenderci) ma una assegnazione di option (option config).
Quando si tratta del file di config praticamente non stai assegnando dei valori a dei tipi, ma delle opzioni a dei parametri. Infatti le opzioni accettate da PLLDIV sono 8: {1,2,3,4,5,6,10,12}, l'opzione qui è proprio il divisore del clock del quarzo, quella lista di valori sono piu' delle etichette che dei valori assegnati.
Tutto questo per "facilitare" l'utente, con assegnazioni mnemoniche per le option config O_/

Re: Configurazione PLL PIERIN PIC18

MessaggioInviato: 12 giu 2013, 22:51
da michper1
Grazie a entrambi!
Avendo MPLAB X sto cercando nell'help il documento, per ora senza risultato... Devo prenderci un po' la mano!

Edit: Trovato ora! Perfetto mi stavo già complicando la vita... :D Grazie mille ancora a tutti!