MCU 软件烧录及升级说明
术语
ROM
Read Only Memory
RAM
Random Access Memory
ECU
Electronic Control Unit
OBD
On Board Diagnostics
OTA
Over The Air Technology
IDE
Integrated Development Environment
概述
MCU也称为单片微控器,属于一种集成式电路芯片,主要包含CPU、只读存储器ROM和随机存储器RAM等。程序存储在ROM中,当系统上电时,CPU从ROM的起始地址读取到指令开始执行。ROM可以使其存储的数据固定不变,即使断电也能够保留数据,根据功能类型主要分为PROM、EPROM、EEROM、Flash ROM等几类。
软件烧录
MCU中Flash ROM在出厂时是空白的,需先将程序烧录到芯片中才可以正常运行。软件开发过程中通常使用MCU配套的IDE及调试器进行烧录,使用协议有SWD、JTAG等。完成程序开发后,可以直接使用数据文件(S19、HEX等)进行批量烧录,如下图:
软件升级
在装车完成后出现测试问题或软件需求出现变更,需要通过外部工具进行软件升级。除了部分安装在外部的ECU可以通过SD卡、USB等方式进行软件升级,其它车身内部的ECU通常使用OBD端口升级或者云服务器OTA远程升级。
软件烧录描述
系统描述
程序经过IDE编译生成目标代码,想要进行对MCU的软件调试,就必须使用调试器将目标代码下载到MCU中。在体系结构上MCU与PC机是完全相同的,也包括中央处理器,输入输出接口,存储器等基本单元,因而与PC机等设备的软件结构也是类似的。但是由于应用场合问题,MCU不具备标准的输入输出装置,受存储空间限制,也难以容纳用于调试程序的专用软件 。
不同的芯片有各自的调试器,例如Microchip芯片有ICD3,NXP芯片有PE,Infineon 芯片有MINIWIGGLER等,如下图: