简单整理下固件、烧写的定义以及烧写过程的几种方式。 一、什幺是烧写(下载)和固件
嵌入式系统需要预先将程序写入ROM/FLASH中,在启动时载入运行这些程序,将已经生成的程序写入ROM/FLASH的过程叫做烧写。这样固化在存储介质上的文件叫固件(firmware)。那幺烧写即为更新固件的过程。
二、常用的几种烧写方式
把系统当做一个存储区域进行烧写;
采用专门接口及专用的下载线将程序烧写到固件中。这时CPU除了执行单片机本身的指令之外,还能执行对存储器进行操作的特殊指令,擦除、烧写和校验指令。先通过传输相应的指令给CPU执行(擦除、读入、烧写、校验等),这样完成烧写。现在普遍使用的JTAG仿真器也是这样,CPU能执行JTAG的特殊指令,完成对固件的烧写操作。 引导程序,即单片机中已经存在了一个烧写程序。启动单片机时首先运行这程序,程序判断端口状
态,识别为烧写的特殊状态,就从某个端口读取数据,然后写入到存储单元中。如果是正常的状态,就转到用户的程序开始执行。需要触发硬件选择用户程序模式还是烧写模式。