打印

STM32F103C6T6的串口发送出现奇怪问题!

[复制链接]
1847|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yuchl|  楼主 | 2011-10-9 13:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
STM32F103C6T6的串口发送出现奇怪问题!与CC2530通讯是能收到数据,但发送的数据有几个字节是错误的,好奇怪!而且无法用DMA发送,最奇怪的是,程序下载完成后。用锂电池供电,运行指示灯正常闪烁。但串口则没有数据(用示波器测试),连接JTAG就有数据。超级奇怪!
DMA配置:
    DMA_DeInit(DMA1_Channel2);
    DMA_InitStructure.DMA_PeripheralBaseAddr = (u32)SRC_USART1_DR;
    DMA_InitStructure.DMA_MemoryBaseAddr = (u32)&USARTSendBuff;
    DMA_InitStructure.DMA_DIR = DMA_DIR_PeripheralDST;
    DMA_InitStructure.DMA_BufferSize = Len;
    DMA_InitStructure.DMA_PeripheralInc = DMA_PeripheralInc_Disable;
    DMA_InitStructure.DMA_MemoryInc = DMA_MemoryInc_Enable;
    DMA_InitStructure.DMA_PeripheralDataSize = DMA_PeripheralDataSize_Byte;
    DMA_InitStructure.DMA_MemoryDataSize = DMA_MemoryDataSize_Byte;
    DMA_InitStructure.DMA_Mode = DMA_Mode_Normal;
    DMA_InitStructure.DMA_Priority = DMA_Priority_Medium;
    DMA_InitStructure.DMA_M2M = DMA_M2M_Disable;
    DMA_Init(DMA1_Channel2, &DMA_InitStructure);
   
    USART_DMACmd(USART1, USART_DMAReq_Tx, ENABLE);
    // Enable DMA1 channel2
    DMA_Cmd(DMA1_Channel2, ENABLE);
沙发
yuchl|  楼主 | 2011-10-10 15:13 | 只看该作者
DMA是通道选择错误,但连接JLINK则串口TX有波形,否则没有波形让人很崩溃啊!

使用特权

评论回复
板凳
香水城| | 2011-10-10 15:46 | 只看该作者
请确认初始化外挂外设时,这些外设已经上电就绪,通常MCU上电比外设的上电速度快很多。

使用特权

评论回复
地板
xukong| | 2011-10-12 17:11 | 只看该作者
连接JTAG后能正常工作,不连接则工作异常,通常是复位信号引起的,建议你查看一下你的复位电路,这个问题已经有好些朋友碰到过了。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

165

主题

722

帖子

2

粉丝