UART的RX工作中处于输入状态, 为了避免 RX 无连接(或接触不良)下, 不定电平的噪声导致输入乱码等问题, 加上拉可以确定电平.
为什么是上拉而不是下拉, UART的协议规定 RX输入信号中, 以低电平脉冲(下降沿)作为数据接收的开始. 所以上拉可以保持 RX 无数据接收的状态.
数据校验:
在有效数据之后,有一个可选的数据校验位。由于数据通信相对更容易受到外部干扰导致传输数据出现偏差,可以在传输过程加上校验位来解决这个问题。校验方法有奇校验 (odd)、偶校验(even)、 0 校验 (space)、 1 校验 (mark) 以及无校验 (noparity)。
奇校验要求有效数据和校验位中“1”的个数为奇数,比如一个 8 位长的有效数据为: 01101001,此时总共有 4 个“1”,为达到奇校验效果,校验位为“1”,最后传输的数据将是 8 位的有效数据加上 1 位的校验位总共 9 位。
偶校验与奇校验要求刚好相反,要求帧数据和校验位中“1”的个数为偶数,比如数据帧: 11001010,此时数据帧“1”的个数为 4 个,所以偶校验位为“0”。
0 校验是不管有效数据中的内容是什么,校验位总为“0”, 1 校验是校验位总为“1”。
中断优先级:
1.高优先级的抢占优先级是可以打断正在进行的低抢占优先级中断的。 如,A的抢占优先级设置为0,B的抢占优先级设置为1。则A可以打断B的中断。(数字越小级别越高)
2.响应优先级只有在抢占优先级相同的情况下才有作用。抢占优先级相同的中断,高响应优先级不可以打断低响应优先级的中断。
3.抢占优先级相同的中断,当两个中断同时发生的情况下,哪个响应优先级高,哪个先执行。
4.如果两个中断的抢占优先级和响应优先级都一样的话,则看哪个中断先发生就先执行。
中断分组号与优先级个数关系:
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置nvic中断分组为2,组号相当于可以设置2的组号次方个抢占优先级,
//从占优先级个数为2的4-组号次方个(即与抢占优先级互补)所以这里抢占优先级和从占优先级都可以设置4个