F103平台USART1 DMA模式发送数据失败,可DMA中断有效

2019-07-14 15:52发布

Dear 大侠,小弟刚学习STM32遇到一个问题: STM32F103平台 串口1 DMA模式发送数据失败,但是DMA发送完成中断有效。中断部分的打印函数有得到执行。。。。我搞了几天了,都没搞明白问题出在哪里。请大侠帮忙看看我的代码错在哪里。
求大侠抽空帮忙扫一下代码。。。。多谢多谢


如下是我的代码
main函数部分
#include "stm32f10x.h"
#include "rcc.h"
#include "led.h"
#include "usart1.h"

extern u8 SendBuff[SENDBUFF_SIZE];
u16 i;

int main(void)
{
//
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
14条回答
taozhen
1楼-- · 2019-07-14 21:02
 精彩回答 2  元偷偷看……
taozhen
2楼-- · 2019-07-14 21:29
中断部分

void DMA1_Channel4_IRQHandler(void)
{       
//判断是否为DMA发送完成中断
   if(DMA_GetFlagStatus(DMA1_FLAG_TC4)==SET)
   {  
   //LED关闭  

//                LED_OFF;
        printf(" this is a demo ");       
        printf("The value is %d ",SendBuff[1]);       
        printf("The value is %d ",SendBuff[80]);
         
        DMA_ClearFlag(DMA1_FLAG_TC4);
        }       
}
小点zze
3楼-- · 2019-07-14 22:21
我没有看到串口引脚配置,是不是在USART1_CFG();里面时钟没有打开,或者引脚配置不对?
jerry181855
4楼-- · 2019-07-15 02:15
应该不难,仔细debug一下吧
陈囝囝100
5楼-- · 2019-07-15 04:00
taozhen
6楼-- · 2019-07-15 05:25
 精彩回答 2  元偷偷看……

一周热门 更多>