EB-SAM9G45裸机程序下载方法

时间:2023-03-08 17:20:05
EB-SAM9G45裸机程序下载方法

开发板:EB-SAM9G45

这里提供一种裸程序下载的方法。

在官方提供的下载方法中有手动下载和自动下载,它们都离不开SAM-BA软件,而该软件使用比较麻烦,而且操作不当很容易导致电脑蓝屏,还有一个很大的缺点是,每次他都将裸机程序烧写到NANDFLASH当中,容易导致NANDFLASH出现坏块。

一种新的方法:

l 安装SAM-BA软件

l 断开JP2跳线,复位开发板。

l 点击“开始”->“所有程序”->ATMEL Corporation -> AT91-ISP v1.13 -> SAM-BA v2.9打开SAM-BA软件,弹出下图所示对话框(在这之前需要安装SAM-BA以及插上USB

线):

EB-SAM9G45裸机程序下载方法

然后点击Connect,显示下图所示的界面:

EB-SAM9G45裸机程序下载方法

l 连接跳线JP2

用SAM-BA下载程序的步骤如下:

① 使能NandFlash

点击上图所示的NandFlash选项卡,显示如下图所示:

EB-SAM9G45裸机程序下载方法

在Scripts列表框中选择Enable NandFlash,然后点击Exectue使能NandFlash。

② 烧写 nandflash_at91sam9g45ekes.bin

注意:这个时候下载到NandFlash中的nandflash_at91sam9g45ekes.bin文件是为了引导应用程序,把0x20000地址处的258KB的内容从NandFlash中复制到DDRAM中运行。(这是因为系统在运行时自动把NandFlash最前面几KB的数据复制到DDRAM中运行)

在Scripts列表中选择Send Boot File,如下图所示:

EB-SAM9G45裸机程序下载方法

然后点击Execute按钮,出现下图所示对话框:

EB-SAM9G45裸机程序下载方法

从中选择SAM-BA目录下的nandflash_at91sam9g45ekes.bin文件即可。

③ 烧写 u-boot.bin

EB-SAM9G45裸机程序下载方法

至此,大部分工作已经做完,此外,还需要配置uboot的环境变量,并且uboot的可以ping通主机,并且uboot通过tftp命令可以从主机上下载镜像。

在主机上开启tftp服务,虚拟机里的tftp服务的安装和开启方法这里不做介绍,只介绍windows下面的tftp服务器设置,这里用到的软件叫做Cisco TFTP Server。设置好tftp服务器的根目录,如F:\TFTP-Root,将裸机程序(如buzzer.bin)放到F:\TFTP-Root下,打开putty,启动开发板,进入uboot环境,因为这个开发板的SDRAM的物理地址起始地址是0x70000000,所以执行:

tftp 0x70000000 buzzer.bin

go 0x70000000

然后裸机程序就跑起来了,并且省去了对NANDFLASH的写操作,以后就不再需要SAM-BA软件了。

EB-SAM9G45裸机程序下载方法

我的问题:为什么必须是0x70000000?

go 命令是如何实现的?

buzzer.bin的内容格式是什么?