资料目录
TI-MCU专区
TI M4简单入门
发布日期:2011/11/21
终于拿到TI-M4的开发板了,Stellaris® LM4F232 Evaluation Board,如下图。

由于TI-M4是在之前TI-M3基础上发展来的,外设模块的使用与M3基本一致,开发工具与环境也都一样,所以如果你之前有玩过TI-M3系列的开发板,那么TI-M4开发板就能快速使用。
在介绍TI-M4快速入门之前 ,先来一个TI M3 与 TI M4异同点的比较。
|
特性 |
TI M4 |
TI M3 |
|
内核集成浮点运算单元与DSP指令 |
有 |
无 |
|
数据运算能力 |
强 |
一般 |
|
主频 |
80M, 120M |
50M, 80M |
|
IC制成工艺 |
65nm |
130nm |
|
功耗 |
极低,业界一流 待机1.6uA |
偏高 |
|
LQFP-144封装 |
有 |
无 |
|
ADC |
12bit 1M speed |
10bit 1M speed |
|
UART |
8个 |
3个 |
|
USB |
DEV/HOST/OTG |
DEV/HOST/OTG |
|
内部EEPROM |
有 |
无 |
|
软件资源 |
丰富 |
丰富 |
|
芯片价格 |
低 10K $1.5 起卖 |
低 |
学习MCU,开发板是必不可少的,我使用的是Stellaris® LM4F232 Evaluation Board。和TI所有的M3开发板一样,板上有一个Stellaris ICDI调试仿真工具。不过M4开发板上的Stellaris ICDI是使用TI公司自己芯片(LM3S3601)来实现的,而之前M3开发板是使用FT2232芯片来实现。我牛刀小试体验了几次,使用LM3S3601来做的Stellaris ICDI调试仿真工具,下载程序更快,在KEIL下调试仿真更加流畅快速。
Stellaris ICDI主要有两大功能:
l JTAG/SWD 调试功能
我们可以Stellaris ICDI在KEIL\IAR\CCS等开发环境下下载程序,仿真调试程序,也可以用LM FLASH PROGRAMMER.exe软件下载程序,解锁芯片等操作。
用USB线连接PC与 LM4F232 Evaluation Board后,在 我的电脑->设备管理器中,会显示如下图所示Stellaris ICDI设备。
l 虚拟串口
Stellaris ICDI插入PC后,有一个USB虚拟出来的串口,MCU用UART发送出来的数据可以通过USB在PC上虚拟出来的串口来接受。
用USB线连接PC与 LM4F232 Evaluation Board后,在 我的电脑->设备管理器中,会显示如下图所示Stellaris Virtual Serial Port设备。

由于TI Stellaris CORTEX-M4使用ARM公司通用内核,所以通用的编译器都会支持,如KEIL, IAR, CCS等。
我个人使用KEIL多一点,所以一般例程都是KEIL环境下的工程。KEIL MDK-ARM 4.22a以后的版本(包括4.22a)已经开始支持TI M4的芯片型号了,如图所示。

MDK为商业化编译软件,需要付费授权使用,但是它有提供32K代码限制版本,如果你程序在32K以下,就没有必要付费授权。当然,如果你是用来学习,网上有MDK的和谐文件可以使用,这样你的软件就没有代码限制。
TI 有提供一个LM FLASH PROGRAMMER.exe 的小软件,用Stellaris ICDI连接目标板与PC,可以对目标板MCU内部FLASH进行 读,写,擦除,以及解锁等操作;
LM FLASH PROGRAMMER.exe 可以与TI M3 \M4 内部固化的BOOTLOAD程序通讯,完成程序升级的功能。
目前LM FLASH PROGRAMMER.exe支持UART\ Ethernet\ USB 3种通讯接口,可以用这3种通讯接口来完成BOOTLOAD功能。

和大部分的USB设备一样,当你第一次用USB连接PC与Stellaris ICDI设备时,PC会提示:“发现新硬件”。这时,你需要指定M4 ICDI文件所在的目录为驱动程序目录,PC开始寻找ICDI的驱动脚本。
TI M3\ M4有提供一个资源非常丰富的软件包StellarisWare,该软件包里有boards, boot_loader, docs, driverlib, examples, grlib, inc, IQmath, third_party, tools, usblib, utils, windows_drivers 13个文件夹。
boards 文件夹里是TI 各种M3 M4开发板实验例程。
boot_loader 为固化在TI内部ROM中的BOOTLOAD源代码。
docs 为TI M3 M4各种应用文档
driverlib 为TI外设驱动库源代码
examples 为外设使用简单例程
grlib 为TI提供图形库源代码
inc 为TI外设寄存器地址定义头文件
IQmath 为TI提供定点转浮点运算的一个函数库
third_party 为第三方公司的一些开源代码
tools 为TI提供的一些PC实用小软件
usblib 为TI提供USB库源代码
utils 为TI提供一些实用程序代码
windows_drivers 为TI提供一些PC上运行软件所需要的脚本文件
TI M3 M4外设驱动库为一套程序,两个工程编译出来的。M4驱动库的文件名为driverlib-cm4f.lib,在新建工程时,只需加入这个文件即可;M3驱动库的文件名为driverlib-cm3.lib,在新建工程时,只需加入这个文件即可。
因为我使用的是Stellaris® LM4F232 Evaluation Board,直接运行StellarisWare/boards/ek-lm4f232/uart_echo 例程。
打开串口助手,选择Stellaris Virtual Serial Port 端口号,发送数据,如图所示。
