第一个问题:我买的是一块mini开发板,记得视频或者文档讲过,在mini 战舰开发板中这个串口实验的接收状态标记USART_RX_STA是8位的,但为什么在while循环中却是用USART_RX_STA&0x8000一个16位的相与,那这mini开发板中到底是8位的还是16位的?如果是8位只能计数64,16的话会2^14.
第二个问题:在串口实验程序main.c中,定义了u16 times=0,可是我不知道times这是什么意思,这是来对发送代码的次数进行计数吗?后面出现的
times++;
if(times%5000==0)
{
printf("
ALIENTEK MiniSTM32开发板 串口实验
");
printf("正点原子@ALIENTEK
");
}
if(times%200==0)printf("请输入数据,以回车键结束
");
if(times%30==0)LED0=!LED0;//闪烁LED,提示系统正在运行.
delay_ms(10);
}
对5000,200,30取余我又看不懂了,times是1,2,3,4……都不执行这些语句啊,可是问什么最后程序现实的时候会很快显示了呢?为什么是整除5000,200,30?
希望大家多帮帮我,适合初学者,在此谢谢大家了额!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>