A simple library to access the DMA functionality.

Fork of SimpleDMA by Erik -

Revision:
5:d9f46ef80e20
diff -r c3a84c6c432c -r d9f46ef80e20 SimpleDMA_common.cpp
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/SimpleDMA_common.cpp	Sat Jan 04 14:42:33 2014 +0000
@@ -0,0 +1,25 @@
+#include "SimpleDMA.h"
+
+void SimpleDMA::channel(int chan) {
+    if (chan == -1) {
+        auto_channel = true;
+        _channel = 0;
+    } else {
+        auto_channel = false;
+        if (chan >= 0 && chan < DMA_CHANNELS)
+            _channel = chan;
+        else
+            _channel = DMA_CHANNELS-1;
+    }
+}
+
+int SimpleDMA::getFreeChannel(void) {
+    int retval = 0;
+    while(1) {
+        if (!isBusy(retval))
+            return retval;
+        retval++;
+        if (retval >= DMA_CHANNELS)
+            retval = 0;
+    }  
+}
\ No newline at end of file