硬件
1.硬件设计
在方案大致确定后,需要对芯片进行选型,对于常规电路,可通过查找芯片数据手册上的典型应用电路进行合理设计,也可通过在查找相关原理图和书籍进行合理设计。对于需要设计的电路,可先通过对芯片进行的选型,然后通过模拟软件进行模拟设计,模拟实现所需要的功能,这个过程可能需要反复进行,设计完成后需要进行电路搭建进行验证。
对于MCU的外围电路设计,需要考虑项目各模块所要实现的功能,结合MCU的数据手册,对MCU的资源进行合理运用,结合软件编程和硬件电路,对于引脚使用的进行考虑。
原理图设计上,一般分模块进行设计,需要考虑各个模块的功能。有正反方向的,需要进行防反接设计;有相邻接口的,需要考虑防错位设计。在电路上加上自恢复保险丝。
PCB绘制上,一般按照各模块功能进行合理布局,MCU尽可能的放置在电路板的中间位置。PCB绘制的常用要求:
- 电流流向芯片时,一般要先经过滤波电容,并且滤波电容要尽可能的靠近放置在芯片的电源端;
- 过孔的大小一般是线径的两倍;
- 对于高速信号线要进行等长处理,控制时序,同时要防止其他信号的干扰;
- 对于AGND和GND通常用一个0欧电阻进行连接;
- 为便于后期测试,可在相关位置放置测试点、0欧电阻等;
- 晶振下避免走线;
- 金手指范围内减少覆铜;
- 在隔离处理时,要不同地不同电源;
- 大功率电路和小功率电路分开;
接口设计和外壳设计
对于常见接口的选用,需要对方向、引脚定义、接口本身性能和接线端子的接线方式进行考虑。
对于专用接口的选用,主要考虑其功能要求。
对于自定义接口,需要考虑方向、引脚定义、放置位置。
对于外壳的设计,工业设计通常采用金属材料的外壳,可与大地进行共地处理。需要考虑其散热、形状、外壳的接口位置。
2.硬件焊接
焊接方式:可采用一边法或两边法。
先焊电源部分,在焊主芯片。
先焊贴片,在焊插件。
芯片焊完,焊电阻电容。
拆除元件:
插件:先吸下焊锡,再取下。
贴片:小型贴片直接吹下;大型贴片一边吹,一边翘起。
软件
1.程序框架设计
在嵌入式软件学习中,体会到,在编写程序前,需要对程序在框架上进行设计,合理运用程序语言,并按照一定的逻辑结构编写代码,以便后续的测试和维护。
在具体 *** 作中,需要考虑项目的整体要求,各模块所要实现的功能,需要用到的外设,梳理项目的运行逻辑,从主到次,从大到小,从浅到深。需要先进行初始化,再进行功能的实现。初始化又分为IO和外设的初始化、系统参数的初始化。在程序编写过程中,先将所有功能写出来,再将定义的功能一一实现,从大到小去写程序。在实现各个功能时,需要考虑函数的使用,宏的定义,结构体的运用,指针的使用。能够便于写出可移植程序,写出可移植函数,对于引脚的使用,尽量使用宏定义的方法,便于修改和移植。
2.程序调试
程序调试是在程序编写中共同进行的,也是测试和学习代码的手段。
出现错误问题时,根据提示进行解决。
程序死了:设置断点,进行排除。(入口参数错误、类型错误、硬件问题)
程序没有出现预想效果:可结合打印程序进行分析(类型错误、逻辑错误)。
硬件问题会导致软件问题,软件问题也可反映硬件问题,也存在编译器的问题,最好是用官方dome进行验证,使用最小核心板。
3.不同平台移植
不同平台移植,存在编写逻辑不同的问题,需要对两个平台有一定的了解,对项目内容有足够的了解。存在底层定义的问题,在面对此问题时,不改变函数名的情况,通过实现相同功能,能够相对快的解决好此问题,相对好修改的是函数封装的问题,只需要查找相同函数的进行替换即可。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)