aboutsummaryrefslogtreecommitdiffstats
path: root/notes
diff options
context:
space:
mode:
authorbnewbold <bnewbold@robocracy.org>2010-08-07 20:29:37 -0400
committerbnewbold <bnewbold@robocracy.org>2010-08-07 20:29:37 -0400
commit7b391d7f76a2d56242420c560d65f00a60f78682 (patch)
tree8fb56b1ba9fb8fe557a5159407275ecfdd764e72 /notes
parent314846bee32479f8fd6aae46c508fdc7ff8e0a95 (diff)
downloadlibrambutan-7b391d7f76a2d56242420c560d65f00a60f78682.tar.gz
librambutan-7b391d7f76a2d56242420c560d65f00a60f78682.zip
basic working dac implementation
Diffstat (limited to 'notes')
-rw-r--r--notes/dac.txt32
1 files changed, 32 insertions, 0 deletions
diff --git a/notes/dac.txt b/notes/dac.txt
new file mode 100644
index 0000000..9df0782
--- /dev/null
+++ b/notes/dac.txt
@@ -0,0 +1,32 @@
+
+DAC notes (for maple native and other "high density" STM32 devices)
+-------------------------------------------------------------------------------
+There is an ST application note for the DACs; it provides a lot of context but
+doesn't help setup the peripheral very much.
+
+For the first code iteration we'll just use 12-bit right-aligned single writes,
+so use DAC_DHR12Rx
+
+Once data is loaded into the digital registers, there are a number of possible
+triggers to start conversion to analog output: external interrupts, software
+control, and timer events. We'll just use software triggering for now.
+
+There is (obviously) DMA support for DAC output.
+
+There are noise output and triangle wave output features with variable
+amplitude.
+
+There are many additional modes to tigger output to both channels at the same
+time.
+
+Buffering will be enabled by default.
+
+TODO
+-------------------------------------------------------------------------------
+- sine wave demo using Timer interrupts
+- wirish implementation
+- documentation
+- higher performance modes?
+- signal quality testing
+- DMA output
+