int main(void)
{
u16 i = 0;
u16 Time_10ms = 0;
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //设置NVIC中断分组2:2位抢占优先级,2位响应优先级
Led1_Init();
Uart4_Init(115200);
Time2_Init(10);
MYDMA_Config(DMA1_Channel4,(u32)&UART4->DR,(u32)UART4SendBuf,UART4_SEND_QUEUE_LENGTH);
for(i=0; i<UART4_SEND_QUEUE_LENGTH; i++)
UART4SendBuf[i] = 0x55;
USART_DMACmd(UART4,USART_DMAReq_Tx,ENABLE); //使能串口4的DMA发送
MYDMA_Enable(DMA1_Channel4); //开始一次DMA传输!
while(1)
{
Time_10ms ++;
USART_DMACmd(UART4,USART_DMAReq_Tx,ENABLE); //使能串口4的DMA发送
MYDMA_Enable(DMA1_Channel4); //开始一次DMA传输!
while(1)
{
if(DMA_GetFlagStatus(DMA1_FLAG_TC4)!=RESET) //判断通道4传输完成
{
DMA_ClearFlag(DMA1_FLAG_TC4);//清除通道4传输完成标志
break;
}
}
Led1_Reverse(1000, Time_10ms); // 运行灯
while((TIM2->SR&0X0001) == 0);
TIM2->SR&=~(1<<0);
}
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>