TI中文支持网
TI专业的中文技术问题搜集分享网站

TM4C123GXL用串口DMA不同时间发送不同帧数据问题

现在在写串口2用DMA发送数据 要求是在主程序不同位置发送不同的数据 但是在配置串口DMA时有个函数 uDMAChannelTransferSet这个函数不仅配置时要用到 串口中断里也要用到 它里面有个数据源指针指向要发送的数据 难道我发送不同的数据每次都要重新配置下指针吗?那中断里的指针怎么自动更改啊?

还有 我用串口2的DMA 但是只有UDMA_CHANNEL_UART0TX和UDMA_CHANNEL_UART1TX 没有串口2的发送通道啊 要自己在函数库里面加吗?

xyz549040622:

问题1,你发送不同的数据,肯定要重新指定数据源指针的,不然他怎么知道你要发送什么数据呢。

问题2 ,有串口2的DMA的发送通道的,UDMA_CH13_UART2TX,UDMA_CH12_UART2RX,UDMA_CH0_UART2RX,UDMA_CH1_UART2TX。UART2的DMA可以配置为通道0和1,通道12和13的。

user5813287:

回复 xyz549040622:

对于问题1 我看的官方例程里地址是固定的 是在DMA初始化里面uDMAChannelTransferSet就固定好地址了的 我要用多个地址的话难道要重复初始化?这个函数在初始化里面调用了一次 在串口中断里面又调用了一次 两次调用都是同一个地址
问题2 后来我用uDMAChannelAssign指定了一个通道 但问题1一直没解决 也不知道有没有用
官方例程是乒乓模式 现在我收发的一帧数据最多也就25个字节 是不是用基本模式就可以了?

赞(0)
未经允许不得转载:TI中文支持网 » TM4C123GXL用串口DMA不同时间发送不同帧数据问题
分享到: 更多 (0)