16F1509 ramp generator using the internal 5-bit DAC

Posted on Tuesday, April 22nd, 2014 in PIC by DP


Charles Douvier of PNW/Electronics writes:

Turns out the DAC is probably the easiest peripheral I’ve used on the PIC. It took me longer to wait for the PICKit to update from 18F configuration to 16F. BUT.. if you’re having issues.. here you go:
A simple voltage follower (or however you want to buffer the output) is needed on the DAC output. It’s not designed to drive anything.
Don’t expect screaming speeds out of this thing…it’s just not going to happen. I ran mine up to 1.3KHz, which is more than enough for what I’m trying to accomplish. If you put an A/D converter in you could use that to control your ramp speed and you’d have yourself a nice driver for your VCO input on test equipment with properly conditioned output.

This entry was posted on Tuesday, April 22nd, 2014 at 7:00 pm and is filed under PIC. You can follow any responses to this entry through the RSS 2.0 feed. You can skip to the end and leave a response. Pinging is currently not allowed.

One Response to “16F1509 ramp generator using the internal 5-bit DAC”

  1. KH says:

    I feel very uneasy with the “Don’t expect screaming speeds” bit.

    The PIC16F1509 data sheet gives the max settling time of the DAC as 10us. Yet the writer is talking about ~1kHz speeds. He should take a long, hard look at the LM358 data sheet. We’re talking about maybe (TI’s LM358A) 0.3V/us at unity gain and… wait for it… a load of 1M ohm! Load the thing and… ouch. I’m sure a few FET switches and a resistive string can go faster than a few kHz.

Leave a Reply

Notify me of followup comments via e-mail. You can also subscribe without commenting.

Recent Comments

  • ian: No, that's exactly how it should be :) Sorry about missing names on comments, the theme is being reworked as we speak.
  • J. Peterson: Nice writeup. It looks like some of the formatting for your command examples needs some missing newlines?
  • Geert Jordaens: I'm not sure what kind of licensing I have to add since it is a fairly straight forward implementation of the adaptive Huffman Decoding. For...
  • erich: For anyone interested, I've added some c++ code for adaptive huffman decoding in the git repository.
  • Sjaak: I would add some more protection in the used trigger file (on the serverpilot site) then not using a standard name :) hopefully they use...