Forum: Mikrocontroller und Digitale Elektronik PIC12F1501 beide interne DACs ansteuern


von xuckz (Gast)


Lesenswert?

Hi,

der PIC12F1501 
(http://ww1.microchip.com/downloads/en/DeviceDoc/40001615C.pdf) hat ja 2 
5-bit DAC Ausgänge. RA2 ansteuern funktioniert auch ohne Probleme mit 
folgendem code:

    TRISAbits.TRISA2 = 0; // set as output
    DAC_ANSEL = 0; // set as digital

    DACCON0bits.DACPSS = 0; //VDD ref
    DACCON0bits.DACOE2 = 1; //output 2 enable (RA2)
    DACCON0bits.DACEN = 1; //enable DAC

    DACCON1 = val; // set dac output valu (0-31)

Da ich allerdings gerne die doppelte Auflösung hätte würde ich gerne die 
2 DAC Ausgänge mixen.
Die Frage die sich mir nun stellt ist, kann ich beide DAC Ausgänge 
getrennt voneinander ansteuern, da der Ausgangslevel ja nur über DACCON1 
gesetzt wird?

Da es zu den internen DACs generell wenig infos gibt bin ich hier noch 
nicht fündig geworden. Warum sollten 2 DAC Ausgänge vorhanden sein wenn 
man diese nicht getrennt ansteuern kann?

Vielleicht kann mich hier jemand erleuchten. Danke!

von Stampede (Gast)


Lesenswert?

DACxCON0, DACxCON1 steht doch im Datenblatt, x = 0 oder 1. Damit 
solltest du beide DACs bespassen können

von xuckz (Gast)


Lesenswert?

Danke erstmal für die Antwort. Das Problem ist allerdings das es diese 
nicht gibt.

Es gibt DACCON0 und DACCON1 wobei ersteres für die Konfiguration und 
letzteres für Ansteuerung funktioniert.

Vielleicht fehlt mir hierfür auch ein include? Aktuell verwende ich nur 
den in MPLAP mitgeflieferten pic12f1501.h Header.

von Thomas E. (picalic)


Lesenswert?

xuckz schrieb:
> der PIC12F1501
> (http://ww1.microchip.com/downloads/en/DeviceDoc/40001615C.pdf) hat ja 2
> 5-bit DAC Ausgänge.

Der 12F1501 hat nur einen DAC. Diesen kannst Du wahlweise auf den einen 
oder den anderen der beiden Ausgänge, die dafür vorgesehen sind, 
schalten.

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
Noch kein Account? Hier anmelden.