通信协议相关
SPI协议有效数据如何计算
无起始位和停止位,bytes/s = (bit/s) / 8
IIC协议有效数据如何计算
IIC数据帧结构: 1bit的Start信号+7bit的地址位+1bit的读写位+1bit的应答位+数据+数据/(单次数据长度) bit的应答位+1bit的终止位
传输速率为 bytes/s = (bit/s) / (11+datalength/singledatalength) *datalength /8
USRT协议有效数据计算
异步串口,1位奇偶校验位,1位起始位,1位终止位,数据位为8位
传输速率为 bytes/s = (bit/s) /(1+1+1+datalength) *8 /8
操作系统相关
Rtos的优点,或者说为什么要使用操作系统
裸机系统的缺点
1、并发性:程序并发工作效率低
在写裸机软件时,不可避免的在主程序中会有一个超级大的 while(1) 循环,这里面几乎包含整个项目的所有业务逻辑。因为每个业务逻辑里面都会有 delay 这样的循环等待函数,这样导致了所有的业务逻辑几乎都是串行起来工作的。而且由于大部分单片机为单核单线程单片机,无法多线程工作。
2、实时性:功能复杂的情况下,实时性无法保证
软件的实时性在一些领域会有一定的要求,软件的每个步骤必须在指定的时间被触发。工控领域就是最常见到的场景,如果实时性无法保证,机械设备可能就无法按照指定时序要求去动作,以至于发生机械事故,甚至会威胁到人的生命。回过来接着看裸机软件,如果软件变得庞大以后,可以想象到,主程序中那么大的一个 while(1) 循环,代码耦合严重,到处都是 delay 延时,要保证实时性几乎是不可能的。
Rtos操作系统的优点
1、实时性:
RTOS具有快速响应外部事件的能力,能在确定的时间内对外部事件作出反应,非常适合需要实时控制的场景。
2、可靠性:
RTOS通过优先级调度和资源管理,减少了任务冲突和资源争用的可能性,提高了系统的稳定性。
3、可预测性:
RTOS的任务调度和时间管理使得任务执行时间可预测,便于系统设计和优化。
4、多任务支持:
RTOS能够同时管理多个任务,提高了系统的并发处理能力。
5、系统结构更清晰:
当代码量较大时,RTOS提供一个稳定的、结构清晰的框架,方便后续的开发与维护。
6、模块化和高内聚:
使用RTOS写任务可以做到更加模块化,高内聚,低耦合,有利于代码的学习和技术提升。
硬件相关
PCBLayout:
电容摆放原则:干路电源到大电容,再到小电容,再到IC管脚
按照4分之1波长来计算,当电容的摆放位置距离需要去耦的IC的管脚刚好是4分之1波长的时候,电容的信号噪声电流和补偿电流的相位差为180°,这个时候电容失效,也就是说如果你要保证电容的去耦效果,要求电容摆放位置距离去耦IC管脚的位置<1/10的4分之1波长,也就是考虑40分之1波长),0.1uF的电容按照40分之1波长来算,去耦半径都有12英寸,而0.01uF的都达到了3.9英寸左右。也就是说,0.1uF的电容的去耦半径,往往比你想象中要大得多。所以,在考虑焊接的方便性上,电容的布局位置可以折中。
电流线宽问题:
PCB的载流能力取决与以下因素:线宽、线厚(铜箔厚度)、容许温升。PCB走线越宽,载流能力越大。