2019-07-21 00:27发布
www88988 发表于 2019-5-11 09:46 你那个 USART1_SendOneChar(uchar ch) 函数可这么写 USART1_SendOneChar(uchar ch) {
最多设置5个标签!
5楼大哥你好,我按照你说的单独测试了串口输出:
以下是主函数实验程序:[mw_shl_code=cpp,true]int main()
{
u16 i,j,k,color;
SysTick_Init(72);
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //中断优先级分组 分2组
LED_Init();
USART1_Init(115200);
for(i=0;i<240;i++)
{
USART1_SendStr("L");//列有效
for(k=0;k<320;k++)
{
color=0x9EF7;
//printf("%04X", color);//打印一列的颜 {MOD},以 结尾
//已修改:单独发送字符
USART1_SendOneChar('9');
USART1_SendOneChar('E');
USART1_SendOneChar('F');
USART1_SendOneChar('7');
}
UART_Put_Num(i); //这个用来输出当前i的计数值
USART1_SendStr(" ");
}
}[/mw_shl_code]
以下是串口发送一个字符程序:(已修改)
[mw_shl_code=applescript,true]int USART1_SendOneChar(uchar ch) {
//USART1->SR;
//USART_ClearFlag(USART1,USART_FLAG_TC); //发送完成,tc位自动置1
USART_SendData(USART1,(u8)ch);
while (USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET){}
return (ch);
}[/mw_shl_code]
串口初始化函数中,也已经注释掉USART_ITConfig(USART1, USART_IT_RXNE, ENABLE);//开启相关中断
串口助手里收到数据,还是会有丢失,比如前一次是i=4的时候,下一次就变成了i=6了,中间i=5的数据不知道去哪里了。
以下是串口助手收到的部分情况。
一周热门 更多>