|
本帖最后由 emwin 于 2021-7-31 17:31 编辑
- #include <stdio.h>
- #define DMA_DMAIF_TCIF0 100
- #define DMA_DMAIF_TEIF0 200
- #define UART4_RXDMA_CH_NUM 0 /*"!!!!串口配置的DMA通道号!!!!"*/
- #define UART4_RX_DMA_CH_TXIF(num) DMA_DMAIF_TCIF##num
- #define UART4_RX_DMA_CH_TEIF(num) DMA_DMAIF_TEIF##num
- int main()
- {
- printf("%d, %d", UART4_RX_DMA_CH_TXIF(0), UART4_RX_DMA_CH_TEIF(0));
- return 0;
- }
复制代码 我想简化切换DMA通道的代码修改,改UART4_RXDMA_CH_NUM。怎么让UART4_RX_DMA_CH_TXIF(UART4_RXDMA_CH_NUM)得到DMA_DMAIF_TCIF0?
已解决:
- #include <stdio.h>
- #define DMA_DMAIF_TCIF0 100
- #define DMA_DMAIF_TEIF0 200
- #define UART4_RXDMA_CH_NUM 0 /*"!!!!串口配置的DMA通道号!!!!"*/
- #define UART4_RX_DMA_TCIF(x) PARAM_TC(x)
- #define UART4_RX_DMA_TEIF(x) PARAM_TE(x)
- #define PARAM_TC(num) DMA_DMAIF_TCIF##num
- #define PARAM_TE(num) DMA_DMAIF_TEIF##num
- int main()
- {
- printf("%d %d", UART4_RX_DMA_TCIF(UART4_RXDMA_CH_NUM), UART4_RX_DMA_TEIF(UART4_RXDMA_CH_NUM));
- return 0;
- }
复制代码
|
|