一般刚拿到手中的板子是没有程序的,此时需要向板子里面烧写程序。常见的方法如下:
1、通过UART
如STC51单片机,Hi3518等片子,是通过UART进行烧写程序的,烧写时需要配合厂商提供的相应的PC机烧写软件。
2、通过USB烧写
与UART相似,只是比UART烧写速度快得多。
3、通过JTAG烧写
需要使用专用的JTAG工具与上位机配合。
4、通过SWIO烧写
需要相应的烧写工具配合。
5、通过SD卡进行烧写
系统支持从SD卡进行启动,启动时将SD卡文件复制到RAM中,然后运行这一小段程序,这一小段程序就可以用来烧写到板子上的FLASH上。
6、通过专用的烧录器进行烧写。
这个是适用于大批量生产时,一次可以同时烧录成百片。
我在工厂产线上看到,工人将一个一个的FLASH放置在烧录器上,然后压紧治具,在电脑上一点上位机,就完成了所有的片子烧写。
下面着重说一下SD卡烧写
开发时,SD卡主要用来烧写U-boot,烧写完U-boot后,就用UBOOT来烧写内核、文件系统。
使用SD卡烧写的方式,前提是SOC支持SD卡启动,SOC上电开机后,能从SD卡中加载固件并运行。
1、制做SD启动卡;
2、将卡启动UBOOT烧入SD卡分区中。
此时是将SD卡看做一个FLASH来使用,直接使用裸数据写入。SOC启动后,从自动从这里复制数据到IRAM,并运行;