Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

problemi dac interno pic16f1773

Tipologie, strumenti di sviluppo, hardware e progetti

Moderatore: Foto UtentePaolino

0
voti

[1] problemi dac interno pic16f1773

Messaggioda Foto Utentelorenzo01 » 17 ott 2019, 20:00

ciao, ho bisogno di realizzare un dispositivo in grado di generarmi forme d'onda sinusoidali, precisamente 3 sinusoidi sfasate di 120 gradi.
l'idea è quella di utilizzare un sistema a microcontrollore con un DAC a 8 bit che sono più che sufficienti per l'utilizzo che devo farne; la scelta è ricaduta sul pic16f1773 un microcontrollore che dispone al suo interno di 6 dac: 3 da 5 bit e 3 da 10 bit.
montato su breadboard e interfacciato con il programmatore pickit3 mi cimento a fare un programma di prova che deve restituirmi un valore in tensione
Codice: Seleziona tutto
#include <xc.h>

#define _XTAL_FREQ 20000000

void main()
{   
       DAC1CON0 = 11110000;  //accendo dac e setto le uscite e vref+ e vref-
    while(1)
    {
        DAC1REF = 1111111111;   //valore valore analogico
    }
}

qualcuno sa identificare il problema? premetto che il compilatore non da errori e il programma viene correttamente caricato sul uc la il valore analogico sul pin di uscita del dac risulta 0
vi ringrazio in anticipo
Ultima modifica di Foto UtentePaolino il 21 ott 2019, 12:03, modificato 1 volta in totale.
Motivazione: Ho inserito il codice nei tag CODE
Avatar utente
Foto Utentelorenzo01
5 2
 
Messaggi: 7
Iscritto il: 16 ott 2019, 16:37

0
voti

[2] Re: problemi dac interno pic16f1773

Messaggioda Foto Utentemarioursino » 20 ott 2019, 16:59

Senza aver visto il ds, direi che manca almeno l'impostazione dei TRIS. Sei sicuro che l'impostazione della periferica sia così semplice?

Per ora stai impostando un valore costante senza nessun delay, è quello che volevi fare?
Avatar utente
Foto Utentemarioursino
3.742 3 9 13
G.Master EY
G.Master EY
 
Messaggi: 1344
Iscritto il: 5 dic 2009, 4:32

0
voti

[3] Re: problemi dac interno pic16f1773

Messaggioda Foto UtentePaolino » 21 ott 2019, 12:05

Non hai inserito una parte di configurazione del micro, in particolare l'oscillatore. Non basta infatti dichiarare la frequenza con
Codice: Seleziona tutto
#define _XTAL_FREQ 20000000


devi prima di tutto impostare i registri dell'oscillatore.

Cosa usi? Oscillatore interno? Quarzo esterno?

Ciao.

Paolo.
"Houston, Tranquillity Base here. The Eagle has landed." - Neil A.Armstrong

-------------------------------------------------------------

PIC Experience - http://www.picexperience.it
Avatar utente
Foto UtentePaolino
32,0k 8 12 13
G.Master EY
G.Master EY
 
Messaggi: 4201
Iscritto il: 20 gen 2006, 11:42
Località: Vigevano (PV)

0
voti

[4] Re: problemi dac interno pic16f1773

Messaggioda Foto Utentelorenzo01 » 24 ott 2019, 21:49

Paolino ha scritto:Non hai inserito una parte di configurazione del micro, in particolare l'oscillatore. Non basta infatti dichiarare la frequenza con
Codice: Seleziona tutto
#define _XTAL_FREQ 20000000


devi prima di tutto impostare i registri dell'oscillatore.

Cosa usi? Oscillatore interno? Quarzo esterno?

Ciao.

Paolo.

in realtà li ho configurati correttamente in maniera che utilizzando un quarzo esterno da 20 MHz tutto funzioni correttanente
Avatar utente
Foto Utentelorenzo01
5 2
 
Messaggi: 7
Iscritto il: 16 ott 2019, 16:37

0
voti

[5] Re: problemi dac interno pic16f1773

Messaggioda Foto Utentelorenzo01 » 24 ott 2019, 21:51

marioursino ha scritto:Senza aver visto il ds, direi che manca almeno l'impostazione dei TRIS. Sei sicuro che l'impostazione della periferica sia così semplice?

Per ora stai impostando un valore costante senza nessun delay, è quello che volevi fare?

stando al datasheet vi è solo quel registro li di configurazione
Avatar utente
Foto Utentelorenzo01
5 2
 
Messaggi: 7
Iscritto il: 16 ott 2019, 16:37

0
voti

[6] Re: problemi dac interno pic16f1773

Messaggioda Foto UtenteEcoTan » 24 ott 2019, 22:31

Riporto un esempio di configurazione (per un'altra MCU):
DAC1CONbits.DACFDIV = 6;// DAC clock 160/(6+1)MHz,22857/256=89kS/sec
DAC1STATbits.ROEN = 1; //Right Chan DAC Out Enabled PIN23 12 sul connettore
DAC1STATbits.LOEN = 1; //Left Chan DAC Out Enabled PIN25 12 sul connettore
DAC1CONbits.DACEN = 1; //DAC1 Module Enabled
poi per portare i campioni in uscita c'è un accodamento che non ho mai capito bene.
Avatar utente
Foto UtenteEcoTan
5.498 4 10 13
Expert EY
Expert EY
 
Messaggi: 3356
Iscritto il: 29 gen 2014, 8:54

0
voti

[7] Re: problemi dac interno pic16f1773

Messaggioda Foto UtentePaolino » 25 ott 2019, 8:43

lorenzo01 ha scritto:in realtà li ho configurati correttamente in maniera che utilizzando un quarzo esterno da 20 MHz tutto funzioni correttanente


Puoi postare il codice completo, allora?
"Houston, Tranquillity Base here. The Eagle has landed." - Neil A.Armstrong

-------------------------------------------------------------

PIC Experience - http://www.picexperience.it
Avatar utente
Foto UtentePaolino
32,0k 8 12 13
G.Master EY
G.Master EY
 
Messaggi: 4201
Iscritto il: 20 gen 2006, 11:42
Località: Vigevano (PV)


Torna a Realizzazioni, interfacciamento e nozioni generali.

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite