20220331嵌入式学习心得总结

硬件

        1.硬件设计

在方案大致确定后,需要对芯片进行选型,对于常规电路,可通过查找芯片数据手册上的典型应用电路进行合理设计,也可通过在查找相关原理图和书籍进行合理设计。对于需要设计的电路,可先通过对芯片进行的选型,然后通过模拟软件进行模拟设计,模拟实现所需要的功能,这个过程可能需要反复进行,设计完成后需要进行电路搭建进行验证。

对于MCU的外围电路设计,需要考虑项目各模块所要实现的功能,结合MCU的数据手册,对MCU的资源进行合理运用,结合软件编程和硬件电路,对于引脚使用的进行考虑。

原理图设计上,一般分模块进行设计,需要考虑各个模块的功能。有正反方向的,需要进行防反接设计;有相邻接口的,需要考虑防错位设计。在电路上加上自恢复保险丝。
PCB绘制上,一般按照各模块功能进行合理布局,MCU尽可能的放置在电路板的中间位置。PCB绘制的常用要求:

  1. 电流流向芯片时,一般要先经过滤波电容,并且滤波电容要尽可能的靠近放置在芯片的电源端;
  2. 过孔的大小一般是线径的两倍;
  3. 对于高速信号线要进行等长处理,控制时序,同时要防止其他信号的干扰;
  4. 对于AGND和GND通常用一个0欧电阻进行连接;
  5. 为便于后期测试,可在相关位置放置测试点、0欧电阻等;
  6. 晶振下避免走线;
  7. 金手指范围内减少覆铜;
  8. 在隔离处理时,要不同地不同电源;
  9. 大功率电路和小功率电路分开;

接口设计和外壳设计

对于常见接口的选用,需要对方向、引脚定义、接口本身性能和接线端子的接线方式进行考虑。

对于专用接口的选用,主要考虑其功能要求。

对于自定义接口,需要考虑方向、引脚定义、放置位置。

对于外壳的设计,工业设计通常采用金属材料的外壳,可与大地进行共地处理。需要考虑其散热、形状、外壳的接口位置。

        2.硬件焊接

焊接方式:可采用一边法或两边法。

                  先焊电源部分,在焊主芯片。

                  先焊贴片,在焊插件。

                  芯片焊完,焊电阻电容。

拆除元件:

        插件:先吸下焊锡,再取下。

        贴片:小型贴片直接吹下;大型贴片一边吹,一边翘起。

软件

        1.程序框架设计

        在嵌入式软件学习中,体会到,在编写程序前,需要对程序在框架上进行设计,合理运用程序语言,并按照一定的逻辑结构编写代码,以便后续的测试和维护。

        在具体操作中,需要考虑项目的整体要求,各模块所要实现的功能,需要用到的外设,梳理项目的运行逻辑,从主到次,从大到小,从浅到深。需要先进行初始化,再进行功能的实现。初始化又分为IO和外设的初始化、系统参数的初始化。在程序编写过程中,先将所有功能写出来,再将定义的功能一一实现,从大到小去写程序。在实现各个功能时,需要考虑函数的使用,宏的定义,结构体的运用,指针的使用。能够便于写出可移植程序,写出可移植函数,对于引脚的使用,尽量使用宏定义的方法,便于修改和移植。

        2.程序调试

程序调试是在程序编写中共同进行的,也是测试和学习代码的手段。

出现错误问题时,根据提示进行解决。

程序死了:设置断点,进行排除。(入口参数错误、类型错误、硬件问题)

程序没有出现预想效果:可结合打印程序进行分析(类型错误、逻辑错误)。

硬件问题会导致软件问题,软件问题也可反映硬件问题,也存在编译器的问题,最好是用官方dome进行验证,使用最小核心板。

        3.不同平台移植

不同平台移植,存在编写逻辑不同的问题,需要对两个平台有一定的了解,对项目内容有足够的了解。存在底层定义的问题,在面对此问题时,不改变函数名的情况,通过实现相同功能,能够相对快的解决好此问题,相对好修改的是函数封装的问题,只需要查找相同函数的进行替换即可。

你可能感兴趣的:(嵌入式硬件)