PIC32MK用DMA方式进行UART数据收发遇到问题

2019-03-25 18:42发布

我把DMA配置好了,UART也配置好了,使用非DMA方式收发都没有问题,都能进TX和RX的中断,后来改成DMA方式,无任何反应,下面是我的配置代码和数据发送代码,师傅们帮我看看   以下是配置UART的代码部分

    U1MODEbits.PDSEL  = 0;//8位数据,无奇偶校验
    U1MODEbits.STSEL  = 0;//一个停止位
    U1MODEbits.UEN    = 0;
    U1STAbits.URXEN   = 0;//接收器使能
    U1STAbits.UTXEN   = 0;//发送器使能
    U1STAbits.UTXISEL = 1;
    U1STAbits.URXISEL = 0;
    U1STAbits.UTXINV  = 0;
    U1STAbits.UTXBRK  = 0;
    U1MODEbits.BRGH   = 1;//高速模式
    U1BRG             = 14;//波特率2000000
    U1MODEbits.ON     = 1;



   以下是数据发送代码
   for(i=0;i<8;i++)
          {
             Tx_Data[i] = i;
          }
          DCH0SSIZ            = 8;
          DCH0SSA             = &Tx_Data[0];

          DCH0DSIZ            = 8;
          DCH0DSA             = &U1TXREG;

          DCH0CSIZ            = 8;
          DCH0ECONbits.CHSIRQ = 40;
          DCH0CONbits.CHEN    = 1;//使能CH0
          DCH0ECONbits.CFORCE = 1;//强制DMA
此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
1条回答
asdmaill
1楼-- · 2019-03-26 04:41
问题找打了,是源大小,目标大小设置出了问题,一直没时间来结帖子,希望我遇到的问题对大家有用

一周热门 更多>