Versão atual 13-12-2013.

Dependencies:   EthernetInterface mbed-rtos mbed

Committer:
rebonatto
Date:
Fri Dec 13 11:45:06 2013 +0000
Revision:
1:238ac24e46dd
Parent:
0:65c41a68b49a
Atual 13-12-2013.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
rebonatto 0:65c41a68b49a 1 /*
rebonatto 0:65c41a68b49a 2 * dma.h
rebonatto 0:65c41a68b49a 3 *
rebonatto 0:65c41a68b49a 4 * Created on: 03/07/2011
rebonatto 0:65c41a68b49a 5 * Author: francisco
rebonatto 0:65c41a68b49a 6 */
rebonatto 0:65c41a68b49a 7 #ifndef DMA_H
rebonatto 0:65c41a68b49a 8 #define DMA_H
rebonatto 0:65c41a68b49a 9
rebonatto 0:65c41a68b49a 10 #define DMA_MEMORY -1
rebonatto 0:65c41a68b49a 11
rebonatto 0:65c41a68b49a 12 #define DMA_PERIPHERAL_SSP0_TX 0U
rebonatto 0:65c41a68b49a 13 #define DMA_PERIPHERAL_SSP0_RX 1U
rebonatto 0:65c41a68b49a 14 #define DMA_PERIPHERAL_SSP1_TX 2U
rebonatto 0:65c41a68b49a 15 #define DMA_PERIPHERAL_SSP1_RX 3U
rebonatto 0:65c41a68b49a 16 #define DMA_PERIPHERAL_ADC 4U
rebonatto 0:65c41a68b49a 17 #define DMA_PERIPHERAL_I2S0 5U
rebonatto 0:65c41a68b49a 18 #define DMA_PERIPHERAL_I2S1 6U
rebonatto 0:65c41a68b49a 19 #define DMA_PERIPHERAL_DAC 7U
rebonatto 0:65c41a68b49a 20 #define DMA_PERIPHERAL_UART0_TX 8U
rebonatto 0:65c41a68b49a 21 #define DMA_PERIPHERAL_UART0_RX 9U
rebonatto 0:65c41a68b49a 22 #define DMA_PERIPHERAL_UART1_TX 10U
rebonatto 0:65c41a68b49a 23 #define DMA_PERIPHERAL_UART1_RX 11U
rebonatto 0:65c41a68b49a 24 #define DMA_PERIPHERAL_UART2_TX 12U
rebonatto 0:65c41a68b49a 25 #define DMA_PERIPHERAL_UART2_RX 13U
rebonatto 0:65c41a68b49a 26 #define DMA_PERIPHERAL_UART3_TX 14U
rebonatto 0:65c41a68b49a 27 #define DMA_PERIPHERAL_UART3_RX 15U
rebonatto 0:65c41a68b49a 28
rebonatto 0:65c41a68b49a 29 #define DMA_MEMORY_TO_MEMORY 0U
rebonatto 0:65c41a68b49a 30 #define DMA_MEMORY_TO_PERIPHERAL 1U
rebonatto 0:65c41a68b49a 31 #define DMA_PERIPHERAL_TO_MEMORY 2U
rebonatto 0:65c41a68b49a 32 #define DMA_PERIPHERAL_TO_PERIPHERAL 3U
rebonatto 0:65c41a68b49a 33
rebonatto 0:65c41a68b49a 34 #define DMA_DEST_SIZE(n) (n<<15)
rebonatto 0:65c41a68b49a 35 #define DMA_SRC_SIZE(n) (n<<12)
rebonatto 0:65c41a68b49a 36
rebonatto 0:65c41a68b49a 37 #define DMA_SRC_WIDTH_BYTE (0U<<18)
rebonatto 0:65c41a68b49a 38 #define DMA_SRC_WIDTH_HALFWORD (1U<<18)
rebonatto 0:65c41a68b49a 39 #define DMA_SRC_WIDTH_WORD (2U<<18)
rebonatto 0:65c41a68b49a 40
rebonatto 0:65c41a68b49a 41 #define DMA_DST_WIDTH_BYTE (0U<<21)
rebonatto 0:65c41a68b49a 42 #define DMA_DST_WIDTH_HALFWORD (1U<<21)
rebonatto 0:65c41a68b49a 43 #define DMA_DST_WIDTH_WORD (2U<<21)
rebonatto 0:65c41a68b49a 44
rebonatto 0:65c41a68b49a 45 #define DMA_SRC_INCREMENT (1U<<26)
rebonatto 0:65c41a68b49a 46 #define DMA_DST_INCREMENT (1U<<27)
rebonatto 0:65c41a68b49a 47
rebonatto 0:65c41a68b49a 48 #define DMA_TC_INT (1U<<31)
rebonatto 0:65c41a68b49a 49
rebonatto 0:65c41a68b49a 50 #ifdef __cplusplus
rebonatto 0:65c41a68b49a 51 extern "C" {
rebonatto 0:65c41a68b49a 52 #endif
rebonatto 0:65c41a68b49a 53
rebonatto 0:65c41a68b49a 54 typedef struct
rebonatto 0:65c41a68b49a 55 {
rebonatto 0:65c41a68b49a 56 unsigned long int sourceAddr;
rebonatto 0:65c41a68b49a 57 unsigned long int destAddr;
rebonatto 0:65c41a68b49a 58 unsigned long int nextNode;
rebonatto 0:65c41a68b49a 59 unsigned long int dmaControl;
rebonatto 0:65c41a68b49a 60 } dmaLinkedListNode;
rebonatto 0:65c41a68b49a 61
rebonatto 0:65c41a68b49a 62 extern void init_dma(void);
rebonatto 0:65c41a68b49a 63 extern void setup_channel(dmaLinkedListNode* pList,int ch,int src,int dst);
rebonatto 0:65c41a68b49a 64 extern void stop_channel(void);
rebonatto 0:65c41a68b49a 65
rebonatto 0:65c41a68b49a 66 #ifdef __cplusplus
rebonatto 0:65c41a68b49a 67 }
rebonatto 0:65c41a68b49a 68 #endif
rebonatto 0:65c41a68b49a 69
rebonatto 0:65c41a68b49a 70 #endif //#define DMA_H