DMA传输数据的具体分析

2019-08-02 16:15发布

#include "msp430x54x.h"
//***********************************************************
const char testconst[6] = { 0x0, 0x3, 0x0, 0x3, 0x0, 0x3 };

void main(void)
{
      WDTCTL = WDTPW + WDTHOLD;                           //关看门狗
      P1DIR |= BIT1 + BIT0;                               // p1.1 p1.0输出
      DMACTL0 = DMA0TSEL_1;                               // CCR0 触发
      DMA0SA = (int )testconst;                           // Source 字地址
      DMA0DA =(int)&P1OUT;                                // 目的字地址
      DMA0SZ = 0x06;                                      //传输大小
      DMA0CTL = DMADT_4 + DMASRCINCR_3 + DMASBDB + DMAEN; // 重复字节传输
      //DMADT_4重复单次传输;DMASRCINCR_3目标地址增加;DMASBDB:字节传输;DMAEN;DMA使能
      TA0CTL = TASSEL_2 + MC_2 + TACLR;                   // SMCLK, 连续模式
      __bis_SR_register(LPM0_bits + GIE);                 // 进入 LPM0
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
meishizhaoshi
1楼-- · 2019-08-02 16:37
重复单次字节传输;在这个程序当中,传输大小为6,一次就把数组全部传给P1口吗?请路过的牛人,具体分析一下吧!非常感谢!
dirtwillfly
2楼-- · 2019-08-02 19:40

一周热门 更多>