嵌入式系统实验指导书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第1部分DK-LM3S9B92 教学实验平台简介
1.1 Stellaris® LM3S9B92开发板
本书中的所有实验都是基于DK-LM3S9B92开发平台,LM3S9B92开发板提供了一个平台给基于ARM Cortex-M3的高性能的LM3S9B92微控制器开发系统。
LM3S9B92是Stellaris® Tempest-class微控制器家族的成员之一。Tempest-class系列设备拥有性能为80MHz的时钟速率,一个外围设备接口(EPI)和Audio I2S接口。除了支持这些功能的新硬件外,DK-LM3S9B92还包含了一系列丰富的基于其他Stellaris® 板的外设。
开发板包括一个板载线上调试接口(on-board in-circuit debug interface,ICDI),该接口支持JTAG和SWD调试。一个标准的ARM 20针脚的调试头支持大量的调试解决方案。
Stellaris® LM3S9B92开发套件加快了Tempest-class微控制器的开发。该套件还包含了完整的实验源代码。
Stellaris® LM3S9B92开发板包含以下特性:
⏹ 设置简单的USB线提供调试、通讯和供电功能
⏹ 拥有众多外设的灵活开发平台
⏹ 彩色LCD图形显示
– 320×240分辨率的TFT LCD模块
–电阻式触摸接口
⏹ 拥有256K闪存,96K SDRAM以及整合以太网、MAC+PHY、USB OTG和CAN通讯功能的80 MHz LM3S9B92 微控制器
⏹ 8MB SDRAM扩展(通过EPI接口)
⏹ 1MB串行闪存
⏹ 精确3.00V电压参考
⏹ 微处理器ROM中内建SAFERTOS™操作系统
⏹ I2S立体声音频编解码器
–输入输出
–耳机输出
–麦克风输入
⏹ 控制器区域网络(CAN)接口
⏹ 10/100 BaseT 以太网
⏹ USB On-The-Go(OTG)连接器
– Device、Host、以及OTG模式
⏹ 用户LED和按钮
⏹ 指轮电位器(可以用于菜单导航)
⏹ MicroSD 卡插槽
⏹ 支持一系列调试选项
–集成在线调试接口(ICDI)
–全面支持JTAG、SWD和SWO
–标准的ARM 20 针脚JTAG 调试连接器
⏹ USB 虚拟COM 端口
⏹ 跳线分流方便重新分配I/O 资源
⏹ 为StellarisWare 软件所支持,包括图形库、USB 库和外围驱动库
图1-1 DK-LM3S9B92开发板
1.1.1 开发工具清单
Stellaris® LM3S9B92 开发工具包括开发和运行使用Stellaris®微处理器的应用程序所需的所有东西:
⏹ LM3S9B92 开发板
⏹ 网线
⏹ 用于调试的USB Mini-B 线缆
⏹ 用于OTG 连接PC 的USB Micro-B 线缆
⏹ 用于USB 主机的连接USB A 适配器的USB Micro-A 线缆
⏹ USB 闪存记忆棒
⏹ microSD 卡
⏹ 20 位带状电缆线
⏹ 光盘包含以下工具的评估版本:
– StellarisWare 及用于本开发板的实验代码
–IAR Embedded Workbench Kickstart Edition
1.1.2 系统框图
图1-2 DK-LM3S9B92开发板框图
1.1.3 开发板说明
⏹ 开发板的供电电压:4.75—5.25 VDC,从以下的输入源中的一个得到:
–调试器(ICDI)USB 线缆(连接至PC)
–USB Micro-B 线缆(连接至PC)
–直流电源插孔(2.1x5.5mm 由外部电源供应)
⏹ 尺寸:
-107mmx 114mm
⏹ 模拟参考电压:3.0V +/-0.2%
⏹ RoHS 状态:符合
注:当LM3S9B92开发板工作在USB主机模式时,主机的连接器供电给已连接的USB 设备。有效的供应电流被限制在~200mA,除非开发板用5v,600mA的外部电源供电。
1.2 硬件描述
除了一个LM3S9B92微处理器之外,开发板还具备了许多有用的外围设备功能和一个集成在线调试接口(ICDI),本章将介绍这些外围设备如何工作和微处理器的接口。
Stellaris® LM3S9B92是一个基于Cortex-M3内核的微处理器,拥有256K闪存、80MHz 时钟周期、以太网接口、USB、EPI、ROM内建SAFERTOS™还有大量的外设。详情请参见LM3S9B92微控制器数据手册(随书附赠光盘“4技术资料”文件夹中的Datasheet-LM3S9B92文件)。
跳线和GPIO分配
每一个开发板上的外设电路是通过一个0.1‖间距的跳线连接到LM3S9B92微控制器。图1-3显示了跳线出厂时的默认设置。跳线在默认设置时才可以正确无误的运行快速启动演示程序。
出产默认跳线设置。默认连接的跳线:JP1,JP2,JP3~JP13,JP16~JP32,JP34,JP37~JP43,JP46,JP48,JP50~JP56,JP58,JP60~JP61。默认不连接的跳线:JP14~JP15,JP33,JP35,JP44,JP45,JP47,JP49,JP57,JP65。
图1-3 默认跳线设置
开发板提供了许多功能但是由于引脚数和GPIO复用的限制,不能同时支持多项功能。举个例子,开发板不能同时支持SDRAM和I2S接口接收(麦克风或线路输入)功能设置。与I2S接口接收相关的跳线在默认设置没有接上。
表1-1列出了出厂默认设置中没有被连接的功能和外设。使用这些外设需要将其他相关的外设断开连接。在表1-1中,结合一些用到这块板的StellarisWare范例程序,列出了可选的跳线设置。
表 1-1 板功能及在默认设置中不连接的外围设备
GPIO分配详情如附录B。该表列出了所有默认的且被0.1”跳线和PCB布线所支持的可选配置。LM3S9B92拥有额外的内部复用,这将需要额外的配置,使得外设和GPIO引脚之间可能需要分开布线。
板上的ICDI部分有一个没有实际功能的GND-GND跳线,该跳线仅为“摆放”空闲跳线开关(帽)而提供方便的地方。当需要时,这根跳线可以重复使用。
时钟
开发板使用一个16.0MHz(Y2)晶振完成LM3S9B92微处理器的内部主时钟电路。使用一个可代码配置的内部PLL来倍频此时钟到更高的频率,以供内核和外设时钟使用。
一个25.0MHz(Y1)晶振为以太网物理层(Ethernet PHY)提供一个精准的时基。
复位
LM3S9B92微控制器的复位信号(RESETn)连接到了复位开关(SW2)和ICDI电路。连接到ICDI电路作为调试控制复位。
以下三种事件中的一种会导致外部复位信号生效(低电平):
⏹ 上电复位(通过一个R-C回路实现)
⏹ 复位开关SW2被按下
⏹ 当调试器发出复位指令时,由ICDI电路(U12 FT2232,U13D 74LVC125A)产生复位信
号。(此功能可选,可能不是所有调试器都支持此功能)
LCD模块要求有特殊的复位时序,需要来自微控制器的专用控制线。
电源
此开发板需要一个5.0V稳压电源,跳线JP34、JP35和电源拨动开关J16用于电源选择,默认的电源输入是ICDI USB接口。为避免电源间的冲突,在任何时侯只能使用一个5.0V电压源。
当USB处于主机(Host)状态时,如果+5V电源可用(非板上)该电源应当选择为ICDI 或外部电源。
该开发板上具有两个主电源。一个+3.3V电源为微控制器和大多数电路供电。+5V用于OTG USB端口和在线调试接口(ICDI)USB控制器供电。一个低压降(LDO)稳压器(U5)将+5 V电源转换为+3.3V。这两个电源都被连接到了测试口,以便使用。
USB
此LM3S9B92的全速USB控制器支持On-the-Go,主机和设备配置。USB相关信号信息参考表1-2。5针脚的microAB OTG连接头支持这三种接口和包含在套件中的配套电缆。
USB端口既有额外的高达15KV的ESD保护二极管阵列。