黑金动力社区:http://www.heijin.org
一、 工程简介
即使BF531简单易用,但是由于其昂贵的开发工具,使很多初学者望而却步(此章有钱人可以绕道,哈哈)。作者去年接了一个项目,摸索出一套方便、廉价的BF531开发模式,这时本工程就迫不及待的诞生了。
MS531,取自于 Mini System BF531,即BF531 的最小系统。虽然是最小系统,但是五脏俱全,系统不但包含了电源管理、大容量存储,更包含了方便快捷的下载器。用户只需要一块9~24V直流电源,一个USB线即可做BF531开发,当然你得有电脑。图2-1 为MS531 系统的框图。
图2-1 系统框图
二、 资源介绍
MS531系统,定位为“体验”,所以没加什么冗余的功能,不过为了方便大家做实验,大部分硬件资源都用跳线扩展出来了。板子特征为:
- 紧凑设计,只比名片大一点点;
- 独立设计的下载系统,USB接口即插即用,速度快、效率高;提供 PC 机烧写程序,烧写过程中自动控制 BF531并在烧写完成后自动复位处理 器;具有USB连通和烧写指示 LED;
- 绿色电源:宽电压(9~24V)输入开关电源,效率高,不发热;
- 32MByte SDRAM,2M ByteFlash,加上400M的主频,轻松体验高速、大容量存储;
- 预留3.3V 电源和地外扩,方便做实验;
- SPI 接口引出;
- PPI 接口引出;
- PF0~11 接口引出;
- SPORT0 和 SPORT1 接口引出;
- T0~T2 定时器引脚引出;
- UART 接口引出,可通过转换板连接计算机。烧录Uboot 或 ucLinux后,可作为终端。
三、 SFL 下载器
SFL(Serial Flash Loader)下载器是利用 CH341H USB转SPI接口芯片为主控器,利用简单的逻辑控制,达到烧写SPI flash的目的。烧写完成后,程序可以立即执行。
SFL.exe图标如图所示: 。它是用GCC的windows移植版本 Mingw32 开发的基于命令行的软件,软件支持整片擦除、文件烧写、特定扇区烧写等功能。如果嫌繁琐,可以写个批处理文件完成一系列的操作,当然也可以集成在Visual DSP++ IDE内,达到编译后立即烧写的目的。软件源代码清晰易懂,并且开源,大家可以在这个基础上增加支持的芯片。
加入把软件 SFL.exe拷贝到 D:盘根目录,我们可以从命令行操作它。点击“开始”-“运行”,输入 CMD.EXE 后,我们就得到了命令行窗口。
键入 D: ,在 D 盘下找到 SFL.EXE。
键入 sfl --help 后,得到软件的一些编译日期信息以及简单的帮助。
键入 sfl --version 后,得到软件的版本。
如果我们要烧写一个由 Visual DSP++生成的 .ldr 二进制文件,可以先把它拷贝到 D:盘根目录下,然后键入下面的命令。
软件分别把 SPI flash的 ID号,文件大小均打印出来。并先擦除扇区、然后写入最后再校验,分三步完成一次烧写。具体擦除哪个扇区,是由起始扇区和文件大小决定的,用户不用考虑此问题。
如果用户需要下载一个汉字库到第20个扇区,用来被程序调用,我们可以采取如下的方法:
如果要全部擦除,需要这样操作。整片擦出是个漫长的过程,大概需要十几秒,当然每种芯片需要的时间都不一样。
附录:
MS531 板子靓照