注:因为翻译的内容图片较多,CSDN博客插入图片较为繁琐,所以我这里只列出文本内容,完整内容请到以下网址下载:
http://download.csdn.net/detail/zhzht19861011/4044252
Stellaris®LM3S9B96 开发套件
用户手册
Stellaris@ LM3S9B96 开发板为基于ARM@ CortexTM-M3内核的Stellaris@LM3S9B96高性能微控制器的开发提供了在系统平台。
LM3S9B96是StellarisTempest-class微控制器家族的一员。Tempest-class系列微控制器具有高达80MHZ的时钟速度、一个外扩设备接口(EPI)和音频IIS接口。除了集成了新的硬件特性外,DK-LM3S9B96开发板还有丰富的其他Stellaris芯片中也有的外设。
开发板包含一个板上调试接口(ICDI)电路,支持JTAG和SWD两种方式调试。板上集成了一个标准ARM20针引脚调试接口,可以调试同类Stellaris ARM器件。
Stellaris@LM3S9B96开发套件可以加快Tempest-class系列微控制器的开发速度。套件中包含大量例程并提供完整源码。
Stellaris@ LM3S9B96开发板包含以下特性:
n 单USB接口提供程序调试、串行通讯和开发板供电;
n 丰富的外围设备,灵活的开发平台;
n 彩色LCD显示器
--- 320*240分辨率TFT LCD模块
--- 电阻触摸屏接口
n 80MHZ LM3S9B96微控制器、256KB片内Flash、96KB片内SRAM、片上集成以太网媒体控制器(MAC)+以太网物理接口收发器(PHY)、USB OTG和CAN通信接口。
--- 8MB SDRAM(EPI插件选项板)
--- EPI转接板
n 1MB串行Flash存储器
n 高精度3.00V参考电压
n ROM内置Safe RTOSTM操作系统
n IIS立体声编码解码接口
--- IN/OUT双路接口
--- 耳机输出接口
--- 麦克输入接口
n CAN总线接口
n 10/100 Base T以太网
n USB OTG控制器
--- 可以配置成从设备、主设备和OTG模式
n 用户LED和按键
n 旋转式可调电阻器(可用于菜单导航)
n Micro SD卡插槽
n 支持多种调试接口
--- 板上集成调试接口(ICDI)电路
--- 支持JTAG、SWD和SWO调试
--- 标准ARM@ 20针JTAG调试接口
n USB虚拟COM端口
n 跳线端子,方便重分配I/O口资源
n 支持Keil、IAR、GCC 、Code Red Technologies 、或者Texas Instruments’ Code ComposerStudio™ IDE开发工具
n StellarisWare@软件支持,包括图形库、USB库和外设驱动库
n 一个可选的Flash和SRAM存储扩展板(DK-LM3S9B96-EXP-FS8),可用于DK-LM3S9B96开发板
--- 利用Stellaris为控制器的EPI接口工作
--- 提供Flash存储、SRAM和一个增强的LCD接口。
更多DK-LM3S9B96-EXP-FS8存储器扩展板的信息见附录E:《Stellaris®LM3S9B96 Flash and SRAM Memory Expansion Board》,这个Flash和SRAM存储扩展板(DK-LM3S9B96-EXP-FS8)需要单独购买!
图1-1 DK-LM3S9B96开发板
Stellaris@LM3S9B96开发套件包含所有使用Srellaris微控制器开发和运行应用程序所需要的设备。
n LM3S9B96开发板
n 8MB SDRAM外扩板
n EPI信号转接板
n 可伸缩式以太网连接线
n 用于调试的USB Mini-B连接线
n 用于OTG的USB Mirco-B连接线
n 用于USB主设备的的USB Mirco-A连接线
n USB闪存棒(U盘)
n Micro SD卡插槽
n 20针排线
n CD目录:
--- 下列开发工具的一种(包含工具链详细的快速入门手册)
l Keil™ RealView® MicrocontrollerDevelopment Kit (MDK-ARM)
l IAR Embedded Workbench
l Code Sourcery GCC developmenttools
l Code Red Technologies developmenttools
l Texas Instruments’ Code ComposerStudio™ IDE
--- 完整的文档
--- 快速入门程序源代码
--- Stellaris@固件开发包例程源码
图1-2 DK-LM3S9B96开发板框图
n 开发板支持的电压范围:4.75~5.25V。可以使用以下方法为开发板提供电源:
--- 调试(ICDI)USB电缆(连接到PC)
--- USB Micro B电缆(连接到PC)
---DC电源插头(2.1*5.5mm),外部电源供电
n 3.3V线性稳压器,最大输出100mA
n 尺寸(不包括LCD显示屏)
---带SDRAM板:4.5*4.25*0.6英寸
---带EPI转接板:4.5*4.25*0.75英寸
n 模拟参考电压:3.0V +/-0.2%
n ROHS状态:满足
注:ROHS是欧盟立法制定的一项强制性标准,用来限制电子电气产品中有害物质的含量,2006年7月1日开始执行。
注:当LM3S9B96开发板用于USB主设备模式时,有为连接到该开发板上的从设备提供足够电力的能力。这时开发板的总耗电应为:从设备耗电量+200mA。
开发板除了具有LM3S9B96微控制器外,还包含一些列实用的外设以及板上调试接口接口(ICDI)电路。本章描述如何操作这些外设及其与微控制器的接口。
Steallaris LM3S9B96是基于ARM Cortex-M3内核的微控制器。具有256KB片内Flash存储器,80MHZ时钟频率、以太网、USB、EPI、CAN、ROM固化SAFE RTOSTM操作系统以及丰富的外设模块。完整详细的信息见《LM3S9B96微控制器数据手册》。
LM3S9B96微控制器在出厂时烧录了一个快速入门演示程序。快速入门程序存放在片内Flash存储器中,只要给开发板上电就会运行这个程序,除非这个程序被用户擦除。
开发板上的外设电路都是通过间距为0.1英寸(2.54mm)的跳线连接到LM3S9B96上。图2-1显示了开发板出厂时跳线的默认位置,必须保证跳线处于图中显示的默认位置才能正确运行快速入门演示程序。
开发板不支持LM3S9B96引脚复用的两个外设同时运行。例如,开发板不支持SDRAM和IIS接收(麦克或线输入)同时工作。默认跳线设置下,IIS接收被忽略。表2-1列出了所有复用外设以及出厂默认断开连接的跳线。当使用这些外设模块时需要断开与之复用GPIO口的另外的外设。附录D:“Stellaris@ LM3S9B96开发板微控制器GPIO分配”(”Stellaris@ LM3S9B96 Development Board Microcontroller GPIOAssignments,”)中列出了所有GPIO的功能及其复用功能。
表2-1 复用外设以及出厂默认断开连接的跳线
外设 |
跳线 |
IIS接收(音频输入) |
JP44, 45, 47, 49 |
CAN |
JP14, 15 |
以太网黄色状态LED(LED2) |
JP2 |
模拟3.0V参考电源 |
JP3 |
LM3S9B96内部有一个多路复用控制器,可以在片内外设和GPIO功能之间切换。在开发板调试接口(ICDI)处有一个GND-GND跳线,这样可以方便的放置一个备用的跳线帽,用户可以根据具体应用使用这个跳线帽。
图2-1:出厂跳线默认设置图示
开发板使用一个16MHZ(Y2)晶振,提供给LM3S9B96微控制器的内部时钟电路使用。微控制器的PLL对这个晶振频率倍频后再提供给内核和外设时钟,倍频值由软件来设置。另外开发板上还有一个25MHZ(Y1)晶振,它用于以太网PHY时钟基准。
控制LM3S9B96复位的信号RESETn连接到复位按键(SW2)和ICDI电路上,后者用于调试器控制器件复位。
当以下三个条件中的一个满足时,外部复位(低电平有效)有效:
n 上电复位(通过一个R-C网络滤波)
n 复位按键被按下
n 调试器通过ICDI电路发出复位命令。(注意这个功能是可选的,并不是所有调试器都具备这个功能。)
LCD具有特定的复位时序要求,需要从微控制器引一根控制线。
需要为开发板提供一个稳定的5V电源,跳线JP34-36用来选择供电电源。开发板出厂时默认使用ICDI USB电缆供电。任何情况下,请避免同时用两组电源为开发板供电。
当使用USB主设备模式时,可以使用ICDI USB电缆或外部5V电源(外置5V电源模块不包含在开发套件内)中的任何一个为开发板提供电源。
开发板使用两组主电压,+3.3V为微控制器和绝大多数电路供电。+5V用于OTG USB端口以及板上调试接口(ICDI)的USB控制器。3.3V是由5V电源通过一个低压差线性稳压器(U5)得来。这两组电源都提供了测试点。
LM3S9B96的全速USB控制器可以配置成OTG、主设备和从设备三种工作模式。表2-2列出了USB的相关信号线。开发套件中提供的5Pin Micro A、B和OTG三种电缆以支持这三种接口。
USB端口使用ESD保护二极管(D1、D2、D5)提供15KV的静电防护。
表2-2 USB相关信号线
微控制器引脚 |
板上功能 |
跳线名称 |
Pin 70 USB0DM |
USB Data- |
- |
Pin 71 USB0DP |
USB Data+ |
- |
Pin 73 USB0RBIAS |
USB 偏置电阻 |
- |
Pin 66 USB0ID |
OTG ID信号 (输入到微控制器) |
OTG ID |
Pin 67 USB0VBUS |
Vbus 电平监视 |
+VBUS |
Pin 34 USB0EPE |
主设备电源使能 (高有效) |
EPEN |
Pin 35 USB0PFLT |
主设备电源失效信号 (低有效) |
PFLT |
U6是一个USB电源失效保护开关芯片。它用于保护和监视USB主设备端口电压。从微控制器引出的控制线USB0EPE通过一个下拉电阻以确保在复位时关闭主设备电源。
如果连接到USB主设备上的从设备瞬间吸收电流超过1A时,这个失效保护芯片会立即关闭USB电源。失效保护芯片还具有热关断功能,当从设备长时间吸收的电流大于500mA导致芯片过热时,失效保护芯片也会关闭USB电源。USB0PELT信号线为微控制器返回过流状态信号。
当开发板工作于USB主设备模式时,可以通过ICDI USB电缆或者外部+5V DC电源供电。
注:LM3S9B96的USB和ICDI接口在功能上是独立的。
Stellaris微控制器支持JTAG或SWD方式进行编程和调试。JTAG使用TCK、TMS、TDI和TDO信号,SWD使用更少的信号线(SWCLK、SWDIO和可选的SWO信号线),具体使用哪种协议由调试器决定。
LM3S9B96开发板支持一些列的硬件调试配置,表2-3简单叙述了这些配置。
表2-3 硬件调试配置
模式 |
调试功能 |
使用方法 |
选择方法 |
1 |
内部ICDI |
使用调试USB接口在系统调试LM3S9B96 |
默认模式 |
2 |
ICDI输出JTAG/SWD接口 |
通过开发板的ICDI接口调试另外的Stellaris微控制器 |
移除跳线TCK、TMS、TDI、TDO和PIN1 |
3 |
外部JTAG/SWD |
使用外部调试接口(ULNK、JLINK) |
将外部调试接口连接到开发板JTAG/SWD接口 |
表2-3中的调试模式3允许使用外部调试接口如J-LINK或者U-LINK调试开发板。大多数调试器使用调试接口的引脚1检测目标板电压,因此有时候需要使这个引脚输出一个逻辑电平。为了支持外部调试器,可以将跳线帽插入到CDD/PIN1处,以提供给该引脚3.3V电压信号。
USB转串行接口主要使用了飞特蒂亚微电子有限公司(Future Technology Devices International Ltd)的FT2322芯片。开发板出厂默认设置FT2322的通道A用于JTAG/SWD调式端口(同步串行接口),通道B用于虚拟串口(VCP)。开发板的这种特性允许主机可开发板之间通过一根USB电缆同时进行调试可串行通信。FT2322的这两种功能的驱动在开发套件提供的CD中能够找到。
开发板上有一个小容量串行EEPROM,用来保存FT2322的配置数据。该EEPORM不受LM3S9B96微控制器控制,更详细的FT2322操作见www.ftdichip.com网站。
FT2322 USB芯片可以在调试器的控制下完成JTAG/SWD串行操作。SWD和JTAG复用一个简单的逻辑电路,该电路在开发板工作在SWD模式下提供直接控制双向数据线的能力。
虚拟COM端口允许Windows应用程序(例如超级终端)通过USB端口与LM3S9B96的UART0进行通信。一旦FT2322虚拟串口设备连接到PC,Windows会为这个虚拟通道分配一个虚拟COM端口号。表2-4列出了与调试有关的信号线。
表2-4 与调试有关的信号线
微控制器引脚 |
板上功能 |
跳线名称 |
Pin 77 TDO/SWO |
JTAG 数据输出或跟踪数据输出 |
TDO |
Pin 78 TDI |
JTAG 数据输入 |
TDI |
Pin 79 TMS/SWDIO |
JTAG TMS or SWD 数据输入/输出 |
TMS |
Pin 80 TCK/SWCLK |
JTAG 时钟 或 SWD 时钟 |
TCK |
Pin 26 PA0/U0RX |
虚拟COM端口数据到 LM3S9B96 |
VCPRX |
Pin 27 PA1/U0TX |
LM3S9B96数据到虚拟COM端口 |
VCPTX |
Pin 64 RSTn |
系统复位 |
RSTn |
开发板支持Cortex-M3串行线输出跟踪数据(在SWD调试模式下,调试器常用SWO线输出调试信息)。在调试器控制下,板上逻辑电路可以SWO数据路由到虚拟串口的发送通道上,然后调试器就可以解码并翻译从虚拟COM端口接收的数据。在使用SWO时,正常的虚拟串口和UART0之间的通信将被中断。注意并不是所有的调试器都支持SWO。
详见StellarisLM3S9B96 Microcontroller Data Sheet for additional information on the Trace
PortInterface Unit (TPIU)。
开发板提供了一个320*240像素分辨率的TFT液晶图形显示屏。为防止刮伤显示屏,在显示屏上面贴了一层防护膜,使用的时候可以去掉这层防护膜。
n Kitronix公司的K350QVG-V1-F显示屏
n 320*240分辨率
n 3.5寸 262K色彩
n 宽温度范围
n 白色LED背光灯
n 集成RAM
n 电阻触摸屏
彩色LCD模块内嵌了一个多种工作模式的并行接口控制IC。开发板使用8位的8080工作模式,通过微控制器端口D提供数据总线。表2-5(译注:英文原文此处错写成表2-4)列出了与LCD相关的信号线。
表2-5 LCD相关信号线
微控制器引脚 |
板上功能 |
跳线名称 |
PE6/ADC1 |
Touch X+ |
X+ |
PE3 |
Touch Y- |
Y- |
PE2 |
Touch X- |
X- |
PE7/ADC0 |
Touch Y+ |
Y+ |
PB7 |
LCD 复位 |
LRSTn |
PD0..7 |
LCD 数据总线 0..7 |
LD0..7 |
PH7 |
LCD 数据/控制选择 |
LDC |
PB5 |
LCD 读选通 |
LRDn |
PH6 |
LCD 写选通 |
LWRn |
- |
背光控制 |
BLON |
(译注:我的开发板上的背光控制跳线名称是:BACKLIGH)
为了LCD正常显示,必须为背光LCD提供电源,U7(FAN5331B)为背光LED提供恒定的20mA电流。背光不受微控制器控制,通过一个跳线帽可将背光控制信号线接地,从而关闭背光。推荐使用微控制器的一个GPIO口来控制这个信号线。
因为FAN5331B运行在恒流模式,如果LCD关断时,它的输出电压会跳变(变高),为了预防IC和D3产生过电压故障,开发板使用一个稳压二极管(D4)来钳位电压。虽然背光需要的极限电流只有20mA,但还是加大了开发板的总电流。为了避免背光电路过热,可将一个跳线帽接到BLON跳线端子,以关断背光电路。
LCD模块内部具有基电压发生器,因此仅需要单跟3.3V直流电源。
4线电阻触摸屏直接与微控制器相连,使用微控制器的两路ADC通道和2路GPIO口。详见StellarisWareTM触摸屏操作源代码。
LM3S9B96开发板具有高级音频处理能力。开发板上使用音频解码芯片TLV320AIC23,该芯片与微控制器的IIS接口相连。开发板出厂时默认配置成音频输出模式(线输出和/或耳机输出)。所有四个音频接口都通过3.5mm耳机插座引出。表2-6列出了与IIS音频相关的信号线。
表2-6 IIS音频相关信号线
微控制器引脚 |
板上功能 |
跳线名称 |
I2C0SDA |
解码配置数据线 |
SDA |
I2C0SCL |
解码配置时钟线 |
SCL |
I2STXSD |
音频串行数据输出线 |
TXSD |
I2STXWS |
音频定位信号输出线 |
TXWS |
I2STXSCK |
音频位时钟输出线 |
BCLKa |
I2STXMCLK |
音频系统时钟输出线 |
MCLK |
I2SRXSD |
音频串行数据输入线 |
RXSDb |
I2SRXWS |
音频定位信号输入线 |
RXWSb |
I2SRXSCK |
音频位时钟输入线 |
BCLKb |
I2SRXMCLK |
音频系统时钟输入线 |
MCLKb |
a.与模拟参考电压共用GPIO,默认安装有跳线帽。
b.与LCD数据总线共用GPIO,默认未安装跳线帽。
微控制器使用IIC总线配置解码器的控制寄存器,使用IIC时,只能对解码芯片进行写操作不可以读操作。详见StellarisWareTMIIS例程和TLV320AIC23数据手册。
耳机输出可直接插入一个标准耳机,线输出需要连接到一个相适配的外部扬声器,包括常见的桌面PC音箱。
开发板提供了一个用户按键和LED,见表2-7所示。
表2-7 用户按键和LED相关信号线
微控制器引脚 |
板上功能 |
跳线名称 |
PJ7 |
用户按键 |
SWITCH |
PF3 |
用户 LED |
LEDa |
a. 与以太网插座黄色LED共用GPIO。默认安装有跳线帽。
外设接口(EPI)是一个高速8/16/32位并行总线,它用于连接外部外设或存储器,支持SDRAM、SRAM和Flash存储器,支持并行总线和FIFO缓存传输。
LM3S9B96开发套件包含一个8MBSDRAM板,可安装在EPI转接板上,其它EPI扩展板也可能有效。
SDRAM提供8MB(4MB*16)存储空间,意境配置,就能变成LM3S9B96存储器的一部分,它占用微控制器内存地址0x6000.0000 或 0x8000.0000中的一个。SDRAM接口复用DQ00...14和AD/BA0...14,不需要外部锁存器和缓存器。EPI接口共有32跟信号线,其中的24跟用于SDRAM模式,剩下的信号线可用于其它功能。
Flash和SRAM存储器扩展板(DK-LM3S9B96-EXP-FS8)是DK-LM3S9B96开发板的一个可选插件。这个扩展板使用Stellais微控制器的外设接口(EPI)工作,并提供Flash存储、SRAM和一个增强型的LCD接口。
更多DK-LM3S9B96-EXP-FS8存储器扩展板的信息见附录E“Stellaris® LM3S9B96 Flash and SRAM MemoryExpansion Board,”。
The Stellaris@ LM3S9B96开发套件提供一个板上调试接口电路,ICDI可以看作一个USB转JTAG/SWD转接板,它允许调试其它外部Stellaris微控制器目标板。详见“调试模式部分”。
图4-1 ICDI接口输出模式(调试其它目标板)
调试接口可以操作在SWD或者JTAG模式下,这取决以调试器IDE的配置。
IDE/调试器并不区分板上微控制器还是外部Steallis微控制器,它仅需要识别是否工程配置中的Stellais设备。
Steallis目标板有2*10 0.1英寸(2.54mm)双排座。连接双排座的电路应符合标准ARM JTAG 20 Pin规范,这个双排座既可以为外部提供调试接口,外部调试器可以可通过它调试板上微控制器。
ICDI不控制RST(复位)或TRST(测试复位)信号。这两个功能可通过JTAG/SWD命令实现,因此,这两根信号线通常不是必须的。
本章包含DK-LM3S9B96开发板原理图,详见开发套件CD \Documentation\Board\ BD-LM3S9B96 REV A.pdf。
没有Stellaris@ LM3S9B96开发套件CD的同学可以到TI官方网站上下载,网址http://www.ti.com/tool/dk-lm3s9b96-cd
图B-1 开发板正面元件布局
开发板提供了用于外部+5VDC电源(+/-5%)的电源插头。
插座尺寸:5.5mm*2.1mm
ICDI工作在输入和输出模式下,Stellaris@ LM3S9B96开发套件支持ARM标准的20针JTAG/SWD配置。可用JTAG/SWD接口调试相同引脚配置的Stellaris微控制器。
表C-1 调试接口引脚分配
功能 |
引脚号 |
TDI |
5 |
TDO/SWO |
13 |
TMS/SWDIO |
7 |
TCK/SWCLK |
9 |
系统复位 |
15 |
VDD |
1 |
GND |
4, 6, 8, 10, 12, 14, 16, 18, 20 |
未连接 |
2, 3, 11, 17, 19 |
仅当使用外部调试接口(例如ULINK)调试开发板时,将跳线帽连接跳线VDD/PIN1 (JP57)。