2024年9月1日发(作者:肇冬梅)
FS44B0X开发板使用手册 V3.0
FS44B0X开发板使用手册
深圳市优龙科技有限公司 2005-3-1
第一章 FS44B0X开发套件的组成...................................................................................................................- 4 -
1.1开发套件所提供的硬件详细清单.....................................................................................................- 4 -
1.2 开发套件所提供的软件详细清单....................................................................................................- 5 -
1.3 板上接口和资源清单........................................................................................................................- 6 -
1.4 板上硬件资源分配列表....................................................................................................................- 6 -
1.4.1 系统片选及地址空间............................................................................................................- 6 -
1.4.2 中断分配...............................................................................................................................- 6 -
1.4.3 系统板设定:........................................................................................................................- 7 -
1.5 板上接口和指示灯功能说明............................................................................................................- 7 -
1.5.1 接口板...................................................................................................................................- 7 -
第二章 系统硬件描述.....................................................................................................................................- 8 -
2.1板上的电源电路................................................................................................................................- 8 -
2.2 复位电路...........................................................................................................................................- 8 -
2.3 CPU单元............................................................................................................................................- 9 -
2.4 SDRAM电路......................................................................................................................................- 10 -
2.- 11 -
2.6 RTL8019网络接口电路...................................................................................................................- 12 -
2.7 USBDEVICE(PDIUSBD12)接口电路..............................................................................................- 13 -
2.8 异步串口接口电路.........................................................................................................................- 14 -
2.9 LCD接口电路..................................................................................................................................- 14 -
2.10 IIS音频输出和放大电路.............................................................................................................- 15 -
2.11 按键、蜂鸣器和LED电路............................................................................................................- 15 -
2.12 JTAG接口电路..............................................................................................................................- 17 -
2.13 IIC存储器(KS24C08)电路.......................................................................................................- 17 -
第三章 开发板资源测试方法和步聚............................................................................................................- 18 -
3.1. 如何运行测试程序........................................................................................................................- 18 -
3.3 内存SDRAM读写自测试..................................................................................................................- 21 -
3.4 PWM脉宽调试和蜂鸣器测试...........................................................................................................- 21 -
3.5 IIC总线
EEPROM读写测试.............................................................................................................- 22 -
3.6 模数转换器ADC测试......................................................................................................................- 23 -
3.7 IIS音频播放WAV文件测试...........................................................................................................- 24 -
3.8 USB DEVICE(PDIUSBD12)测试....................................................................................................- 25 -
3.9 黑白STN液晶屏测试......................................................................................................................- 26 -
3.10 黑白STN液晶屏显示英文字符测试............................................................................................- 27 -
3.11 4级灰度STN液晶屏测试.............................................................................................................- 28 -
3.12 16级灰度STN液晶屏测试...........................................................................................................- 29 -
3.13 256色STN液晶屏测试.................................................................................................................- 30 -
- 1 -
FS44B0X开发板使用手册 V3.0
3.14 外部电平中断测试........................................................................................................................- 31 -
第四章ARM编译调试开发平台的搭建..........................................................................................................- 33 -
4.1 安装ADS1.20编译调试环境..........................................................................................................- 33 -
4.2 安装并运行ARM-JTAG调试代理.- 33 -
4.3 为ARM-JTAG调试代理正确配置- 34 -
4.4 使用SUPERJTAG在ADS1.20环境下进行仿真调试......................................................................- 36 -
第五章 如何使用FLASHPGM快速烧写- 37 -
5.1计算机的设置..................................................................................................................................- 37 -
5.2 FLASHPGM的设置............................................................................................................................- 39 -
5.3 设置通信端口.................................................................................................................................- 40 -
5.4 选择编程文件类型.........................................................................................................................- 41 -
5.5 点击编程按钮.................................................................................................................................- 41 -
第六章FS44B0X_BIOS的烧写与使用............................................................................................................- 43 -
6.1 FS44B0X_BIOS编译说明.................................................................................................................- 43 -
6.2 用BIOS通过网口烧写应用程序UC/OS-II到FLASH里..............................................................- 43 -
6.3 用BIOS通过串口烧写应用程序UC/OS-II到FLASH里..............................................................- 45 -
6.4 用BIOS通过网口来快速运行和调试应用程序- 46 -
6.5 用BIOS通过串口来全速运行和调试应用程序- 47 -
6.6 FS44B0X_BIOS命令简表.................................................................................................................- 48 -
6.7 FS44B0X_BIOS命令详解.................................................................................................................- 49 -
第七章 建立UCLINUX开发环境....................................................................................................................- 53 -
7.1 UCLINUX简介..................................................................................................................................- 53 -
7.2 如何建立UCLINUX
开发环境..........................................................................................................- 53 -
7.3 UCLINUX内核的编译步骤...............................................................................................................- 53 -
7.4 利用FTP下载应用程序到目标系统..............................................................................................- 55 -
7.- 55 -
7.- 56 -
7.4.3 测试目标.............................................................................................................................- 57 -
7.4.4 进入SDRAM区域............................................................................................................- 58 -
7.4.5 FTP 192.168..- 58 -
7.- 62 -
第八章FS44B0X如何恢复到出厂设置..........................................................................................................- 65 -
8.1重新烧写- 65 -
8.2 BIOS备份........................................................................................................................................- 65 -
- 65 -
第九章 FS44B0X如何烧写- 66 -
9.1 烧写前准备.....................................................................................................................................- 66 -
9.2 烧写中断向量表.............................................................................................................- 66 -
9.3 烧写UCLINUX内核:......................................................................................................................- 67 -
9.4 烧写UCLINUX根文件系统..............................................................................................................- 67 -
9.5 输入命令MRUN就可运行- 68 -
第十章 WFTPD配置(FTP服务器)..............................................................................................................- 68 -
10.1运行..........................................................................................................................- 68 -
- 69 -
- 70 -
10.4 建立新用户...................................................................................................................................- 70 -
- 2 -
FS44B0X开发板使用手册 V3.0
10.5 输入用户名- 71 -
10.6 输入密码efun 点击OK................................................................................................................- 72 -
- 73 -
第十一章 相关的术语解释...........................................................................................................................- 73 -
11.1 XMODEM协议..................................................................................................................................- 73 -
11.2 NAND FLASH和NOR FLASH详解...................................................................................................- 74 -
11.3 SDRAM存储器................................................................................................................................- 77 -
第十二章 FS44B0X开发板使用- 77 -
12.1如何重新烧写BIOS?......................................................................................................................- 77 -
12.2 为何超级终端不能输入?............................................................................................................- 77 -
12.3为何超级终端里,BIOS不接受AP等指令?..............................................................................- 77 -
12.4为何网络PING不通?...................................................................................................................- 78 -
12.5 为何SUPERJTAG连不上目标板?................................................................................................- 78 -
12.6 FLASHPGM无法进行FLASH烧写怎么办?...................................................................................- 78 -
- 3 -
FS44B0X开发板使用手册 V3.0
第一章 FS44B0X开发套件的组成
1.1开发套件所提供的硬件详细清单
FS44B0X开发套件包括
1) 一块已测试好的FS44B0X开发板
2)一个Super JTAG调试头
3)一条串口线(两边都是母头,一对一)
4)一条并口线(一边是公头一边是母头,一对一)
5)条网线(交叉线)
6 一张FS44B0光盘
7 一个+9V直流电源
8)一个包装盒
图1-1
- 4 -
FS44B0X开发板使用手册 V3.0
1.2 开发套件所提供的软件详细清单
1) ADS1.20安装程序(评估版);
2) 使用SuperJTAG并支持ADS1.20和SDT2.51的JTAG调试软件ARMJtagDebugFinal;
3) 烧写flash的工具软件flashpam2.2.4(评估版)以及适用于S3C44B0X的OCD配置文
件;
4) 串口工具软件、、;
5) LCD图片转换和字模转换工具软件;
6) FS44B0 BIOS源代码(ADS1.20的项目文件,包含RTL8019驱动和TFTP协议源码);
7) FS44B0测试程序(ADS1.20的项目文件,包含全部源代码),具有如下功能测试:
内存(SDRAM)读写自测试、PWM输出蜂鸣器测试、IIC总线EEPROM读写测试、
模数转换ADC测试、IIS音频播放测试、USB从设备PDIUSBD12测试、
黑白STN液晶屏测试、4级灰度STN液晶屏测试、16级灰度液晶屏测试、256色液晶
屏测试、
STN屏字符串显示测试、外部中断测试,以上测试均提供源码;
8) 三星提供的S3C44B0X标准测试程序,经修改后可以运行在FS44B0X开发板上面:
8) uC/OS-II V2.76测试(ADS1.20的项目文件,五个任务的演示Demo,提供全部源码)
9) uclinux源码包和编译器等;
10) 使用SuperJTAG进行硬件仿真DEBUG的演示动画;
11) 使用FLASHPGM烧写Flash的演示动画;
12) FS44B0X原理图(pdf格式);
13) FS44B0X开发板使用手册(pdf格式)
- 5 -
FS44B0X开发板使用手册 V3.0
1.3 板上接口和资源清单
中央处理器
── S3C44B0X (Samsung),ARM7TDMI
外部存储器
── 2M Bytes Nor Flash (SST39VF1601,用户可自己更换为4M字节的SST39VF3201)
── 8M Bytes SDRAM (K4S641632H或者是HY57V641620,用户可更换为16M字节的
扩展网口
── 10M网口,RTL8019AS
LCD接口
──支持单色、4级灰度、16级灰度、256色STN液晶屏,最大支持640x480/256色STN
屏
USB Device接口
── USB1.1规范,PDIUSBD12
串口
── 两个标准三线RS232接口,其中COM2支持硬件流控制
时钟源
── 内部实时时钟(备有掉电电池)
IDE接口
音频输出
── CS4334+TDA7050
四个小按键,三个LED
一个蜂鸣器
线性电源供电,输入直流电压范围是+9V
1.4 板上硬件资源分配列表
1.4.1 系统片选及地址空间
nGCS0【0x0000_0000】:FLASH(SST39VF1601)
nGCS1【0x0200_0000】:USB DEVICE(D12)
nGCS2【0x0400_0000】:
nGCS3【0x0600_0000】:RTL8019AS
nGCS4【0x0800_0000】:
nGCS6【0x0C00_0000】:SDRAM(K4S641632H或者是HY57V641620)
1.4.2 中断分配
INT0:USB D12
- 6 -
FS44B0X开发板使用手册 V3.0
INT1:RTL8019
INT4:KEY1
INT5:KEY2
INT6:KEY3
INT7:PKEY4
1.4.3 系统板设定:
BANK0总线宽度为16 bit;
Little Endian模式;
跳线出厂默认设置:
JP2,JP3接上短路帽
J8 : 将短路帽插在1,2上
1.5 板上接口和指示灯功能说明
1.5.1 接口板
GOODLINK:USB从设备(PDIUSBD12)的工作状态指示灯。
D1:由IO口GPC1控制的指示灯。
D2:由IO口GPC2控制的指示灯。
D3:由IO口GPC3控制的指示灯。
RX:10M网口RX发送指示灯。
LINK:10M网口Link联机指示灯。
POWER:5V直流电源指示灯。
JTAG:14PIN JATG调试接口。
COM1:DB9,COM1接口。
COM2:DB9,COM2接口。
USB:USB-B型接口,USB DEVICE接口
PHONEJACK:IIS立体声输出音频插座。
LCD:20PIN插座,LCD接口。
IDE:40PIN插座,IDE接口
DC_IN:直流电源输入插座,输入电压是+9V。
- 7 -
FS44B0X开发板使用手册 V3.0
NET:网口插座。
第二章 系统硬件描述
2.1板上的电源电路
CPU的IO和外设所需要的3.3V电压是采用LM1117-3.3产生3.3V电源供给的,CPU
的核电压2.5V采用的是LM1117-2.5V相关电路如下:
2.2 复位电路
为了提高可靠性,复位电路没有采用简单的阻容复位电路,而是采用了专用复位芯片,具
体电路如下:
- 8 -
FS44B0X开发板使用手册 V3.0
2.3 CPU单元
CPU的相关电路如下,采用的是16位数据总线模式,系统时钟采用外接晶体起振,再
用内部
PLL倍频到需要的频率:
- 9 -
FS44B0X开发板使用手册 V3.0
2.4 SDRAM电路
SDRAM电路如下:
- 10 -
FS44B0X开发板使用手册 V3.0
2.5 NORFlASH
考虑到NORFLASH的货源和价格因素,NORFLASH电路也采用了兼容设计方案,根
据其周围焊接不同的电阻,可以支持多种不同型号与容量的NORFLASH,支持SST39VF160
(与AM29LV320兼容)具体电路如下:
- 11 -
FS44B0X开发板使用手册 V3.0
2.6 RTL8019网络接口电路
这里的RTL8019是采用8位总线模式,两个指示灯指示一个连接状态和接受数据包,
电路如下:
- 12 -
FS44B0X开发板使用手册 V3.0
2.7 USBDEVICE(PDIUSBD12)接口电路
PDIUSBD12电路如下,一个LED指示连接状态:
- 13 -
FS44B0X开发板使用手册 V3.0
2.8 异步串口接口电路
异步串行口电路如下,支持硬件流控制。如果焊接上U2的就可以支持硬件流控制,但默认
情况下是不焊这个芯片的,用户根据需要可以自己焊上这个芯片:
2.9 LCD接口电路
LCD接口电路如下:
- 14 -
FS44B0X开发板使用手册 V3.0
2.10 IIS音频输出和放大电路
IIS音频接口采用专用接口芯片CS4334,输出的两路音频再通过TDA7050放大输出,
在输出端加了两个22欧姆的小电阻进行保护,防止短路烧毁功率放大器。相关电路如下:
2.11 按键、蜂鸣器和LED电路
按键和LED电路如下,按键为上拉接到外部中断引脚EXINT4、EXINT5、EXINT6、
EXINT7,按下按键就可以产生低电平中断:
- 15 -
FS44B0X开发板使用手册 V3.0
蜂鸣器电路如下:
- 16 -
FS44B0X开发板使用手册 V3.0
2.12 JTAG接口电路
JTGA电路使用ARM公司推荐的14芯片JTAG接口,引脚排列如下:
2.13 IIC存储器(KS24C08)电路
IIC存储器电路如下:
- 17 -
FS44B0X开发板使用手册 V3.0
第三章 开发板资源测试方法和步聚
用户拿到开发板套件之后,请首先按照如下步骤进行测试,以验证开发板好坏。每一块
开发板在发货之前,均烧写了BIOS,设置好了初始化参数;
将9V电源接到板子上,用直连串口线、交叉网线将板子和PC机连接起来
在PC机上DNW(0.50),设置为:COM1,115200
3.1. 如何运行测试程序
打开开发板上面的开关,上面的LED指示灯将会亮起。从PC机的DNW上面看到如下的
信息:
- 18 -
FS44B0X开发板使用手册 V3.0
上图信息是说明检测到了你的PC机网络设置为:
IP地址:(譬如设置IP为192.168.3.100)
子网掩码:255.255.255.0
在DNW里面输入BIOS命令NETRUN,启动TFTP协议准备从PC机上下载目标代码;
在FS44B0X_TEST FS44B0X_TEST_DATADEBUGREL目录下运行
FS44B0X_,将目标代码文件FS44B0X_通过网口传到开发板SDRAM
上从0XC008000开始的地方;
在DNW里面您将看到如下信息:
- 19 -
FS44B0X开发板使用手册 V3.0
上面提示信息显示:IP地址是192.168.3.100,下载的代码放置在SDRAM中从0xc008000
开始的地址,当下载结束后,会立即执行下载的程序,显示信息如下:
- 20 -
FS44B0X开发板使用手册 V3.0
3.3 内存SDRAM读写自测试
按“1”然后回车进行内存(SDRAM)读写自测试,提示信息如下:
3.4 PWM脉宽调试和蜂鸣器测试
按“2”然后回车测试PWM(脉宽调制)输出并驱动一个蜂鸣器,注意JP1上一定要插
上一个短路块,现在就可以听到蜂鸣器的鸣叫声了,按“+”增加蜂鸣器的频率,按“-”
减小蜂鸣器的频率,按“ESC”退出本测试返回到主测试菜单,提示信息如下:
- 21 -
FS44B0X开发板使用手册 V3.0
3.5 IIC总线EEPROM读写测试
按“3”并回车测试IIC总线EEPROM读写,本测试使用了中断,将EEPROM中写入
连续的数字再读出并显示出来。由于 V0.50A对中文支持不好,所以下面提示信
息中的中文字符显示有乱码。这段中文的意思是如果要运行中断程序,必须将目标代码烧
入到Flash中一次,因为S3C44B0的中断会首先跳转到FLASH的起始几个地址,然后在那
里经跳转最后才到SDRAM中的中断服务程序。因为BIOS不支持中断,FLASH的起始地
址没有中断跳转向量表。所以只需要将本程序烧写到FLASH中一次,Flash就有了中断向
量表了。以后调试本程序或者是运行本程序,均不需要再烧写FLASH,通过网口或者是串
口下载到SDRAM中就可以运行中断了,提示信息如下:
- 22 -
FS44B0X开发板使用手册 V3.0
3.6 模数转换器ADC测试
按“4”并回车进行模数转换器(ADC)功能测试,因为S3C44B0X的模数转换器是10
位精度的,提示信息如下:
- 23 -
FS44B0X开发板使用手册 V3.0
3.7 IIS音频播放WAV文件测试
第6项是测试IIS音频输出,不过在测试音频输出之前,首先需要通过串口下载一个
wav格式的音频文件进来才可以。按“5”并回车开始下载*.WAV文件到SDRAM,然后点
击的菜单SERIAL PORT/TRANSMIT,弹出一个文件浏览的窗口,在这窗口中选
中光盘上面提供的WAV文件(譬如),点击按键打开启动文件传输:
- 24 -
FS44B0X开发板使用手册 V3.0
文件传输的时候,会出现传输的进度条,传输完毕后,会出现提示信息问您是否运行刚
才下载的文件,这时要输入“N”不运行刚才下载的文件(因为WAV音频文件是不可以执
行的)。
现在在主菜单里面按 “6” 并回车,把音箱的音频插头或者是耳机插头插入到开发板上
面的音频插座,现在就可以听到刚才下载的WAV文件了,旋转音频插座左边的电位器调教
音量,注意顺时针方向旋转是减小音量,逆时针方向旋转是增大音量,相关提示信息如下:
3.8 USB DEVICE(PDIUSBD12)测试
按“ESC”退出前面的测试,按“7”测试USB DEVICE(PDIUSBD12),用USB线连
接PC机和目标板,可以看到下面的提示信息:
- 25 -
FS44B0X开发板使用手册 V3.0
在PC机里面运行所提供的测试程序(注意必须先装好驱动程序
FS44B0X_TEST USB_DRIVER_TESTD12驱动),点击三个按键可以看到开发板上面三个
LED分别亮和灭。
3.9 黑白STN液晶屏测试
按“ESC”退出PDIUSBD12的测试,按“8”测试黑白的STN液晶屏,接上G35(16
级灰度)或者是G57(黑白)的STN液晶屏,按照提示信息按回车或者是“i”、“j”、“k”,
“m”,可以看到液晶屏上面出现不同的画面,相关提示信息如下:
- 26 -
FS44B0X开发板使用手册 V3.0
3.10 黑白STN液晶屏显示英文字符测试
按“9”进行黑白STN液晶屏输出字符串测试,接上G35(16级灰度)或者是G57(黑
白)的STN液晶屏,按照提示信息按回车或者是“i”、“j”、“k”,“m”,可以看到液晶屏上
面出现不同的画面,相关提示信息如下:
- 27 -
FS44B0X开发板使用手册 V3.0
3.11 4级灰度STN液晶屏测试
按“10”进行4级灰度STN液晶屏的测试,接上G35(16级灰度)或者是G57(黑白)的
STN液晶屏,按照提示信息按回车或者是“i”、“j”、“k”,“m”,可以看到液晶屏上面出现
不同的画面,相关提示信息如下:
- 28 -
FS44B0X开发板使用手册 V3.0
3.12 16级灰度STN液晶屏测试
按“11”进行16级灰度STN液晶屏的测试,接上G35(16级灰度)或者是G57(黑白)
的STN液晶屏,按照提示信息按回车或者是“i”、“j”、“k”,“m”,可以看到液晶屏上面出
现不同的画面,相关提示信息如下:
- 29 -
FS44B0X开发板使用手册 V3.0
3.13 256色STN液晶屏测试
按“12”进行256色STN液晶屏的测试,接上G35(16级灰度)或者是G57(黑白)的
STN液晶屏,按照提示信息按回车或者是“i”、“j”、“k”,“m”,可以看到液晶屏上面出现
不同的画面,相关提示信息如下:
- 30 -
FS44B0X开发板使用手册 V3.0
3.14 外部电平中断测试
按“13”测试外部电平中断,按板子上面的按键KEY1、KEY2、KEY3、KEY4,就可以看
到中断响应信息,相关提示信息如下:
- 31 -
FS44B0X开发板使用手册 V3.0
- 32 -
FS44B0X开发板使用手册 V3.0
第四章ARM编译调试开发平台的搭建
4.1 安装ADS1.20编译调试环境
点击光盘ADS120文件夹下面的可执行安装程序——,然后一步一步安装,最
后装好文件,编译调试环境就安装好了。详细步骤请观看光盘中的多媒体演示文
件。
4.2 安装并运行ARM-JTAG调试代理ARMJTAGDEBUGFINAL
首先要正确连接目标板,用14针的排线将开发板和SUPERJTAG小板连接起来。
将光盘中的ARMJTAGDEBUGFINAL文件夹拷贝到硬盘上任意目录下,运行其中的文
件——“安装驱动.EXE”,就会弹出一个界面窗口,点击上面的“INSTALL”按键直到出现
提示信息“Service is partially installed.”,然后再点击下面的“INSTALL”按键,出现下面
的信息,说明驱动安装成功:
现在运行ARM7-JTAG调试代理软件——,注意如果20芯排线连接到
SUPERTAG板的SDT接口(JP4、JP5)上,需要选中下图中的SDT;如20芯排线连接到
SUPERJTAG板的WIGGLER接口(JP1、JP2)上,需要选中下图中的WIGGLER,如下图
所示:
- 33 -
FS44B0X开发板使用手册 V3.0
如果安装成功、配置正确而且硬件连接良好,将会检测到ARM7TDMI,如上图中左上
角的红色圆圈。
4.3 为ARM-JTAG调试代理正确配置AXD DEBUGGER
运行ADS120软件中的调试软件——AXD DEBUGGER,在下面的界面中,点击菜单
options/Configure Target,在弹出的界面窗口中选择Remote_,然后点击按键Configure:
- 34 -
FS44B0X开发板使用手册 V3.0
在弹出的窗口中,点击“Select”按键,选择“ARM Ethernet driver”选项,然后点击
OK按键,如下图所示:
再点击“Configure”按键,在弹出的窗口中输入数字“127.0.0.1”并确认,如下图所示,
这样就是设置好了:
- 35 -
FS44B0X开发板使用手册 V3.0
4.4 使用SUPERJTAG在ADS1.20环境下进行仿真调试
关闭并重新启动AXD DEBUGGER,点击菜单File/Load Image,找到您想调试的调试目
标代码(*.axf格式),打开它就启动目标代码下载,这时会出现进度条,下载完毕就可以单
步或者全速调试了:
调试过程中可以看CPU各寄存器,也可以设置断点:
- 36 -
FS44B0X开发板使用手册 V3.0
第五章 如何使用FLASHPGM快速烧写FLASH
5.1计算机的设置
请在PC机的BIOS里面将并口设置成 EPP方式;
HEX文件的准备
flashpgm不能烧写*.bin格式的文件,但可以烧写*.elf或者是*.hex格式的文件,一般都
使用*.hex格式的文件进行烧写。
以ADS1.2为例,在其项目编译界面下按Alt+F7进入下面的设置界面,按照下面画红
色圆圈的画面在Target Settings目录下选择ARM FROMELF,以生成目标代码:
- 37 -
FS44B0X开发板使用手册 V3.0
然后在ARM FROMELF菜单下的output format选择 Intel 32 bit Hex。 输出文件名任意,
但后缀一定要是hex , 如果您没有选,系统自动生成文件的后缀为 .i32格式。请将.i32改
名.Hex.
然后编译就会生成你所设置文件名的Hex格式文件了。
FLASHPGM烧写时SUPERJTAG的接法
将14针线连接到JTAG小板上
- 38 -
FS44B0X开发板使用手册 V3.0
5.2 FLASHPGM的设置
调入 文件
- 39 -
FS44B0X开发板使用手册 V3.0
5.3 设置通信端口
选择Wiggler Parallel
- 40 -
FS44B0X开发板使用手册 V3.0
5.4 选择编程文件类型
5.5 点击编程按钮
如果目标板连接不正常将显示如下对话框,请检查目标板电源是否打开,20芯排线是否连
- 41 -
FS44B0X开发板使用手册 V3.0
接正常。
如果连接正常,将显示如下对话框。
点击Browse按钮,找到要烧写的文件的位置,如下图,另外,也要选中 Erase Target Flash
Sector(s) Before Program
如果在上面的画面中,您发现按键Program始终为灰色,无论如何也不行。请点击Close
按键关闭上面的画面,然后按一下开发板上面的复位按键,再点击Flashpgm界面中的
Program按键,重新进入上面的画面,就会发现Program不在是灰色的了,这样就可以编程
了。这实际上是Flashgpm的一个bug,但别无它法,不过情况不多见。
- 42 -
FS44B0X开发板使用手册 V3.0
第六章FS44B0X_BIOS的烧写与使用
6.1 FS44B0X_BIOS编译说明
1) 通常不用重新编译FS44B0X_BIOS, 如果要编译,那么请使用光盘上FS44B0X_BIOS这
个子目录里的源码
2) FS44B0X_BIOS项目在ADS1.20下编译和调试。因为ADS1.20不支持中文的目录名字,
所以务必将整个FS44B0X_BIOS目录拷贝到一个因为英文文件夹下,并且该文件夹向上一
直到根目录的所有文件夹的名字都是英文的。
3) 现在只能对SST39VF160烧入,对其他FLASH需要自己修改相关驱动, 注意要修改BIOS
的驻留地址,现地址为0X1F0000.
4) 对不同的RAM而言,修改SYSINIT.S里的参数即可。FS44B0X_BIOS运行地址为
0XC7C0000,可在ADS中修改。
5) 波特率为115200,默认串口是串口1;
6) IP地址为 192.168.3.100;
7) 在第一次烧写了BIOS之后,一定要记得立即执行BIOS命令BACKUP来将BIOS拷贝
到FLASH的高端备份起来。
6.2 用BIOS通过网口烧写应用程序UC/OS-II到FLASH里
FS44B0X_BIOS烧写完成后,FS44B0X开发板重新上电FS44B0X_BIOS就接管了系统,
它初始化了CPU的串口、网口、内存等。可以在超级终端输入一些指令来完成一些工作。
先用BIOS烧写一个UC/OS-II程序代码。连接好网线和串口线,打开电源;
在里面的BIOS命令提示符下输入命令AP并回车;
在“目标代码”文件夹里,双击批处理文件FS44B0X_,可以看到通过网口下
载了0xAD60个字节的目标代码文件到板子上面了,然后在里输入y并回车,就
将UC/OS-II程序烧写到0地址(但没有修改0地址的跳转指令),提示信息如下:
- 43 -
FS44B0X开发板使用手册 V3.0
现在可以关闭电源重新上电或者是直接按复位按键,当超级终端出现提示符/>时,输入
命令boot并回车,当系统提示boot from flash, are you sure ?[y/n]时键入y,即启动刚烧入的
UC/OS-II程序。这时可以在FS44B0X板子上看到D1、D2、D3轮流闪烁,串口输出CPU
使用率和RTC实时时钟的时间。这时,BIOS已将控制权交给了应用程序,超级终端受应
用程序控制。相关提示信息如下:
- 44 -
FS44B0X开发板使用手册 V3.0
此时要进入BIOS的命令提示符下,只能按复位键重新启动BIOS。
6.3 用BIOS通过串口烧写应用程序UC/OS-II到FLASH里
有时候用户自己设计了开发板,但并不是所有的开发板上面都有RTL8019的网口,不
过没有串口的开发板倒是很少见了,这是串口就派上用场了,可以通过串口来烧写用户的
应用程序。
在里面的BIOS命令提示符下输入命令COMLOAD并回车,然后点击菜单
Serial Port/Transmit,在弹出的浏览窗口中选中您要下载的*.bin格式目标代码文件
(FS44B0_),然后点击打开就开始从串口下载文件了,这时您可以看到进度
条,下载完毕敲入命令PROM 0即将代码烧写到FLASH的0地址(但没有修改0地址的跳
转指令),这个时候再敲入命令boot就可以运行刚才通过串口下载并烧写到FLASH的代码
了,相关提示信息如下:
- 45 -
FS44B0X开发板使用手册 V3.0
6.4 用BIOS通过网口来快速运行和调试应用程序UC/OS-II
有经验的嵌入式开发工程师会发现,其实很少时候需要用到仿真器来单步调试,大多数
情况下都是全速运行代码,其实BIOS里是有命令可以支持这种快速调试。
在BIOS的命令提示符下执行命令NRTRUN(更简洁快速的命令是g),然后点击批处
理文件FS44B0X_,可以看到目标代码文件FS44B0X_很快就通
过网口下载到SDRAM中从0xc008000开始的地址,然后马上从这个执行该程序。
- 46 -
FS44B0X开发板使用手册 V3.0
由于网口的数据传送速度是10M,而MULTI-ICE仿真器使用的并口数据传送速度只
有几百K,所以使用上面的方法,下载并全速运行程序的速度比Multi-ICE仿真器快很多。
正因为如此,很少使用MULTI-ICE仿真器,仅只在极少数需要单步跟踪调试代码的时候
才用到它,绝大多数情况下都是在BIOS里面敲一个 “g”,然后点击一个批处理就搞定调试
过程。
6.5 用BIOS通过串口来全速运行和调试应用程序UC/OS-II
开发板上面没有网口的时候,也可以通过串口来下载并全速运行,只是这样下载速度较
慢,适用于调试比较小的程序。
在BIOS的命令提示符下执行命令COMRUN并回车,然后点击菜单Serial Port/Transmit,
在弹出的浏览窗口中选中你要下载的*.bin格式目标代码文件(FS44B0X_),
然后点击打开就开始从串口下载文件了,这时您可以看到进度条,下载完毕它就马上自动
运行刚下载的程序了。
- 47 -
FS44B0X开发板使用手册 V3.0
6.6 FS44B0X_BIOS命令简表
FS44B0X_ BIOS具有启动、引导,下载、烧写,设置日期、时间,设置工作频率等多
种功能,并且支持各种参数的存储和自动调用。
可以用FLASHPGM等软件将BIOS烧写到FLASH中去,BIOS的自身驻留地址位于
NOR FLASH的0x1f0000处,系统参数保存在0x1ff000以上区域中。所以在烧写完BIOS,
上电复位后先要执一定要执行backup命令把BIOS本身拷贝到NOR FLASH的高端1f0000
去。
下面BIOS命令的汇总列表:
BIOS命
命令行提示信息
令
help show this list
? help
date show or set current date
time show or set current time
功能说明
显示BIOS 命令列表
显示BIOS 命令列表
显示或设置开发板时钟的当前日
期
显示或设置开发板时钟的当前时
间
设置星期信息
显示系统当前运行速度
设置系统当前运行时钟
改变串口(0/1)
设置串口通信波特率
显示或设置当前开发板IP 地址
通过网络下载文件
通过网络下载文件并运行该文件
通过网络下载文件并运行该文件
通过串行口下载文件
通过串行口下载文件并运行该文
件
通过XMODEM 下载文件
通过XMODEM 下载文件并运行
对FLASH 存储器编程
下载文件并编程写入FLASH 存储
器
拷贝BIOS 代码到FLASH 存储器
高端
从源地址到目标地址拷贝FLASH
内容
从FLASH 存储器重启动
运行程序
从ADDR1 转移数据到ADDR2
setweek set weekday
clock show system running clock
setmclk set system running clock
chguart change uart(0/1)
setbaud set baud rate
ipcfg show or set current IP address
netload download file by net
netrun download file by net and run
g download file by net and run
comload download file by uart
comrun download file by uart and run
rx download file by xmodem
rxrun download file by xmodem and run
prog program flash
ap download file and program it to flash
backup
copy
move bios to the top of flash
copy flash from src to dst address
boot boot from flash
run run program
move move data from addr1 to addr2
- 48 -
FS44B0X开发板使用手册 V3.0
mrun move data form prog_s_addr to prog_r_addr
and run
md show memory data
memd show 8/16/32bits memory
mems
senv
machine
setpa
setbp
bootkey
nfpart
nferase
nfprog
nfload
defset
set 8/16/32bits memory
save enviroment value to flash
set machine number
set program save(run) address
set program boot parameters
set key to autoboot
set nand flash partitions
erase nand flash partition
program nand flash
load program from nand flash
default setting for ucLinux
从源地址到目的地址移动数据并
运行
显示内存数据
按照字节/半字/字格式显示内存数
据
按照字节/半字/字格式设置内存数
据
在FLASH 存储器保存环境变量
设置机器序列号
设置程序存储及运行地址
设置程序启动参数
设置自动重启的按键
设置NAND FLASH 分区
清除NAND FLASH 分区
NAND FLASH 编程
从NAND FLASH 载入程序
恢复到运行uCLinux的默认设置
6.7 FS44B0X_BIOS命令详解
(注:以下命令所带参数中地址和长度都属16进制,不必在前面加0x)
help和?可以列出所有命令并给出简单的说明;
date命令可以显示和设置当前日期,只输入date命令则显示日期,输入date 2004-6-8则设
置当前日期为2004年6月8日。
time命令可以显示和设置当前时间,只输入time命令则显示时间,输入date 14:4:30则
设置当前时间为14:4:30。
setweek n可设置星期几,n从1到7表示星期一到星期日。
clock可以显示当前的工作频率。
setmclk可以改变CPU工作频率,具体参数设置可见芯片手册,注意不要使频率超出工作
范围。频率参数属于可以保存和调入的参数,这次设置和保存后下次复位BIOS会自动调入
这写参数初始化CPU。
setbaud可改控制串口的波特率,改完后要在PC上相应改变串口通讯波特率后再敲回车。
ipcfg可显示和修改tftp下载时所用的IP地址,只输入ipcfg则显示当前IP地址,输入ipcfg
192.168.2.223则将ip地址改为192.168.2.223。
netload启动tftp接收,若没带地址参数,则使用缺省下载地址0x0c008000,若指定地址,下
- 49 -
FS44B0X开发板使用手册 V3.0
载数据保存到指定地址开始的SDRAM中去,如netload c300000。启动tftp接收后,要在
PC端执行tftp下载程序,在win2000或winxp下,直接输入tftp -i put 文
件名即可;在win98下,使用CDROM里所带的tftp程序;在linux下,使用CDROM里所
带的tftpcmd程序。注意进行tftp传输时要保证PC机和开发板处于同一个IP段内。
netrun或者是g启动tftp接收完数据后会自动运行下载到的程序,缺省下载地址和指定参
数同netload。
comload启动串口下载(DNW程序的串口下载),缺省下载地址和指定参数同netload.
comrun启动串口下载(DNW程序的串口下载)并在接收完数据后自动运行下载的程序,
缺省下载地址和指定参数同netload。
rx启动XMODEM方式下载,可在超级终端内选择1K XMODEM或XMODEM发送数据到
开发板上,缺省下载地址和指定参数同netload。
rxrun在启动XMODEM方式接收完数据后自动运行下载到的程序,缺省下载地址和指定参
数同netload。
prog可以烧写NOR FLASH,目前支持SST39VF160。prog命令完整的参数是prog addr1 addr2
length [-no0],其中addr1是要烧写的FLASH的地址,大于等于0,小于200000,字对齐,
addr2是sdram中要烧进flash的数据区起始地址,length是要烧写的长度,-no0表示要把数
据烧进Nor Flash 0地址开始的地方时,是否修改0地址的指令,因为CPU复位总是从0开
始执行的,当用Nor Flash启动时,若用prog命令将下载到的程序烧入Nor Flash 0地址开
始的地方并在命令最后指定-no0,那么在复位后,就不会再运行Bios而直接启动用户程序了,
若不在prog命令最后加-no0, 则BIOS可以烧写Nor Flash 0地址的数据前,将0地址的指
令改为直接跳转到0x1f0000处即Bios的驻留地址,并保存原程序0地址将要跳转到的地址,
以后在执行boot指令时再跳转过去执行用户烧入的程序。运行Bios。在运行Bios下载完数
据后,也可不带参数直接执行prog命令,缺省的Nor Flash地址是用户程序存储地址
prog_s_addr(见后面setpa命令),sdram中数据起始地址和数据长度在接收成功后自动设定
了。
ap指令自动下载完数据并将数据烧写到nor flash的0地址处,缺省为tftp 下载,指定-c表
示串口下载(DNW方式),-x表示XMODEM下载,-b表示不修改0地址的指令。
backup可用在第一次烧写完BIOS到Nor Flash 0地址后上电执行时将Bios本身拷贝到
0x1f0000处。
copy将Nor Flash某地址的数据拷贝到另一地址。
boot可运行用户通过BIOS下载烧写到0地址并修改过0地址跳转地址的程序,见prog.
run可运行存储器中的程序,缺省地址就是缺省下载地址,也可指定运行地址。
move addr1 addr2 size 可将存储器中addr1开始的长度为size的数据拷贝到addr2开始的地
址去。
- 50 -
FS44B0X开发板使用手册 V3.0
mrun可自动执行move的过程并运行程序,比如在FS44B0中我们将uClinux内核保存在
Nor Flash的0x10000开始的地方,长度为800K,它的运行地址是0x0c300000,那么mrun
就可以完成拷贝的操作并直接运行。mrun内部使用的参数见setpa命令。
md显示存储器中的数据,可以带地址参数。
memd可显示单个存储器单元中的内容,-c参数表示8位数据,-s参数表示16位数据,-l参
数表示32位数据,后面跟存储器地址。
mems可修改单个存储器单元中的内容,-c,-s,-l参数同上,后面跟存储器地址和要写入的内
容。
machine可设置机器号,适用于linux,此参数可保存。
setpa有几个参数
Usage : setpa -s[-r][-i][-ni][-nor][-nand] [address]
-s save address
-r run address
-i initrd save address
-ni disable initrd
-nor use nor flash to save
-nand use nand flash to save
其中-s表示用户程序在FLASH中的存储地址,如上面所说的将uClinux内核保存到Nor Flash
的0x10000处,为使mrun正确运行,我们就要设置setpa -s 10000
-r表示用户程序的运行地址,如上面所说的将uClinux内核的运行地址是0x0c300000,为使
mrun正确运行,我们就要设置setpa -r c300000
-i表示使用initrd(对于linux或uClinux),它的存储地址是多少。
-noi表示取消initrd。
-nor表示用户程序存储在Nor Flash中,-nand表示用户程序存储在Nand Flash中。注意使
用Nand Flash存储时,前述保存地址1000表示Nand分区1,2000表示Nand分区2,依此
类推,Nand分区见nfpart命令。
setpa设置的参数都是可以保存的。
setbp可以设置启动命令(对于uClinux和linux),可以保存。
Usage : setpa -s[-r][-i][-ni][-nor][-nand] [address]
-s save address
-r run address
-i initrd save address
-ni disable initrd
-nor use nor flash to save
-nand use nand flash to save
-s 表示mrun运行的程序是存储器在flash的什么位置,
对于nor flash是nor flash中的地址,
对于nand flash 1000表示分区0,2000表示分区2.
- 51 -
FS44B0X开发板使用手册 V3.0
-r表示存储的程序要读到sdram中什么位置再运行.对于uClinux是c300000.
-i表示initrd存储在flash的什么位置,如同-s.
-ni表示取消initrd
-nand表示用NAND FLASH作为内核及initrd的存储介质.
bootkey可设置BIOS复位运行后检查哪个按键状态来自动启动存储在Flash中的用户程序,
即自动调用mrun指令,按键编号1~4,状态0表示低启动,1表示高启动。比如要在复为
后检测到按键3为低时启动,可执行bootkey 3 0。此参数也可保存,注意实现自动启动的
前提是先烧写好Flash和用setpa命令设置好各个参数,bootkey命令最后可带-b参数,表示
自动运行boot指令,缺省情况下是运行mrun指令。
nfpart 可在Bios中对Nand Flash简单分区,比如Nand Flash大小是32M,要分为
0~0x30000,0x30000~0x200000,0x200000~0x800000,0x800000~0x1000000,0x1000000~0x2000
000 这样5个分区,可以执行nfpart 30000 200000 800000 1000000 2000000,分区最多为8
个,分区参数可以保存。
nferase可以擦除Nand Flash分区,块有错误时会有提示。
nfprog可以将下载的数据写入Nand Flash分区,也可指定烧入数据的起始地址和长度,烧写
有错误也会有提示。
nfload可以将Nand Flash分区的数据全部读入sdram中,可以指定sdram地址和Nand Flash
分区。
senv命令可以保存所有保存的参数到Flash中,下次复位运行BIOS后会调入这些参数。
defset命令可以将运行uCLinux所需要的各种默认设置一次性设置好,并且保存起来。默认
的设置如下图中红色圆圈所示:
- 52 -
FS44B0X开发板使用手册 V3.0
第七章 建立UCLINUX开发环境
7.1 UCLINUX简介
UCLINUX是专门用于微控制领域的嵌入式LINUX操作系统它已被成功移植到多种平台上
运行它是针对没有MMU 的处理器而设计的UCLINUX符合GNU/GPL 公约完全开放源代码它采
用ROMFS文件系统体积小巧精简深受广大微控制领域的用户的喜爱
uClinux 的官方网站:
7.2 如何建立UCLINUX开发环境
1) uClinux源码
从光盘中的uClinux源码和工具目录下获得 2
2)编译工具
3) uClinux内核源码包
2
4) 解压源码包
解压uClinux源码程序包
tar xjvf 2
会生成一个uClinux-040408的目录
5) 安装交叉编译工具
# ls –l
该命令显示文件的各种属性,如果该脚本文件属性的不是可执行的,
则还需要输入命令:# chmod 755
以将其属性改为可执行属性,然后通过键入命令:
#sh ./
执行后/usr/local/bin/路径下有gcc, g++, binutils, genromfs, flthdr 和elf2flt等各种实用
工具。
7.3 UCLINUX内核的编译步骤
- 53 -
FS44B0X开发板使用手册 V3.0
1) cd uClinux-040408 ;进入uClinux-040408目录
2) make menuconfig ;进入菜单方式配置指令
3) 进入如下界面
图10-3-1 目标平台配置
4)选择平台类型和所使用的库,在Vendor/Porduct下选择Samsung/S3C44B0X
图 10-3-2
5) 如果想自己配置内核和用户应用,可以选择Customize Kernel Settings (NEW)和
Customize Vendor/User
Settings(NEW)
不选,则按默认的配置
6)接下来键入命令: make zImage ;生成内核映像
7 ) 键入命令:make
通过各个目录的Makefile文件进行,会在各目录下生成一大堆目标文件。
上述步骤完成后,就完成了对uClinux源码的编译工作。整个编译过程视计算机运行速
度而定。
当内核的编译工作完成之后,会在arch/armnommu/boot/的目录找到zImage文件。.
- 54 -
FS44B0X开发板使用手册 V3.0
zImage文件是可以烧写到FLASH中运行的代码,怎样烧写,请看上面章节关于uClinux
的烧写
7.4 利用FTP下载应用程序到目标系统
7.4.1
通过以太网接口从网络添加用户程序到目标系统运行,显然比前面所介绍的方法方便
得多,特别是在用户应用程序的调试过程中,若每做一点修改都要求重新编译内核并烧写
入FLASH存储器运行,其工作量是可想而知的。
利用UCLINUX操作系统的强大的网络功能,我们可以很方便的通过以太网,在
UCLINUX目标系统和宿主机(即PC机,可以是LINUX系统,也可以是WINDOWS系统)
进行文件传输,这里主要是通过FTP来传输文件的,当然在配置UCLINUX内核过程中要
选择FTP和其他的一些网络服务,这些选项是默认的,无须在选择。
既然要通过FTP来传输文件,自然需要有FTP服务器和FTP客户端,在这里我们用PC
机充当FTP服务器,很自然,就需要安装FTP服务器程序,如果PC机上运行的WINDOWS
系统,可以用光盘里提供的WFTP程序,关于它的设置在第五章有详细的说明。如果运行
的LINUX系统,默认安装了FTP服务,
当目标系统的UCLINUX运行后,运行宿主机(PC机)的FTP服务器,进行双向的文件传
输。
但由于目前所使用的UCLINUX操作系统内核采用ROMFS作为其根文件系统,当目
标系统的UCLINUX启动运行以后,其目录大多数是建在FLASH存储器中,因而是不可写
的,只有/var、/tmp等少数几个目录是建立在SDRAM,是可读写的,但若目标系统掉电,
内容就丢失了,因此只能作为应用程序调试之用,当应用程序调试完成后,还应将其写入
FLASH存储器。当然,若能在目标系统中使用JFFS/JFFS2,用以代替ROMFS作为其根文件
系统,则整个目标系统就像有磁盘一样方便,用户应用程序的加载再也不用像前面介绍的
方式进行了。关于JFFS/JFFS2文件系统的建立,请读者参考相关技术资料,在此仅描述如
何将用户程序通过局域网,从FTP服务器(运行LINUX或Windows主机)上,传输到运行
UXLINUX的目标系统(FTP客户机)并执行的过程:
注意要将目标系统与宿主机(PC机)的IP设置在同一网段中,在宿主机的任意目录下编
写应用程序,并用交叉编译工具生成flat格式的文件。
- 55 -
FS44B0X开发板使用手册 V3.0
7.4.2
下面的操作的宿主机运行的是WINDOWS,FTP 服务器是WFTP,内核源码包是
2
步骤:
启动宿主机(PC机)上的WFTP服务器(如何设置WFTPD这个FTP服务器,请参考附录)
启动目标系统的UCLINUX,通过超级终端,在命令提示符下输入:
ifconfig eth0 192.168.3.100
ifconfig命令用于显示及设置目标系统的网卡配置,例如,IP地址,子网掩码,IRQ及
IO Port等。在上述命令中,参数eth0代表目标系统的网络设备,IP地址192.168.3.50为目
标系统的IP地址,注意应与宿主机在同一网段内(此时宿主机的IP地址为:192.168.3.80),
当然目标系统和宿主机的IP地址可以自由的设定,只要保证它们在同一个网段就行了
执行如下命令
ifconfig –all
就可以看到目标系统的IP地址配置信息了,显示信息见下图:
- 56 -
FS44B0X开发板使用手册 V3.0
7.4.3 测试目标
在PC机上运行PING 192.168.3.100 , PING成功后显示信息如下图:
- 57 -
FS44B0X开发板使用手册 V3.0
7.4.4 进入SDRAM区域
输入命令 cd var
7.4.5 FTP 192.168.3.80
输入命令后出现如下界面:
- 58 -
FS44B0X开发板使用手册 V3.0
此时输入宿主机上的合法用户名及密码,如果是按手册上安装的WFTPD,用户名:efun,
密码:efun,
成功后显示信息如下:
- 59 -
FS44B0X开发板使用手册 V3.0
在ftp>下输入命令:ls ,接着会显示FTP服务器的根目录下的文件,显示如下:
- 60 -
FS44B0X开发板使用手册 V3.0
这里请用户注意:在用FTP进行文件传输的时候,一定要选好文件传输的模式,FTP
缺省模式为二进制模式,但是为了保险起见,还是手动把传输模式显式改写为二进制模式。
通常的TXT,HTMLl和绝大多数PS文件都是文本格式的,而其他的可执行文件,压缩文
件都是二进制格式。两种格式之间要用ascii和binary命令切换,两者都可以适当缩写。
在ftp>下输入命令:binary ;采用二进制文件传输
将已编译好的可执行程序ledshow(跑马灯程序),放到FTP服务器的根目录下.
在ftp>下输入命令:get hello ;从FTP服务器的根目录下载文件
- 61 -
FS44B0X开发板使用手册 V3.0
在ftp>下输入命令:bye ;退出FTP
7.4.7
在“#”提示符下,输入命令:ls
- 62 -
FS44B0X开发板使用手册 V3.0
此时,可执行文件hello已传输至目录/var,但文件的可执行属性未被设置,添加文件
的可执行属性,键入命令:
chmod 755 hello
chmod是一个文件权限修改的命令,在文件创建的时候会自动设置存取权限,若是这
些默认权限无法适合企业环境的需求,就可以利用chmod命令来修改存取权限。通常在权
限修改的时候可以用两种方式表示权限类,数字表示法和文字表示法。
这里采用的是数字表示法
然后执行程序 hello,命令如下:
./hello
超级终端显示信息如下:
- 63 -
FS44B0X开发板使用手册 V3.0
上面的HELLO程序是用在FS4510板子上的,所以打印信息没有改,在UCLINUX下
的程序很多是可以通用的(只要不涉及到具体的硬件)。
至于运行其他的应用程序也是类似。
显然,这种方法在应用程序的开发中是比较有用的,使用这种方式可以使用户在宿主
机的开发环境下,编译代码,但编译出来的flat格式的文件并没有放到硬件目标系统的
FLASH存储器,而是在系统的SDRAM中运行,这就大大节省了调试的时间,内核编译只
需要进行一次,使开发人员能够将更多的精力投入到应用程序的开发中来。
- 64 -
FS44B0X开发板使用手册 V3.0
第八章FS44B0X如何恢复到出厂设置
8.1重新烧写BIOS
FS44B0X开发板出厂之前BIOS已经写好,如果在您的使用过程中不慎冲掉,按以下
步骤重新烧写。
将光盘里的“目标代码”子目录copy到硬盘上,譬如目录c: 。
连接SUPERJTAG,将14芯排线连接开发板和SUPERJTAG板的WIGGLER接口JP2
上面,打开电源;
在FLASHPGM里点击program;
在Browse中找到“目标代码”文件夹下的FS44B0X_ 文件;
点击Erase Target Flash Sector(s.) Before Pro前面的小窗口,使其前面打勾;
点击Program按键开始烧写,5秒钟左右即可烧完;
然后点击Close按键关闭烧写界面,这时FS44B0开发板上的蜂鸣器会发出“嘀”一声
响的同时D1、D2、D3会从右到左快速循环闪烁,最后D3在不停闪烁,标志着bios已
经烧好。
8.2 BIOS备份
打开DNW,连接好串口connect;
在Configuration下点击options确定超级终端115200;
重新上电或者按复位键,超级终端会出现提示信息;
在提示符下输入backup,回车,
在提问下输入y,屏幕会出现BIOS拷贝并编程成功的信息;
原来在FLASH 0地址的BIOS就会拷贝到FLASH里以1f0000地址开始的空间里。
8.3
进行默认系统设置,在BIOS命令提示窗口下敲入命令defset然后回车,按复位键后可
以看到如下的提示信息,其中圈了红色圆圈的部分使默认系统设置:
- 65 -
FS44B0X开发板使用手册 V3.0
第九章 FS44B0X如何烧写UCLINUX
9.1 烧写前准备
连接好串口comect和网线(交叉网线),开启电源,在里面执行BIOS命令defset,
然后复位重启系统;
9.2 烧写中断向量表
z 将光盘里的“UCLINUX_FS44B0X”文件夹复制到硬盘上;
z 在超级终端里输入ap(注意ap是小写)
然后在“UCLINUX_FS44B0X”文件夹下双击批处理文件:(将通过网
口下载到SDRAM);
z 在超级终端里等待下载结束,然后执行命令:
>prog 0回车然后按“y”即可将把中断向量表烧写到FLASH 0地址。
- 66 -
FS44B0X开发板使用手册 V3.0
9.3 烧写UCLINUX内核:
在超级终端里输入netload,(注意netload是小写)
然后在“uCLinux_FS44B0”文件夹下双击批处理文件FS44B0_:(将
通过网口下载到SDRAM)
在超级终端里等待下载结束,然后执行命令:
> prog 10000回车然后按“y”即可把烧写到FLASH 10000地址。
9.4 烧写UCLINUX根文件系统
在超级终端里输入netload,(注意netload是小写)
然后在upload里双击批处理文件FS44B0_romfs_:(将通过网口下载
到SDRAM),在超级终端里等待下载结束,然后执行命令:
> prog 100000回车然后按“y”即可把此文件烧写到FLASH 100000地址。
- 67 -
FS44B0X开发板使用手册 V3.0
9.5 输入命令MRUN就可运行UCLINUX
第十章 WFTPD配置(FTP服务器)
10.1运行
运行,选取
LOGGING
菜单
LOG OPTIONS
项,界面如下:
- 68 -
FS44B0X开发板使用手册 V3.0
10.2
选中
Enable Logging Gets Logins Commands
,这些选项当下载文件时会显示详细的记录
- 69 -
FS44B0X开发板使用手册 V3.0
10.3
选择Security 菜单下的Users/rights
10.4 建立新用户
点击New User…
- 70 -
FS44B0X开发板使用手册 V3.0
10.5 输入用户名efun
输入别的名字也可以efun 是缺省的用户名。(当然您可以改成任意的用户名)
- 71 -
FS44B0X开发板使用手册 V3.0
10.6 输入密码efun 点击OK
- 72 -
FS44B0X开发板使用手册 V3.0
10.7
输入路径c:upload 点击done 就完成了WFTPD 的设置下次运行WFTPD 时就不用再
输入任何东西它会自动启动包含一个efun 用户的FTP SERVER服务
第十一章 相关的术语解释
11.1 XMODEM协议
XMODEM 协议是一种使用拨号调制解调器的个人计算机通信中广泛使用的异步文件
运输协议。这种协议以128 字节块的形式传输数据,并且每个块都使用一个校验和过程来
进行错误检测。使用PC 机传送文件的早期协议。在数据传送过程中使用1 字节的控制序
列,以便通讯双方对传送过程进行监视。如果接收方关于一个块的校验和与它在发送方的
校验和相同时,接收方就向发送方发送一个认可字节。然而,这种对每个块都进行认可的
- 73 -
FS44B0X开发板使用手册 V3.0
策略将导致低性能,特别是具有很长传播延迟的卫星连接的情况时,问题更加严重。
使用循环冗余校验的与XMODEM 相应的一种协议称为XMODEM -CRC 。还有一种
是XMODEM-1K ,它以1024 字节一块来传输数据。ZMODEM 是最有效的一个XMODEM
版本,它不需要对每个块都进行认可。事实上,它只是简单地要求对损坏的块进行重发。
ZMODEM 对按块收费的分组交换网络是非常有用的。不需要认可回送分组在很大程度上
减少了通信量。
YMODEM 也是一种XMODEM 的实现。它包括XMODEM -1K 的所有特征,另外在
一次单一会话期间为发送一组文件,增加了批处理文件传输模式。
11.2 NAND FLASH和NOR FLASH详解
NOR 和NAND 是现在市场上两种主要的非易失闪存技术。INTD 于1988 年首先开发
出NOR FLASH 技术,彻底改变了原先由EPROM 和EEPROM 一统天下的局面。紧接着,
1989 年,东芝公司发表了NAND FLASH 结构,强调降低每比特的成本,更高的性能,并
且象磁盘一样可以通过接口轻松升级。但是经过了十多年之后,仍然有相当多的硬件工程
师分不清NOR 和NAND 闪存。
“FLASH存储器”经常可以与“NOR 存储器”互换使用。许多业内人士也搞不清楚
NAND 闪存技术相对于NOR 技术的优越之处,因为大多数情况下闪存只是用来存储少量
的代码,这时NOR 闪存更适合一些。而NAND 则是高数据存储密度的理想解决方案。NOR
的特点是芯片内执行(xIP , cxecutc hi Place ) ,这样应用程序可以直接在flash 闪存内运行,
不必再把代码读到系统RAM 中。NOR 的传输效率很高,在1-4MB 的小容量时具有很高
的成本效益,但是很低的写入和擦除速度大大影响了它的性能。
NAND 结构能提供极高的单元密度,可以达到高存储密度,并且写入和擦除的速度也
很快。应用NAND 的困难在于FLASH 的管理和需要特殊的系统接口。
性能比较
flash 闪存是非易失存储器,可以对称为块的存储器单元块进行擦写和再编程。任何flash
器件的写入操作只能在空或已擦除的单元内进行,所以大多数情况下,在进行写入操作之
前必须先执行擦除。NAND 器件执行擦除操作是十分简单的,而NOR 则要求在进行擦除
前先要将目标块内所有的位都写为0 。
由于擦除NOR 器件时是以64-128KB 的块进行的,执行一个写入/擦除操作的时间为
- 74 -
FS44B0X开发板使用手册 V3.0
55ms ,与此相反,擦除NAND 器件是以8-32KB 的块进行的,执行相同的操作最多只需
要4ms 。执行擦除时块尺寸的不同进一步拉大了NOR 和NADN 之间的性能差距,统计
表明,对于给定的一套写入操作(尤其是更新小文件时),更多的擦除操作必须在基于NOR
的单元中进行。这样,当选择存储解决方案时,设计师必须权衡以下的各项因素。
NOR 的读速度比NAND 稍快一些。
NAND 的写入速度比NOR 快很多。
NAND 的4ms 擦除速度远比NOR 的55 快。
大多数写入操作需要先进行擦除操作。
NAND 的擦除单元更小,相应的擦除电路更少。
接口差别
NOR FLASH带有SRAM 接口,有足够的地址引脚来寻址,可以很容易地存取其内部
的每一个字节。
NAND 器件使用复杂的FO 口来串行地存取数据,各个产品或厂商的方法可能各不相
同。8 个引脚用来传送控制、地址和数据信息。
NAND 读和写操作采用512 字节的块,这一点有点像硬盘管理此类操作,很自然地,
基于NAND 的存储器就可以取代硬盘或其他块设备。
容量和成本
NAND FLASH 的单元尺寸几乎是NOR 器件的一半,由于生产过程更为简单,NAND
结构可以在给定的模具尺寸内提供更高的容量,也就相应地降低了价格。
NOR FLASH占据了容量为1-16MB 闪存市场的大部分,而NAND FLASH只是用在8
-128MB 的产品当中,这也说明NOR 主要应用在代码存储介质中,NAND 适合于数据存
储,NAND 在ACTFLASH 、SECURE DIGITAL 、PC CARDS 和MMC存储卡市场上所
占份额最大。
可靠性和耐用性
采用FLASH介质时一个需要重点考虑的问题是可靠性。对于需要扩展MTBF 的系统
来说,FLASH是非常合适的存储方案。可以从寿命(耐用性)、位交换和坏块处理三个方
面来比较NOR 和NAND 的可靠性。
寿命(耐用性)
在NAND 闪存中每个块的最大擦写次数是一百万次,而NOR 的擦写次数是十万次。
- 75 -
FS44B0X开发板使用手册 V3.0
NAND 存储器除了具有10 比1 的块擦除周期优势,典型的NAND 块尺寸要比NOR 器
件小8 倍,每个NAND 存储器块在给定的时间内的删除次数要少一些。
位交换
所有FLASH器件都受位交换现象的困扰。在某些情况下(很少见,NAND 发生的次数
要比NOR 多),一个比特位会发生反转或被报告反转了。
一位的变化可能不很明显,但是如果发生在一个关键文件上,这个小小的故障可能导致
系统停机。如果只是报告有问题,多读几次就可能解决了。
当然,如果这个位真的改变了,就必须采用错误探测/错误更正(EDC / ECC )算法。
位反转的问题更多见于NAND 闪存,NAND 的供应商建议在使用NAND 闪存的时候,同
时使用EDC / ECC 算法。
这个问题对于用NAND 存储多媒体信息时倒不是致命的。当然,如果用本地存储设备
来存储操作系统、配置文件或其他敏感信息时,必须使用EDC / ECC 系统以确保可靠性。
坏块处理
NAND 器件中的坏块是随机分布的。以前也曾有过消除坏块的努力,但发现成品率太低,
代价太高,根本不划算。
NAND 器件需要对介质进行初始化扫描以发现坏块,并将坏块标记为不可用。在已制
成的器件中,如果通过可靠的方法不能进行这项处理,将导致高故障率。
易于使用
可以非常直接地使用基于NOR 的闪存,可以像其他存储器那样连接,并可以在上面直
接运行代码。
由于需要FO 接口,NAND 要复杂得多。各种NAND 器件的存取方法因厂家而异。在
使用NAND 器件时,必须先写入驱动程序,才能继续执行其他操作。向NAND 器件写入
信息需要相当的技巧,因为设计师绝不能向坏块写入,这就意味着在NAND 器件上自始至
终都必须进行虚拟映射。
软件支持
当讨论软件支持的时候,应该区别基本的读/写/擦操作和高一级的用于磁盘仿真和闪
存管理算法的软件,包括性能优化。
在NOR 器件上运行代码不需要任何的软件支持,在NAND 器件上进行同样操作时,
通常需要驱动程序,也就是内存技术驱动程序(MTD ) , NAND 和NOR 器件在进行写入和
擦除操作时都需要MTD 。
- 76 -
FS44B0X开发板使用手册 V3.0
使用NOR 器件时所需要的MTD 要相对少一些,许多厂商都提供用于NOR 器件的更
高级软件,这其中包括M 一SYSTEM 的TRUEFFS 驱动,该驱动被Wind River system 、
Microsoft 、QNX Soflwal ℃ System 、Sylllbian 和Intel 等厂商所采用。
驱动还用于对DISKONSHIP产品进行仿真和NAND 闪存的管理,包括纠错、坏块处理
和损耗平衡。
11.3 SDRAM存储器
与FLASH存储器相比较,SDRAM不具有掉电保持数据的特性,但其存取速度大大高
于FLASH存储器,且具有读/写的属性,因此,SDRAM在系统中主要用作程序的运行空间,
数据及堆栈区。当系统启动时,CPU首先从复位地址0x0处读取启动代码,在完成系统的
初始化后,程序代码一般应调入SDRAM中运行,以提高系统的运行速度,同时,系统及
用户堆栈、运行数据也都放在SDRAM中。
K4S641632的引脚信息及其他的相关信息请参考K4S641632的datasheet。其他类型
SDRAM的特性与使用方法与之类似,用户可根据自己的实际需要选择不同的器件。
K4S641632为16位数据宽度,单片容量为8MB。
第十二章 FS44B0X开发板使用FAQ
12.1如何重新烧写BIOS?
请参看下一章的“FS44B0X如何恢复到出厂设置”
12.2 为何超级终端不能输入?
将超级终端com1或com2属性/端口设置中的流量控制设置为---无
12.3为何超级终端里,BIOS不接受AP等指令?
BIOS的指令都是小写,只能输入 ap等指令
- 77 -
FS44B0X开发板使用手册 V3.0
12.4为何网络PING不通?
请将PC机的IP地址设置为 192.168.3.22 ,子网掩码设置为255.255.255.0, FS44B0的bios启
动后,在超级终端里输入ap并回车。再在WINDOWS里运行PING192.168.3.100 -t ,即可
PING通。
12.5 为何SUPERJTAG连不上目标板?
这个一般是因为连线没有连好,或者计算机BIOS里面没有把并口设置成EPP模式,或者
是设置不正确。请记住一定要在里面看到检测到ARM7TDMI才说明硬件没有问
题。发现有些笔记本无法使用SUPERJTAG,但台式机一般都没有问题,所以最好用台式机
来调试。
12.6 FLASHPGM无法进行FLASH烧写怎么办?
首先请确认您使用的FLASHPGM已经解密了,正确设置通讯电缆类型、并口端口、OCD
配置文件等。请参阅FLASHPGM如何使用,观看多媒体演示文件。
- 78 -
2024年9月1日发(作者:肇冬梅)
FS44B0X开发板使用手册 V3.0
FS44B0X开发板使用手册
深圳市优龙科技有限公司 2005-3-1
第一章 FS44B0X开发套件的组成...................................................................................................................- 4 -
1.1开发套件所提供的硬件详细清单.....................................................................................................- 4 -
1.2 开发套件所提供的软件详细清单....................................................................................................- 5 -
1.3 板上接口和资源清单........................................................................................................................- 6 -
1.4 板上硬件资源分配列表....................................................................................................................- 6 -
1.4.1 系统片选及地址空间............................................................................................................- 6 -
1.4.2 中断分配...............................................................................................................................- 6 -
1.4.3 系统板设定:........................................................................................................................- 7 -
1.5 板上接口和指示灯功能说明............................................................................................................- 7 -
1.5.1 接口板...................................................................................................................................- 7 -
第二章 系统硬件描述.....................................................................................................................................- 8 -
2.1板上的电源电路................................................................................................................................- 8 -
2.2 复位电路...........................................................................................................................................- 8 -
2.3 CPU单元............................................................................................................................................- 9 -
2.4 SDRAM电路......................................................................................................................................- 10 -
2.- 11 -
2.6 RTL8019网络接口电路...................................................................................................................- 12 -
2.7 USBDEVICE(PDIUSBD12)接口电路..............................................................................................- 13 -
2.8 异步串口接口电路.........................................................................................................................- 14 -
2.9 LCD接口电路..................................................................................................................................- 14 -
2.10 IIS音频输出和放大电路.............................................................................................................- 15 -
2.11 按键、蜂鸣器和LED电路............................................................................................................- 15 -
2.12 JTAG接口电路..............................................................................................................................- 17 -
2.13 IIC存储器(KS24C08)电路.......................................................................................................- 17 -
第三章 开发板资源测试方法和步聚............................................................................................................- 18 -
3.1. 如何运行测试程序........................................................................................................................- 18 -
3.3 内存SDRAM读写自测试..................................................................................................................- 21 -
3.4 PWM脉宽调试和蜂鸣器测试...........................................................................................................- 21 -
3.5 IIC总线
EEPROM读写测试.............................................................................................................- 22 -
3.6 模数转换器ADC测试......................................................................................................................- 23 -
3.7 IIS音频播放WAV文件测试...........................................................................................................- 24 -
3.8 USB DEVICE(PDIUSBD12)测试....................................................................................................- 25 -
3.9 黑白STN液晶屏测试......................................................................................................................- 26 -
3.10 黑白STN液晶屏显示英文字符测试............................................................................................- 27 -
3.11 4级灰度STN液晶屏测试.............................................................................................................- 28 -
3.12 16级灰度STN液晶屏测试...........................................................................................................- 29 -
3.13 256色STN液晶屏测试.................................................................................................................- 30 -
- 1 -
FS44B0X开发板使用手册 V3.0
3.14 外部电平中断测试........................................................................................................................- 31 -
第四章ARM编译调试开发平台的搭建..........................................................................................................- 33 -
4.1 安装ADS1.20编译调试环境..........................................................................................................- 33 -
4.2 安装并运行ARM-JTAG调试代理.- 33 -
4.3 为ARM-JTAG调试代理正确配置- 34 -
4.4 使用SUPERJTAG在ADS1.20环境下进行仿真调试......................................................................- 36 -
第五章 如何使用FLASHPGM快速烧写- 37 -
5.1计算机的设置..................................................................................................................................- 37 -
5.2 FLASHPGM的设置............................................................................................................................- 39 -
5.3 设置通信端口.................................................................................................................................- 40 -
5.4 选择编程文件类型.........................................................................................................................- 41 -
5.5 点击编程按钮.................................................................................................................................- 41 -
第六章FS44B0X_BIOS的烧写与使用............................................................................................................- 43 -
6.1 FS44B0X_BIOS编译说明.................................................................................................................- 43 -
6.2 用BIOS通过网口烧写应用程序UC/OS-II到FLASH里..............................................................- 43 -
6.3 用BIOS通过串口烧写应用程序UC/OS-II到FLASH里..............................................................- 45 -
6.4 用BIOS通过网口来快速运行和调试应用程序- 46 -
6.5 用BIOS通过串口来全速运行和调试应用程序- 47 -
6.6 FS44B0X_BIOS命令简表.................................................................................................................- 48 -
6.7 FS44B0X_BIOS命令详解.................................................................................................................- 49 -
第七章 建立UCLINUX开发环境....................................................................................................................- 53 -
7.1 UCLINUX简介..................................................................................................................................- 53 -
7.2 如何建立UCLINUX
开发环境..........................................................................................................- 53 -
7.3 UCLINUX内核的编译步骤...............................................................................................................- 53 -
7.4 利用FTP下载应用程序到目标系统..............................................................................................- 55 -
7.- 55 -
7.- 56 -
7.4.3 测试目标.............................................................................................................................- 57 -
7.4.4 进入SDRAM区域............................................................................................................- 58 -
7.4.5 FTP 192.168..- 58 -
7.- 62 -
第八章FS44B0X如何恢复到出厂设置..........................................................................................................- 65 -
8.1重新烧写- 65 -
8.2 BIOS备份........................................................................................................................................- 65 -
- 65 -
第九章 FS44B0X如何烧写- 66 -
9.1 烧写前准备.....................................................................................................................................- 66 -
9.2 烧写中断向量表.............................................................................................................- 66 -
9.3 烧写UCLINUX内核:......................................................................................................................- 67 -
9.4 烧写UCLINUX根文件系统..............................................................................................................- 67 -
9.5 输入命令MRUN就可运行- 68 -
第十章 WFTPD配置(FTP服务器)..............................................................................................................- 68 -
10.1运行..........................................................................................................................- 68 -
- 69 -
- 70 -
10.4 建立新用户...................................................................................................................................- 70 -
- 2 -
FS44B0X开发板使用手册 V3.0
10.5 输入用户名- 71 -
10.6 输入密码efun 点击OK................................................................................................................- 72 -
- 73 -
第十一章 相关的术语解释...........................................................................................................................- 73 -
11.1 XMODEM协议..................................................................................................................................- 73 -
11.2 NAND FLASH和NOR FLASH详解...................................................................................................- 74 -
11.3 SDRAM存储器................................................................................................................................- 77 -
第十二章 FS44B0X开发板使用- 77 -
12.1如何重新烧写BIOS?......................................................................................................................- 77 -
12.2 为何超级终端不能输入?............................................................................................................- 77 -
12.3为何超级终端里,BIOS不接受AP等指令?..............................................................................- 77 -
12.4为何网络PING不通?...................................................................................................................- 78 -
12.5 为何SUPERJTAG连不上目标板?................................................................................................- 78 -
12.6 FLASHPGM无法进行FLASH烧写怎么办?...................................................................................- 78 -
- 3 -
FS44B0X开发板使用手册 V3.0
第一章 FS44B0X开发套件的组成
1.1开发套件所提供的硬件详细清单
FS44B0X开发套件包括
1) 一块已测试好的FS44B0X开发板
2)一个Super JTAG调试头
3)一条串口线(两边都是母头,一对一)
4)一条并口线(一边是公头一边是母头,一对一)
5)条网线(交叉线)
6 一张FS44B0光盘
7 一个+9V直流电源
8)一个包装盒
图1-1
- 4 -
FS44B0X开发板使用手册 V3.0
1.2 开发套件所提供的软件详细清单
1) ADS1.20安装程序(评估版);
2) 使用SuperJTAG并支持ADS1.20和SDT2.51的JTAG调试软件ARMJtagDebugFinal;
3) 烧写flash的工具软件flashpam2.2.4(评估版)以及适用于S3C44B0X的OCD配置文
件;
4) 串口工具软件、、;
5) LCD图片转换和字模转换工具软件;
6) FS44B0 BIOS源代码(ADS1.20的项目文件,包含RTL8019驱动和TFTP协议源码);
7) FS44B0测试程序(ADS1.20的项目文件,包含全部源代码),具有如下功能测试:
内存(SDRAM)读写自测试、PWM输出蜂鸣器测试、IIC总线EEPROM读写测试、
模数转换ADC测试、IIS音频播放测试、USB从设备PDIUSBD12测试、
黑白STN液晶屏测试、4级灰度STN液晶屏测试、16级灰度液晶屏测试、256色液晶
屏测试、
STN屏字符串显示测试、外部中断测试,以上测试均提供源码;
8) 三星提供的S3C44B0X标准测试程序,经修改后可以运行在FS44B0X开发板上面:
8) uC/OS-II V2.76测试(ADS1.20的项目文件,五个任务的演示Demo,提供全部源码)
9) uclinux源码包和编译器等;
10) 使用SuperJTAG进行硬件仿真DEBUG的演示动画;
11) 使用FLASHPGM烧写Flash的演示动画;
12) FS44B0X原理图(pdf格式);
13) FS44B0X开发板使用手册(pdf格式)
- 5 -
FS44B0X开发板使用手册 V3.0
1.3 板上接口和资源清单
中央处理器
── S3C44B0X (Samsung),ARM7TDMI
外部存储器
── 2M Bytes Nor Flash (SST39VF1601,用户可自己更换为4M字节的SST39VF3201)
── 8M Bytes SDRAM (K4S641632H或者是HY57V641620,用户可更换为16M字节的
扩展网口
── 10M网口,RTL8019AS
LCD接口
──支持单色、4级灰度、16级灰度、256色STN液晶屏,最大支持640x480/256色STN
屏
USB Device接口
── USB1.1规范,PDIUSBD12
串口
── 两个标准三线RS232接口,其中COM2支持硬件流控制
时钟源
── 内部实时时钟(备有掉电电池)
IDE接口
音频输出
── CS4334+TDA7050
四个小按键,三个LED
一个蜂鸣器
线性电源供电,输入直流电压范围是+9V
1.4 板上硬件资源分配列表
1.4.1 系统片选及地址空间
nGCS0【0x0000_0000】:FLASH(SST39VF1601)
nGCS1【0x0200_0000】:USB DEVICE(D12)
nGCS2【0x0400_0000】:
nGCS3【0x0600_0000】:RTL8019AS
nGCS4【0x0800_0000】:
nGCS6【0x0C00_0000】:SDRAM(K4S641632H或者是HY57V641620)
1.4.2 中断分配
INT0:USB D12
- 6 -
FS44B0X开发板使用手册 V3.0
INT1:RTL8019
INT4:KEY1
INT5:KEY2
INT6:KEY3
INT7:PKEY4
1.4.3 系统板设定:
BANK0总线宽度为16 bit;
Little Endian模式;
跳线出厂默认设置:
JP2,JP3接上短路帽
J8 : 将短路帽插在1,2上
1.5 板上接口和指示灯功能说明
1.5.1 接口板
GOODLINK:USB从设备(PDIUSBD12)的工作状态指示灯。
D1:由IO口GPC1控制的指示灯。
D2:由IO口GPC2控制的指示灯。
D3:由IO口GPC3控制的指示灯。
RX:10M网口RX发送指示灯。
LINK:10M网口Link联机指示灯。
POWER:5V直流电源指示灯。
JTAG:14PIN JATG调试接口。
COM1:DB9,COM1接口。
COM2:DB9,COM2接口。
USB:USB-B型接口,USB DEVICE接口
PHONEJACK:IIS立体声输出音频插座。
LCD:20PIN插座,LCD接口。
IDE:40PIN插座,IDE接口
DC_IN:直流电源输入插座,输入电压是+9V。
- 7 -
FS44B0X开发板使用手册 V3.0
NET:网口插座。
第二章 系统硬件描述
2.1板上的电源电路
CPU的IO和外设所需要的3.3V电压是采用LM1117-3.3产生3.3V电源供给的,CPU
的核电压2.5V采用的是LM1117-2.5V相关电路如下:
2.2 复位电路
为了提高可靠性,复位电路没有采用简单的阻容复位电路,而是采用了专用复位芯片,具
体电路如下:
- 8 -
FS44B0X开发板使用手册 V3.0
2.3 CPU单元
CPU的相关电路如下,采用的是16位数据总线模式,系统时钟采用外接晶体起振,再
用内部
PLL倍频到需要的频率:
- 9 -
FS44B0X开发板使用手册 V3.0
2.4 SDRAM电路
SDRAM电路如下:
- 10 -
FS44B0X开发板使用手册 V3.0
2.5 NORFlASH
考虑到NORFLASH的货源和价格因素,NORFLASH电路也采用了兼容设计方案,根
据其周围焊接不同的电阻,可以支持多种不同型号与容量的NORFLASH,支持SST39VF160
(与AM29LV320兼容)具体电路如下:
- 11 -
FS44B0X开发板使用手册 V3.0
2.6 RTL8019网络接口电路
这里的RTL8019是采用8位总线模式,两个指示灯指示一个连接状态和接受数据包,
电路如下:
- 12 -
FS44B0X开发板使用手册 V3.0
2.7 USBDEVICE(PDIUSBD12)接口电路
PDIUSBD12电路如下,一个LED指示连接状态:
- 13 -
FS44B0X开发板使用手册 V3.0
2.8 异步串口接口电路
异步串行口电路如下,支持硬件流控制。如果焊接上U2的就可以支持硬件流控制,但默认
情况下是不焊这个芯片的,用户根据需要可以自己焊上这个芯片:
2.9 LCD接口电路
LCD接口电路如下:
- 14 -
FS44B0X开发板使用手册 V3.0
2.10 IIS音频输出和放大电路
IIS音频接口采用专用接口芯片CS4334,输出的两路音频再通过TDA7050放大输出,
在输出端加了两个22欧姆的小电阻进行保护,防止短路烧毁功率放大器。相关电路如下:
2.11 按键、蜂鸣器和LED电路
按键和LED电路如下,按键为上拉接到外部中断引脚EXINT4、EXINT5、EXINT6、
EXINT7,按下按键就可以产生低电平中断:
- 15 -
FS44B0X开发板使用手册 V3.0
蜂鸣器电路如下:
- 16 -
FS44B0X开发板使用手册 V3.0
2.12 JTAG接口电路
JTGA电路使用ARM公司推荐的14芯片JTAG接口,引脚排列如下:
2.13 IIC存储器(KS24C08)电路
IIC存储器电路如下:
- 17 -
FS44B0X开发板使用手册 V3.0
第三章 开发板资源测试方法和步聚
用户拿到开发板套件之后,请首先按照如下步骤进行测试,以验证开发板好坏。每一块
开发板在发货之前,均烧写了BIOS,设置好了初始化参数;
将9V电源接到板子上,用直连串口线、交叉网线将板子和PC机连接起来
在PC机上DNW(0.50),设置为:COM1,115200
3.1. 如何运行测试程序
打开开发板上面的开关,上面的LED指示灯将会亮起。从PC机的DNW上面看到如下的
信息:
- 18 -
FS44B0X开发板使用手册 V3.0
上图信息是说明检测到了你的PC机网络设置为:
IP地址:(譬如设置IP为192.168.3.100)
子网掩码:255.255.255.0
在DNW里面输入BIOS命令NETRUN,启动TFTP协议准备从PC机上下载目标代码;
在FS44B0X_TEST FS44B0X_TEST_DATADEBUGREL目录下运行
FS44B0X_,将目标代码文件FS44B0X_通过网口传到开发板SDRAM
上从0XC008000开始的地方;
在DNW里面您将看到如下信息:
- 19 -
FS44B0X开发板使用手册 V3.0
上面提示信息显示:IP地址是192.168.3.100,下载的代码放置在SDRAM中从0xc008000
开始的地址,当下载结束后,会立即执行下载的程序,显示信息如下:
- 20 -
FS44B0X开发板使用手册 V3.0
3.3 内存SDRAM读写自测试
按“1”然后回车进行内存(SDRAM)读写自测试,提示信息如下:
3.4 PWM脉宽调试和蜂鸣器测试
按“2”然后回车测试PWM(脉宽调制)输出并驱动一个蜂鸣器,注意JP1上一定要插
上一个短路块,现在就可以听到蜂鸣器的鸣叫声了,按“+”增加蜂鸣器的频率,按“-”
减小蜂鸣器的频率,按“ESC”退出本测试返回到主测试菜单,提示信息如下:
- 21 -
FS44B0X开发板使用手册 V3.0
3.5 IIC总线EEPROM读写测试
按“3”并回车测试IIC总线EEPROM读写,本测试使用了中断,将EEPROM中写入
连续的数字再读出并显示出来。由于 V0.50A对中文支持不好,所以下面提示信
息中的中文字符显示有乱码。这段中文的意思是如果要运行中断程序,必须将目标代码烧
入到Flash中一次,因为S3C44B0的中断会首先跳转到FLASH的起始几个地址,然后在那
里经跳转最后才到SDRAM中的中断服务程序。因为BIOS不支持中断,FLASH的起始地
址没有中断跳转向量表。所以只需要将本程序烧写到FLASH中一次,Flash就有了中断向
量表了。以后调试本程序或者是运行本程序,均不需要再烧写FLASH,通过网口或者是串
口下载到SDRAM中就可以运行中断了,提示信息如下:
- 22 -
FS44B0X开发板使用手册 V3.0
3.6 模数转换器ADC测试
按“4”并回车进行模数转换器(ADC)功能测试,因为S3C44B0X的模数转换器是10
位精度的,提示信息如下:
- 23 -
FS44B0X开发板使用手册 V3.0
3.7 IIS音频播放WAV文件测试
第6项是测试IIS音频输出,不过在测试音频输出之前,首先需要通过串口下载一个
wav格式的音频文件进来才可以。按“5”并回车开始下载*.WAV文件到SDRAM,然后点
击的菜单SERIAL PORT/TRANSMIT,弹出一个文件浏览的窗口,在这窗口中选
中光盘上面提供的WAV文件(譬如),点击按键打开启动文件传输:
- 24 -
FS44B0X开发板使用手册 V3.0
文件传输的时候,会出现传输的进度条,传输完毕后,会出现提示信息问您是否运行刚
才下载的文件,这时要输入“N”不运行刚才下载的文件(因为WAV音频文件是不可以执
行的)。
现在在主菜单里面按 “6” 并回车,把音箱的音频插头或者是耳机插头插入到开发板上
面的音频插座,现在就可以听到刚才下载的WAV文件了,旋转音频插座左边的电位器调教
音量,注意顺时针方向旋转是减小音量,逆时针方向旋转是增大音量,相关提示信息如下:
3.8 USB DEVICE(PDIUSBD12)测试
按“ESC”退出前面的测试,按“7”测试USB DEVICE(PDIUSBD12),用USB线连
接PC机和目标板,可以看到下面的提示信息:
- 25 -
FS44B0X开发板使用手册 V3.0
在PC机里面运行所提供的测试程序(注意必须先装好驱动程序
FS44B0X_TEST USB_DRIVER_TESTD12驱动),点击三个按键可以看到开发板上面三个
LED分别亮和灭。
3.9 黑白STN液晶屏测试
按“ESC”退出PDIUSBD12的测试,按“8”测试黑白的STN液晶屏,接上G35(16
级灰度)或者是G57(黑白)的STN液晶屏,按照提示信息按回车或者是“i”、“j”、“k”,
“m”,可以看到液晶屏上面出现不同的画面,相关提示信息如下:
- 26 -
FS44B0X开发板使用手册 V3.0
3.10 黑白STN液晶屏显示英文字符测试
按“9”进行黑白STN液晶屏输出字符串测试,接上G35(16级灰度)或者是G57(黑
白)的STN液晶屏,按照提示信息按回车或者是“i”、“j”、“k”,“m”,可以看到液晶屏上
面出现不同的画面,相关提示信息如下:
- 27 -
FS44B0X开发板使用手册 V3.0
3.11 4级灰度STN液晶屏测试
按“10”进行4级灰度STN液晶屏的测试,接上G35(16级灰度)或者是G57(黑白)的
STN液晶屏,按照提示信息按回车或者是“i”、“j”、“k”,“m”,可以看到液晶屏上面出现
不同的画面,相关提示信息如下:
- 28 -
FS44B0X开发板使用手册 V3.0
3.12 16级灰度STN液晶屏测试
按“11”进行16级灰度STN液晶屏的测试,接上G35(16级灰度)或者是G57(黑白)
的STN液晶屏,按照提示信息按回车或者是“i”、“j”、“k”,“m”,可以看到液晶屏上面出
现不同的画面,相关提示信息如下:
- 29 -
FS44B0X开发板使用手册 V3.0
3.13 256色STN液晶屏测试
按“12”进行256色STN液晶屏的测试,接上G35(16级灰度)或者是G57(黑白)的
STN液晶屏,按照提示信息按回车或者是“i”、“j”、“k”,“m”,可以看到液晶屏上面出现
不同的画面,相关提示信息如下:
- 30 -
FS44B0X开发板使用手册 V3.0
3.14 外部电平中断测试
按“13”测试外部电平中断,按板子上面的按键KEY1、KEY2、KEY3、KEY4,就可以看
到中断响应信息,相关提示信息如下:
- 31 -
FS44B0X开发板使用手册 V3.0
- 32 -
FS44B0X开发板使用手册 V3.0
第四章ARM编译调试开发平台的搭建
4.1 安装ADS1.20编译调试环境
点击光盘ADS120文件夹下面的可执行安装程序——,然后一步一步安装,最
后装好文件,编译调试环境就安装好了。详细步骤请观看光盘中的多媒体演示文
件。
4.2 安装并运行ARM-JTAG调试代理ARMJTAGDEBUGFINAL
首先要正确连接目标板,用14针的排线将开发板和SUPERJTAG小板连接起来。
将光盘中的ARMJTAGDEBUGFINAL文件夹拷贝到硬盘上任意目录下,运行其中的文
件——“安装驱动.EXE”,就会弹出一个界面窗口,点击上面的“INSTALL”按键直到出现
提示信息“Service is partially installed.”,然后再点击下面的“INSTALL”按键,出现下面
的信息,说明驱动安装成功:
现在运行ARM7-JTAG调试代理软件——,注意如果20芯排线连接到
SUPERTAG板的SDT接口(JP4、JP5)上,需要选中下图中的SDT;如20芯排线连接到
SUPERJTAG板的WIGGLER接口(JP1、JP2)上,需要选中下图中的WIGGLER,如下图
所示:
- 33 -
FS44B0X开发板使用手册 V3.0
如果安装成功、配置正确而且硬件连接良好,将会检测到ARM7TDMI,如上图中左上
角的红色圆圈。
4.3 为ARM-JTAG调试代理正确配置AXD DEBUGGER
运行ADS120软件中的调试软件——AXD DEBUGGER,在下面的界面中,点击菜单
options/Configure Target,在弹出的界面窗口中选择Remote_,然后点击按键Configure:
- 34 -
FS44B0X开发板使用手册 V3.0
在弹出的窗口中,点击“Select”按键,选择“ARM Ethernet driver”选项,然后点击
OK按键,如下图所示:
再点击“Configure”按键,在弹出的窗口中输入数字“127.0.0.1”并确认,如下图所示,
这样就是设置好了:
- 35 -
FS44B0X开发板使用手册 V3.0
4.4 使用SUPERJTAG在ADS1.20环境下进行仿真调试
关闭并重新启动AXD DEBUGGER,点击菜单File/Load Image,找到您想调试的调试目
标代码(*.axf格式),打开它就启动目标代码下载,这时会出现进度条,下载完毕就可以单
步或者全速调试了:
调试过程中可以看CPU各寄存器,也可以设置断点:
- 36 -
FS44B0X开发板使用手册 V3.0
第五章 如何使用FLASHPGM快速烧写FLASH
5.1计算机的设置
请在PC机的BIOS里面将并口设置成 EPP方式;
HEX文件的准备
flashpgm不能烧写*.bin格式的文件,但可以烧写*.elf或者是*.hex格式的文件,一般都
使用*.hex格式的文件进行烧写。
以ADS1.2为例,在其项目编译界面下按Alt+F7进入下面的设置界面,按照下面画红
色圆圈的画面在Target Settings目录下选择ARM FROMELF,以生成目标代码:
- 37 -
FS44B0X开发板使用手册 V3.0
然后在ARM FROMELF菜单下的output format选择 Intel 32 bit Hex。 输出文件名任意,
但后缀一定要是hex , 如果您没有选,系统自动生成文件的后缀为 .i32格式。请将.i32改
名.Hex.
然后编译就会生成你所设置文件名的Hex格式文件了。
FLASHPGM烧写时SUPERJTAG的接法
将14针线连接到JTAG小板上
- 38 -
FS44B0X开发板使用手册 V3.0
5.2 FLASHPGM的设置
调入 文件
- 39 -
FS44B0X开发板使用手册 V3.0
5.3 设置通信端口
选择Wiggler Parallel
- 40 -
FS44B0X开发板使用手册 V3.0
5.4 选择编程文件类型
5.5 点击编程按钮
如果目标板连接不正常将显示如下对话框,请检查目标板电源是否打开,20芯排线是否连
- 41 -
FS44B0X开发板使用手册 V3.0
接正常。
如果连接正常,将显示如下对话框。
点击Browse按钮,找到要烧写的文件的位置,如下图,另外,也要选中 Erase Target Flash
Sector(s) Before Program
如果在上面的画面中,您发现按键Program始终为灰色,无论如何也不行。请点击Close
按键关闭上面的画面,然后按一下开发板上面的复位按键,再点击Flashpgm界面中的
Program按键,重新进入上面的画面,就会发现Program不在是灰色的了,这样就可以编程
了。这实际上是Flashgpm的一个bug,但别无它法,不过情况不多见。
- 42 -
FS44B0X开发板使用手册 V3.0
第六章FS44B0X_BIOS的烧写与使用
6.1 FS44B0X_BIOS编译说明
1) 通常不用重新编译FS44B0X_BIOS, 如果要编译,那么请使用光盘上FS44B0X_BIOS这
个子目录里的源码
2) FS44B0X_BIOS项目在ADS1.20下编译和调试。因为ADS1.20不支持中文的目录名字,
所以务必将整个FS44B0X_BIOS目录拷贝到一个因为英文文件夹下,并且该文件夹向上一
直到根目录的所有文件夹的名字都是英文的。
3) 现在只能对SST39VF160烧入,对其他FLASH需要自己修改相关驱动, 注意要修改BIOS
的驻留地址,现地址为0X1F0000.
4) 对不同的RAM而言,修改SYSINIT.S里的参数即可。FS44B0X_BIOS运行地址为
0XC7C0000,可在ADS中修改。
5) 波特率为115200,默认串口是串口1;
6) IP地址为 192.168.3.100;
7) 在第一次烧写了BIOS之后,一定要记得立即执行BIOS命令BACKUP来将BIOS拷贝
到FLASH的高端备份起来。
6.2 用BIOS通过网口烧写应用程序UC/OS-II到FLASH里
FS44B0X_BIOS烧写完成后,FS44B0X开发板重新上电FS44B0X_BIOS就接管了系统,
它初始化了CPU的串口、网口、内存等。可以在超级终端输入一些指令来完成一些工作。
先用BIOS烧写一个UC/OS-II程序代码。连接好网线和串口线,打开电源;
在里面的BIOS命令提示符下输入命令AP并回车;
在“目标代码”文件夹里,双击批处理文件FS44B0X_,可以看到通过网口下
载了0xAD60个字节的目标代码文件到板子上面了,然后在里输入y并回车,就
将UC/OS-II程序烧写到0地址(但没有修改0地址的跳转指令),提示信息如下:
- 43 -
FS44B0X开发板使用手册 V3.0
现在可以关闭电源重新上电或者是直接按复位按键,当超级终端出现提示符/>时,输入
命令boot并回车,当系统提示boot from flash, are you sure ?[y/n]时键入y,即启动刚烧入的
UC/OS-II程序。这时可以在FS44B0X板子上看到D1、D2、D3轮流闪烁,串口输出CPU
使用率和RTC实时时钟的时间。这时,BIOS已将控制权交给了应用程序,超级终端受应
用程序控制。相关提示信息如下:
- 44 -
FS44B0X开发板使用手册 V3.0
此时要进入BIOS的命令提示符下,只能按复位键重新启动BIOS。
6.3 用BIOS通过串口烧写应用程序UC/OS-II到FLASH里
有时候用户自己设计了开发板,但并不是所有的开发板上面都有RTL8019的网口,不
过没有串口的开发板倒是很少见了,这是串口就派上用场了,可以通过串口来烧写用户的
应用程序。
在里面的BIOS命令提示符下输入命令COMLOAD并回车,然后点击菜单
Serial Port/Transmit,在弹出的浏览窗口中选中您要下载的*.bin格式目标代码文件
(FS44B0_),然后点击打开就开始从串口下载文件了,这时您可以看到进度
条,下载完毕敲入命令PROM 0即将代码烧写到FLASH的0地址(但没有修改0地址的跳
转指令),这个时候再敲入命令boot就可以运行刚才通过串口下载并烧写到FLASH的代码
了,相关提示信息如下:
- 45 -
FS44B0X开发板使用手册 V3.0
6.4 用BIOS通过网口来快速运行和调试应用程序UC/OS-II
有经验的嵌入式开发工程师会发现,其实很少时候需要用到仿真器来单步调试,大多数
情况下都是全速运行代码,其实BIOS里是有命令可以支持这种快速调试。
在BIOS的命令提示符下执行命令NRTRUN(更简洁快速的命令是g),然后点击批处
理文件FS44B0X_,可以看到目标代码文件FS44B0X_很快就通
过网口下载到SDRAM中从0xc008000开始的地址,然后马上从这个执行该程序。
- 46 -
FS44B0X开发板使用手册 V3.0
由于网口的数据传送速度是10M,而MULTI-ICE仿真器使用的并口数据传送速度只
有几百K,所以使用上面的方法,下载并全速运行程序的速度比Multi-ICE仿真器快很多。
正因为如此,很少使用MULTI-ICE仿真器,仅只在极少数需要单步跟踪调试代码的时候
才用到它,绝大多数情况下都是在BIOS里面敲一个 “g”,然后点击一个批处理就搞定调试
过程。
6.5 用BIOS通过串口来全速运行和调试应用程序UC/OS-II
开发板上面没有网口的时候,也可以通过串口来下载并全速运行,只是这样下载速度较
慢,适用于调试比较小的程序。
在BIOS的命令提示符下执行命令COMRUN并回车,然后点击菜单Serial Port/Transmit,
在弹出的浏览窗口中选中你要下载的*.bin格式目标代码文件(FS44B0X_),
然后点击打开就开始从串口下载文件了,这时您可以看到进度条,下载完毕它就马上自动
运行刚下载的程序了。
- 47 -
FS44B0X开发板使用手册 V3.0
6.6 FS44B0X_BIOS命令简表
FS44B0X_ BIOS具有启动、引导,下载、烧写,设置日期、时间,设置工作频率等多
种功能,并且支持各种参数的存储和自动调用。
可以用FLASHPGM等软件将BIOS烧写到FLASH中去,BIOS的自身驻留地址位于
NOR FLASH的0x1f0000处,系统参数保存在0x1ff000以上区域中。所以在烧写完BIOS,
上电复位后先要执一定要执行backup命令把BIOS本身拷贝到NOR FLASH的高端1f0000
去。
下面BIOS命令的汇总列表:
BIOS命
命令行提示信息
令
help show this list
? help
date show or set current date
time show or set current time
功能说明
显示BIOS 命令列表
显示BIOS 命令列表
显示或设置开发板时钟的当前日
期
显示或设置开发板时钟的当前时
间
设置星期信息
显示系统当前运行速度
设置系统当前运行时钟
改变串口(0/1)
设置串口通信波特率
显示或设置当前开发板IP 地址
通过网络下载文件
通过网络下载文件并运行该文件
通过网络下载文件并运行该文件
通过串行口下载文件
通过串行口下载文件并运行该文
件
通过XMODEM 下载文件
通过XMODEM 下载文件并运行
对FLASH 存储器编程
下载文件并编程写入FLASH 存储
器
拷贝BIOS 代码到FLASH 存储器
高端
从源地址到目标地址拷贝FLASH
内容
从FLASH 存储器重启动
运行程序
从ADDR1 转移数据到ADDR2
setweek set weekday
clock show system running clock
setmclk set system running clock
chguart change uart(0/1)
setbaud set baud rate
ipcfg show or set current IP address
netload download file by net
netrun download file by net and run
g download file by net and run
comload download file by uart
comrun download file by uart and run
rx download file by xmodem
rxrun download file by xmodem and run
prog program flash
ap download file and program it to flash
backup
copy
move bios to the top of flash
copy flash from src to dst address
boot boot from flash
run run program
move move data from addr1 to addr2
- 48 -
FS44B0X开发板使用手册 V3.0
mrun move data form prog_s_addr to prog_r_addr
and run
md show memory data
memd show 8/16/32bits memory
mems
senv
machine
setpa
setbp
bootkey
nfpart
nferase
nfprog
nfload
defset
set 8/16/32bits memory
save enviroment value to flash
set machine number
set program save(run) address
set program boot parameters
set key to autoboot
set nand flash partitions
erase nand flash partition
program nand flash
load program from nand flash
default setting for ucLinux
从源地址到目的地址移动数据并
运行
显示内存数据
按照字节/半字/字格式显示内存数
据
按照字节/半字/字格式设置内存数
据
在FLASH 存储器保存环境变量
设置机器序列号
设置程序存储及运行地址
设置程序启动参数
设置自动重启的按键
设置NAND FLASH 分区
清除NAND FLASH 分区
NAND FLASH 编程
从NAND FLASH 载入程序
恢复到运行uCLinux的默认设置
6.7 FS44B0X_BIOS命令详解
(注:以下命令所带参数中地址和长度都属16进制,不必在前面加0x)
help和?可以列出所有命令并给出简单的说明;
date命令可以显示和设置当前日期,只输入date命令则显示日期,输入date 2004-6-8则设
置当前日期为2004年6月8日。
time命令可以显示和设置当前时间,只输入time命令则显示时间,输入date 14:4:30则
设置当前时间为14:4:30。
setweek n可设置星期几,n从1到7表示星期一到星期日。
clock可以显示当前的工作频率。
setmclk可以改变CPU工作频率,具体参数设置可见芯片手册,注意不要使频率超出工作
范围。频率参数属于可以保存和调入的参数,这次设置和保存后下次复位BIOS会自动调入
这写参数初始化CPU。
setbaud可改控制串口的波特率,改完后要在PC上相应改变串口通讯波特率后再敲回车。
ipcfg可显示和修改tftp下载时所用的IP地址,只输入ipcfg则显示当前IP地址,输入ipcfg
192.168.2.223则将ip地址改为192.168.2.223。
netload启动tftp接收,若没带地址参数,则使用缺省下载地址0x0c008000,若指定地址,下
- 49 -
FS44B0X开发板使用手册 V3.0
载数据保存到指定地址开始的SDRAM中去,如netload c300000。启动tftp接收后,要在
PC端执行tftp下载程序,在win2000或winxp下,直接输入tftp -i put 文
件名即可;在win98下,使用CDROM里所带的tftp程序;在linux下,使用CDROM里所
带的tftpcmd程序。注意进行tftp传输时要保证PC机和开发板处于同一个IP段内。
netrun或者是g启动tftp接收完数据后会自动运行下载到的程序,缺省下载地址和指定参
数同netload。
comload启动串口下载(DNW程序的串口下载),缺省下载地址和指定参数同netload.
comrun启动串口下载(DNW程序的串口下载)并在接收完数据后自动运行下载的程序,
缺省下载地址和指定参数同netload。
rx启动XMODEM方式下载,可在超级终端内选择1K XMODEM或XMODEM发送数据到
开发板上,缺省下载地址和指定参数同netload。
rxrun在启动XMODEM方式接收完数据后自动运行下载到的程序,缺省下载地址和指定参
数同netload。
prog可以烧写NOR FLASH,目前支持SST39VF160。prog命令完整的参数是prog addr1 addr2
length [-no0],其中addr1是要烧写的FLASH的地址,大于等于0,小于200000,字对齐,
addr2是sdram中要烧进flash的数据区起始地址,length是要烧写的长度,-no0表示要把数
据烧进Nor Flash 0地址开始的地方时,是否修改0地址的指令,因为CPU复位总是从0开
始执行的,当用Nor Flash启动时,若用prog命令将下载到的程序烧入Nor Flash 0地址开
始的地方并在命令最后指定-no0,那么在复位后,就不会再运行Bios而直接启动用户程序了,
若不在prog命令最后加-no0, 则BIOS可以烧写Nor Flash 0地址的数据前,将0地址的指
令改为直接跳转到0x1f0000处即Bios的驻留地址,并保存原程序0地址将要跳转到的地址,
以后在执行boot指令时再跳转过去执行用户烧入的程序。运行Bios。在运行Bios下载完数
据后,也可不带参数直接执行prog命令,缺省的Nor Flash地址是用户程序存储地址
prog_s_addr(见后面setpa命令),sdram中数据起始地址和数据长度在接收成功后自动设定
了。
ap指令自动下载完数据并将数据烧写到nor flash的0地址处,缺省为tftp 下载,指定-c表
示串口下载(DNW方式),-x表示XMODEM下载,-b表示不修改0地址的指令。
backup可用在第一次烧写完BIOS到Nor Flash 0地址后上电执行时将Bios本身拷贝到
0x1f0000处。
copy将Nor Flash某地址的数据拷贝到另一地址。
boot可运行用户通过BIOS下载烧写到0地址并修改过0地址跳转地址的程序,见prog.
run可运行存储器中的程序,缺省地址就是缺省下载地址,也可指定运行地址。
move addr1 addr2 size 可将存储器中addr1开始的长度为size的数据拷贝到addr2开始的地
址去。
- 50 -
FS44B0X开发板使用手册 V3.0
mrun可自动执行move的过程并运行程序,比如在FS44B0中我们将uClinux内核保存在
Nor Flash的0x10000开始的地方,长度为800K,它的运行地址是0x0c300000,那么mrun
就可以完成拷贝的操作并直接运行。mrun内部使用的参数见setpa命令。
md显示存储器中的数据,可以带地址参数。
memd可显示单个存储器单元中的内容,-c参数表示8位数据,-s参数表示16位数据,-l参
数表示32位数据,后面跟存储器地址。
mems可修改单个存储器单元中的内容,-c,-s,-l参数同上,后面跟存储器地址和要写入的内
容。
machine可设置机器号,适用于linux,此参数可保存。
setpa有几个参数
Usage : setpa -s[-r][-i][-ni][-nor][-nand] [address]
-s save address
-r run address
-i initrd save address
-ni disable initrd
-nor use nor flash to save
-nand use nand flash to save
其中-s表示用户程序在FLASH中的存储地址,如上面所说的将uClinux内核保存到Nor Flash
的0x10000处,为使mrun正确运行,我们就要设置setpa -s 10000
-r表示用户程序的运行地址,如上面所说的将uClinux内核的运行地址是0x0c300000,为使
mrun正确运行,我们就要设置setpa -r c300000
-i表示使用initrd(对于linux或uClinux),它的存储地址是多少。
-noi表示取消initrd。
-nor表示用户程序存储在Nor Flash中,-nand表示用户程序存储在Nand Flash中。注意使
用Nand Flash存储时,前述保存地址1000表示Nand分区1,2000表示Nand分区2,依此
类推,Nand分区见nfpart命令。
setpa设置的参数都是可以保存的。
setbp可以设置启动命令(对于uClinux和linux),可以保存。
Usage : setpa -s[-r][-i][-ni][-nor][-nand] [address]
-s save address
-r run address
-i initrd save address
-ni disable initrd
-nor use nor flash to save
-nand use nand flash to save
-s 表示mrun运行的程序是存储器在flash的什么位置,
对于nor flash是nor flash中的地址,
对于nand flash 1000表示分区0,2000表示分区2.
- 51 -
FS44B0X开发板使用手册 V3.0
-r表示存储的程序要读到sdram中什么位置再运行.对于uClinux是c300000.
-i表示initrd存储在flash的什么位置,如同-s.
-ni表示取消initrd
-nand表示用NAND FLASH作为内核及initrd的存储介质.
bootkey可设置BIOS复位运行后检查哪个按键状态来自动启动存储在Flash中的用户程序,
即自动调用mrun指令,按键编号1~4,状态0表示低启动,1表示高启动。比如要在复为
后检测到按键3为低时启动,可执行bootkey 3 0。此参数也可保存,注意实现自动启动的
前提是先烧写好Flash和用setpa命令设置好各个参数,bootkey命令最后可带-b参数,表示
自动运行boot指令,缺省情况下是运行mrun指令。
nfpart 可在Bios中对Nand Flash简单分区,比如Nand Flash大小是32M,要分为
0~0x30000,0x30000~0x200000,0x200000~0x800000,0x800000~0x1000000,0x1000000~0x2000
000 这样5个分区,可以执行nfpart 30000 200000 800000 1000000 2000000,分区最多为8
个,分区参数可以保存。
nferase可以擦除Nand Flash分区,块有错误时会有提示。
nfprog可以将下载的数据写入Nand Flash分区,也可指定烧入数据的起始地址和长度,烧写
有错误也会有提示。
nfload可以将Nand Flash分区的数据全部读入sdram中,可以指定sdram地址和Nand Flash
分区。
senv命令可以保存所有保存的参数到Flash中,下次复位运行BIOS后会调入这些参数。
defset命令可以将运行uCLinux所需要的各种默认设置一次性设置好,并且保存起来。默认
的设置如下图中红色圆圈所示:
- 52 -
FS44B0X开发板使用手册 V3.0
第七章 建立UCLINUX开发环境
7.1 UCLINUX简介
UCLINUX是专门用于微控制领域的嵌入式LINUX操作系统它已被成功移植到多种平台上
运行它是针对没有MMU 的处理器而设计的UCLINUX符合GNU/GPL 公约完全开放源代码它采
用ROMFS文件系统体积小巧精简深受广大微控制领域的用户的喜爱
uClinux 的官方网站:
7.2 如何建立UCLINUX开发环境
1) uClinux源码
从光盘中的uClinux源码和工具目录下获得 2
2)编译工具
3) uClinux内核源码包
2
4) 解压源码包
解压uClinux源码程序包
tar xjvf 2
会生成一个uClinux-040408的目录
5) 安装交叉编译工具
# ls –l
该命令显示文件的各种属性,如果该脚本文件属性的不是可执行的,
则还需要输入命令:# chmod 755
以将其属性改为可执行属性,然后通过键入命令:
#sh ./
执行后/usr/local/bin/路径下有gcc, g++, binutils, genromfs, flthdr 和elf2flt等各种实用
工具。
7.3 UCLINUX内核的编译步骤
- 53 -
FS44B0X开发板使用手册 V3.0
1) cd uClinux-040408 ;进入uClinux-040408目录
2) make menuconfig ;进入菜单方式配置指令
3) 进入如下界面
图10-3-1 目标平台配置
4)选择平台类型和所使用的库,在Vendor/Porduct下选择Samsung/S3C44B0X
图 10-3-2
5) 如果想自己配置内核和用户应用,可以选择Customize Kernel Settings (NEW)和
Customize Vendor/User
Settings(NEW)
不选,则按默认的配置
6)接下来键入命令: make zImage ;生成内核映像
7 ) 键入命令:make
通过各个目录的Makefile文件进行,会在各目录下生成一大堆目标文件。
上述步骤完成后,就完成了对uClinux源码的编译工作。整个编译过程视计算机运行速
度而定。
当内核的编译工作完成之后,会在arch/armnommu/boot/的目录找到zImage文件。.
- 54 -
FS44B0X开发板使用手册 V3.0
zImage文件是可以烧写到FLASH中运行的代码,怎样烧写,请看上面章节关于uClinux
的烧写
7.4 利用FTP下载应用程序到目标系统
7.4.1
通过以太网接口从网络添加用户程序到目标系统运行,显然比前面所介绍的方法方便
得多,特别是在用户应用程序的调试过程中,若每做一点修改都要求重新编译内核并烧写
入FLASH存储器运行,其工作量是可想而知的。
利用UCLINUX操作系统的强大的网络功能,我们可以很方便的通过以太网,在
UCLINUX目标系统和宿主机(即PC机,可以是LINUX系统,也可以是WINDOWS系统)
进行文件传输,这里主要是通过FTP来传输文件的,当然在配置UCLINUX内核过程中要
选择FTP和其他的一些网络服务,这些选项是默认的,无须在选择。
既然要通过FTP来传输文件,自然需要有FTP服务器和FTP客户端,在这里我们用PC
机充当FTP服务器,很自然,就需要安装FTP服务器程序,如果PC机上运行的WINDOWS
系统,可以用光盘里提供的WFTP程序,关于它的设置在第五章有详细的说明。如果运行
的LINUX系统,默认安装了FTP服务,
当目标系统的UCLINUX运行后,运行宿主机(PC机)的FTP服务器,进行双向的文件传
输。
但由于目前所使用的UCLINUX操作系统内核采用ROMFS作为其根文件系统,当目
标系统的UCLINUX启动运行以后,其目录大多数是建在FLASH存储器中,因而是不可写
的,只有/var、/tmp等少数几个目录是建立在SDRAM,是可读写的,但若目标系统掉电,
内容就丢失了,因此只能作为应用程序调试之用,当应用程序调试完成后,还应将其写入
FLASH存储器。当然,若能在目标系统中使用JFFS/JFFS2,用以代替ROMFS作为其根文件
系统,则整个目标系统就像有磁盘一样方便,用户应用程序的加载再也不用像前面介绍的
方式进行了。关于JFFS/JFFS2文件系统的建立,请读者参考相关技术资料,在此仅描述如
何将用户程序通过局域网,从FTP服务器(运行LINUX或Windows主机)上,传输到运行
UXLINUX的目标系统(FTP客户机)并执行的过程:
注意要将目标系统与宿主机(PC机)的IP设置在同一网段中,在宿主机的任意目录下编
写应用程序,并用交叉编译工具生成flat格式的文件。
- 55 -
FS44B0X开发板使用手册 V3.0
7.4.2
下面的操作的宿主机运行的是WINDOWS,FTP 服务器是WFTP,内核源码包是
2
步骤:
启动宿主机(PC机)上的WFTP服务器(如何设置WFTPD这个FTP服务器,请参考附录)
启动目标系统的UCLINUX,通过超级终端,在命令提示符下输入:
ifconfig eth0 192.168.3.100
ifconfig命令用于显示及设置目标系统的网卡配置,例如,IP地址,子网掩码,IRQ及
IO Port等。在上述命令中,参数eth0代表目标系统的网络设备,IP地址192.168.3.50为目
标系统的IP地址,注意应与宿主机在同一网段内(此时宿主机的IP地址为:192.168.3.80),
当然目标系统和宿主机的IP地址可以自由的设定,只要保证它们在同一个网段就行了
执行如下命令
ifconfig –all
就可以看到目标系统的IP地址配置信息了,显示信息见下图:
- 56 -
FS44B0X开发板使用手册 V3.0
7.4.3 测试目标
在PC机上运行PING 192.168.3.100 , PING成功后显示信息如下图:
- 57 -
FS44B0X开发板使用手册 V3.0
7.4.4 进入SDRAM区域
输入命令 cd var
7.4.5 FTP 192.168.3.80
输入命令后出现如下界面:
- 58 -
FS44B0X开发板使用手册 V3.0
此时输入宿主机上的合法用户名及密码,如果是按手册上安装的WFTPD,用户名:efun,
密码:efun,
成功后显示信息如下:
- 59 -
FS44B0X开发板使用手册 V3.0
在ftp>下输入命令:ls ,接着会显示FTP服务器的根目录下的文件,显示如下:
- 60 -
FS44B0X开发板使用手册 V3.0
这里请用户注意:在用FTP进行文件传输的时候,一定要选好文件传输的模式,FTP
缺省模式为二进制模式,但是为了保险起见,还是手动把传输模式显式改写为二进制模式。
通常的TXT,HTMLl和绝大多数PS文件都是文本格式的,而其他的可执行文件,压缩文
件都是二进制格式。两种格式之间要用ascii和binary命令切换,两者都可以适当缩写。
在ftp>下输入命令:binary ;采用二进制文件传输
将已编译好的可执行程序ledshow(跑马灯程序),放到FTP服务器的根目录下.
在ftp>下输入命令:get hello ;从FTP服务器的根目录下载文件
- 61 -
FS44B0X开发板使用手册 V3.0
在ftp>下输入命令:bye ;退出FTP
7.4.7
在“#”提示符下,输入命令:ls
- 62 -
FS44B0X开发板使用手册 V3.0
此时,可执行文件hello已传输至目录/var,但文件的可执行属性未被设置,添加文件
的可执行属性,键入命令:
chmod 755 hello
chmod是一个文件权限修改的命令,在文件创建的时候会自动设置存取权限,若是这
些默认权限无法适合企业环境的需求,就可以利用chmod命令来修改存取权限。通常在权
限修改的时候可以用两种方式表示权限类,数字表示法和文字表示法。
这里采用的是数字表示法
然后执行程序 hello,命令如下:
./hello
超级终端显示信息如下:
- 63 -
FS44B0X开发板使用手册 V3.0
上面的HELLO程序是用在FS4510板子上的,所以打印信息没有改,在UCLINUX下
的程序很多是可以通用的(只要不涉及到具体的硬件)。
至于运行其他的应用程序也是类似。
显然,这种方法在应用程序的开发中是比较有用的,使用这种方式可以使用户在宿主
机的开发环境下,编译代码,但编译出来的flat格式的文件并没有放到硬件目标系统的
FLASH存储器,而是在系统的SDRAM中运行,这就大大节省了调试的时间,内核编译只
需要进行一次,使开发人员能够将更多的精力投入到应用程序的开发中来。
- 64 -
FS44B0X开发板使用手册 V3.0
第八章FS44B0X如何恢复到出厂设置
8.1重新烧写BIOS
FS44B0X开发板出厂之前BIOS已经写好,如果在您的使用过程中不慎冲掉,按以下
步骤重新烧写。
将光盘里的“目标代码”子目录copy到硬盘上,譬如目录c: 。
连接SUPERJTAG,将14芯排线连接开发板和SUPERJTAG板的WIGGLER接口JP2
上面,打开电源;
在FLASHPGM里点击program;
在Browse中找到“目标代码”文件夹下的FS44B0X_ 文件;
点击Erase Target Flash Sector(s.) Before Pro前面的小窗口,使其前面打勾;
点击Program按键开始烧写,5秒钟左右即可烧完;
然后点击Close按键关闭烧写界面,这时FS44B0开发板上的蜂鸣器会发出“嘀”一声
响的同时D1、D2、D3会从右到左快速循环闪烁,最后D3在不停闪烁,标志着bios已
经烧好。
8.2 BIOS备份
打开DNW,连接好串口connect;
在Configuration下点击options确定超级终端115200;
重新上电或者按复位键,超级终端会出现提示信息;
在提示符下输入backup,回车,
在提问下输入y,屏幕会出现BIOS拷贝并编程成功的信息;
原来在FLASH 0地址的BIOS就会拷贝到FLASH里以1f0000地址开始的空间里。
8.3
进行默认系统设置,在BIOS命令提示窗口下敲入命令defset然后回车,按复位键后可
以看到如下的提示信息,其中圈了红色圆圈的部分使默认系统设置:
- 65 -
FS44B0X开发板使用手册 V3.0
第九章 FS44B0X如何烧写UCLINUX
9.1 烧写前准备
连接好串口comect和网线(交叉网线),开启电源,在里面执行BIOS命令defset,
然后复位重启系统;
9.2 烧写中断向量表
z 将光盘里的“UCLINUX_FS44B0X”文件夹复制到硬盘上;
z 在超级终端里输入ap(注意ap是小写)
然后在“UCLINUX_FS44B0X”文件夹下双击批处理文件:(将通过网
口下载到SDRAM);
z 在超级终端里等待下载结束,然后执行命令:
>prog 0回车然后按“y”即可将把中断向量表烧写到FLASH 0地址。
- 66 -
FS44B0X开发板使用手册 V3.0
9.3 烧写UCLINUX内核:
在超级终端里输入netload,(注意netload是小写)
然后在“uCLinux_FS44B0”文件夹下双击批处理文件FS44B0_:(将
通过网口下载到SDRAM)
在超级终端里等待下载结束,然后执行命令:
> prog 10000回车然后按“y”即可把烧写到FLASH 10000地址。
9.4 烧写UCLINUX根文件系统
在超级终端里输入netload,(注意netload是小写)
然后在upload里双击批处理文件FS44B0_romfs_:(将通过网口下载
到SDRAM),在超级终端里等待下载结束,然后执行命令:
> prog 100000回车然后按“y”即可把此文件烧写到FLASH 100000地址。
- 67 -
FS44B0X开发板使用手册 V3.0
9.5 输入命令MRUN就可运行UCLINUX
第十章 WFTPD配置(FTP服务器)
10.1运行
运行,选取
LOGGING
菜单
LOG OPTIONS
项,界面如下:
- 68 -
FS44B0X开发板使用手册 V3.0
10.2
选中
Enable Logging Gets Logins Commands
,这些选项当下载文件时会显示详细的记录
- 69 -
FS44B0X开发板使用手册 V3.0
10.3
选择Security 菜单下的Users/rights
10.4 建立新用户
点击New User…
- 70 -
FS44B0X开发板使用手册 V3.0
10.5 输入用户名efun
输入别的名字也可以efun 是缺省的用户名。(当然您可以改成任意的用户名)
- 71 -
FS44B0X开发板使用手册 V3.0
10.6 输入密码efun 点击OK
- 72 -
FS44B0X开发板使用手册 V3.0
10.7
输入路径c:upload 点击done 就完成了WFTPD 的设置下次运行WFTPD 时就不用再
输入任何东西它会自动启动包含一个efun 用户的FTP SERVER服务
第十一章 相关的术语解释
11.1 XMODEM协议
XMODEM 协议是一种使用拨号调制解调器的个人计算机通信中广泛使用的异步文件
运输协议。这种协议以128 字节块的形式传输数据,并且每个块都使用一个校验和过程来
进行错误检测。使用PC 机传送文件的早期协议。在数据传送过程中使用1 字节的控制序
列,以便通讯双方对传送过程进行监视。如果接收方关于一个块的校验和与它在发送方的
校验和相同时,接收方就向发送方发送一个认可字节。然而,这种对每个块都进行认可的
- 73 -
FS44B0X开发板使用手册 V3.0
策略将导致低性能,特别是具有很长传播延迟的卫星连接的情况时,问题更加严重。
使用循环冗余校验的与XMODEM 相应的一种协议称为XMODEM -CRC 。还有一种
是XMODEM-1K ,它以1024 字节一块来传输数据。ZMODEM 是最有效的一个XMODEM
版本,它不需要对每个块都进行认可。事实上,它只是简单地要求对损坏的块进行重发。
ZMODEM 对按块收费的分组交换网络是非常有用的。不需要认可回送分组在很大程度上
减少了通信量。
YMODEM 也是一种XMODEM 的实现。它包括XMODEM -1K 的所有特征,另外在
一次单一会话期间为发送一组文件,增加了批处理文件传输模式。
11.2 NAND FLASH和NOR FLASH详解
NOR 和NAND 是现在市场上两种主要的非易失闪存技术。INTD 于1988 年首先开发
出NOR FLASH 技术,彻底改变了原先由EPROM 和EEPROM 一统天下的局面。紧接着,
1989 年,东芝公司发表了NAND FLASH 结构,强调降低每比特的成本,更高的性能,并
且象磁盘一样可以通过接口轻松升级。但是经过了十多年之后,仍然有相当多的硬件工程
师分不清NOR 和NAND 闪存。
“FLASH存储器”经常可以与“NOR 存储器”互换使用。许多业内人士也搞不清楚
NAND 闪存技术相对于NOR 技术的优越之处,因为大多数情况下闪存只是用来存储少量
的代码,这时NOR 闪存更适合一些。而NAND 则是高数据存储密度的理想解决方案。NOR
的特点是芯片内执行(xIP , cxecutc hi Place ) ,这样应用程序可以直接在flash 闪存内运行,
不必再把代码读到系统RAM 中。NOR 的传输效率很高,在1-4MB 的小容量时具有很高
的成本效益,但是很低的写入和擦除速度大大影响了它的性能。
NAND 结构能提供极高的单元密度,可以达到高存储密度,并且写入和擦除的速度也
很快。应用NAND 的困难在于FLASH 的管理和需要特殊的系统接口。
性能比较
flash 闪存是非易失存储器,可以对称为块的存储器单元块进行擦写和再编程。任何flash
器件的写入操作只能在空或已擦除的单元内进行,所以大多数情况下,在进行写入操作之
前必须先执行擦除。NAND 器件执行擦除操作是十分简单的,而NOR 则要求在进行擦除
前先要将目标块内所有的位都写为0 。
由于擦除NOR 器件时是以64-128KB 的块进行的,执行一个写入/擦除操作的时间为
- 74 -
FS44B0X开发板使用手册 V3.0
55ms ,与此相反,擦除NAND 器件是以8-32KB 的块进行的,执行相同的操作最多只需
要4ms 。执行擦除时块尺寸的不同进一步拉大了NOR 和NADN 之间的性能差距,统计
表明,对于给定的一套写入操作(尤其是更新小文件时),更多的擦除操作必须在基于NOR
的单元中进行。这样,当选择存储解决方案时,设计师必须权衡以下的各项因素。
NOR 的读速度比NAND 稍快一些。
NAND 的写入速度比NOR 快很多。
NAND 的4ms 擦除速度远比NOR 的55 快。
大多数写入操作需要先进行擦除操作。
NAND 的擦除单元更小,相应的擦除电路更少。
接口差别
NOR FLASH带有SRAM 接口,有足够的地址引脚来寻址,可以很容易地存取其内部
的每一个字节。
NAND 器件使用复杂的FO 口来串行地存取数据,各个产品或厂商的方法可能各不相
同。8 个引脚用来传送控制、地址和数据信息。
NAND 读和写操作采用512 字节的块,这一点有点像硬盘管理此类操作,很自然地,
基于NAND 的存储器就可以取代硬盘或其他块设备。
容量和成本
NAND FLASH 的单元尺寸几乎是NOR 器件的一半,由于生产过程更为简单,NAND
结构可以在给定的模具尺寸内提供更高的容量,也就相应地降低了价格。
NOR FLASH占据了容量为1-16MB 闪存市场的大部分,而NAND FLASH只是用在8
-128MB 的产品当中,这也说明NOR 主要应用在代码存储介质中,NAND 适合于数据存
储,NAND 在ACTFLASH 、SECURE DIGITAL 、PC CARDS 和MMC存储卡市场上所
占份额最大。
可靠性和耐用性
采用FLASH介质时一个需要重点考虑的问题是可靠性。对于需要扩展MTBF 的系统
来说,FLASH是非常合适的存储方案。可以从寿命(耐用性)、位交换和坏块处理三个方
面来比较NOR 和NAND 的可靠性。
寿命(耐用性)
在NAND 闪存中每个块的最大擦写次数是一百万次,而NOR 的擦写次数是十万次。
- 75 -
FS44B0X开发板使用手册 V3.0
NAND 存储器除了具有10 比1 的块擦除周期优势,典型的NAND 块尺寸要比NOR 器
件小8 倍,每个NAND 存储器块在给定的时间内的删除次数要少一些。
位交换
所有FLASH器件都受位交换现象的困扰。在某些情况下(很少见,NAND 发生的次数
要比NOR 多),一个比特位会发生反转或被报告反转了。
一位的变化可能不很明显,但是如果发生在一个关键文件上,这个小小的故障可能导致
系统停机。如果只是报告有问题,多读几次就可能解决了。
当然,如果这个位真的改变了,就必须采用错误探测/错误更正(EDC / ECC )算法。
位反转的问题更多见于NAND 闪存,NAND 的供应商建议在使用NAND 闪存的时候,同
时使用EDC / ECC 算法。
这个问题对于用NAND 存储多媒体信息时倒不是致命的。当然,如果用本地存储设备
来存储操作系统、配置文件或其他敏感信息时,必须使用EDC / ECC 系统以确保可靠性。
坏块处理
NAND 器件中的坏块是随机分布的。以前也曾有过消除坏块的努力,但发现成品率太低,
代价太高,根本不划算。
NAND 器件需要对介质进行初始化扫描以发现坏块,并将坏块标记为不可用。在已制
成的器件中,如果通过可靠的方法不能进行这项处理,将导致高故障率。
易于使用
可以非常直接地使用基于NOR 的闪存,可以像其他存储器那样连接,并可以在上面直
接运行代码。
由于需要FO 接口,NAND 要复杂得多。各种NAND 器件的存取方法因厂家而异。在
使用NAND 器件时,必须先写入驱动程序,才能继续执行其他操作。向NAND 器件写入
信息需要相当的技巧,因为设计师绝不能向坏块写入,这就意味着在NAND 器件上自始至
终都必须进行虚拟映射。
软件支持
当讨论软件支持的时候,应该区别基本的读/写/擦操作和高一级的用于磁盘仿真和闪
存管理算法的软件,包括性能优化。
在NOR 器件上运行代码不需要任何的软件支持,在NAND 器件上进行同样操作时,
通常需要驱动程序,也就是内存技术驱动程序(MTD ) , NAND 和NOR 器件在进行写入和
擦除操作时都需要MTD 。
- 76 -
FS44B0X开发板使用手册 V3.0
使用NOR 器件时所需要的MTD 要相对少一些,许多厂商都提供用于NOR 器件的更
高级软件,这其中包括M 一SYSTEM 的TRUEFFS 驱动,该驱动被Wind River system 、
Microsoft 、QNX Soflwal ℃ System 、Sylllbian 和Intel 等厂商所采用。
驱动还用于对DISKONSHIP产品进行仿真和NAND 闪存的管理,包括纠错、坏块处理
和损耗平衡。
11.3 SDRAM存储器
与FLASH存储器相比较,SDRAM不具有掉电保持数据的特性,但其存取速度大大高
于FLASH存储器,且具有读/写的属性,因此,SDRAM在系统中主要用作程序的运行空间,
数据及堆栈区。当系统启动时,CPU首先从复位地址0x0处读取启动代码,在完成系统的
初始化后,程序代码一般应调入SDRAM中运行,以提高系统的运行速度,同时,系统及
用户堆栈、运行数据也都放在SDRAM中。
K4S641632的引脚信息及其他的相关信息请参考K4S641632的datasheet。其他类型
SDRAM的特性与使用方法与之类似,用户可根据自己的实际需要选择不同的器件。
K4S641632为16位数据宽度,单片容量为8MB。
第十二章 FS44B0X开发板使用FAQ
12.1如何重新烧写BIOS?
请参看下一章的“FS44B0X如何恢复到出厂设置”
12.2 为何超级终端不能输入?
将超级终端com1或com2属性/端口设置中的流量控制设置为---无
12.3为何超级终端里,BIOS不接受AP等指令?
BIOS的指令都是小写,只能输入 ap等指令
- 77 -
FS44B0X开发板使用手册 V3.0
12.4为何网络PING不通?
请将PC机的IP地址设置为 192.168.3.22 ,子网掩码设置为255.255.255.0, FS44B0的bios启
动后,在超级终端里输入ap并回车。再在WINDOWS里运行PING192.168.3.100 -t ,即可
PING通。
12.5 为何SUPERJTAG连不上目标板?
这个一般是因为连线没有连好,或者计算机BIOS里面没有把并口设置成EPP模式,或者
是设置不正确。请记住一定要在里面看到检测到ARM7TDMI才说明硬件没有问
题。发现有些笔记本无法使用SUPERJTAG,但台式机一般都没有问题,所以最好用台式机
来调试。
12.6 FLASHPGM无法进行FLASH烧写怎么办?
首先请确认您使用的FLASHPGM已经解密了,正确设置通讯电缆类型、并口端口、OCD
配置文件等。请参阅FLASHPGM如何使用,观看多媒体演示文件。
- 78 -