版权声明:未经许可,文章不得用于任何商业用途,如需转载请发站内信件获得本人同意。
1. 环境搭建
1.1 硬件开发板
使用TI官方开发板LAUNCHXL2-570LC43,该板功能齐全,且MCU的pin脚全部引出,具体功能如下
- USB powered and capability for external 5v supply
- On board USBXDS_ICDIc2 JTAG debug
- IEEE 1588 precision time Ethernet PHY DP83630
- On board SCI to PC serial communication
- User programmable push buttons
- Reset switches
- LEDs and Analog input
- Two 40 pin BoosterPack XL Headers (one populated)
- High density connectors for parallel ports (EMIF, RTP, DMM) for further expansion
- Footprint for prototyping headers (not populated) to bring out all MCU Pins
- External high-speed emulation via 14-pin TI-JTAG header (not populated)
开发板参考链接见下, 该页面内有所有的相关资源可以下载(下面几个章节所需)
LAUNCHXL2-570LC43
1.2 软件开发环境
需要下载两个开发环境,一个是HALCoGen,一个是Code Composer Studio (CCS)。
1.2.1 HALCoGen
下载链接: HALCoGen
此工具提供了一个GUI界面,可以图形化配置芯片的资源,然后动态生成BSP相关代码(类似STM32的CubeMX)。下载后直接安装即可,无特别步骤。
1.2.2 Code Composer Studio
下载链接: CCSTUDIO
此工具为TI基于Elicpse实现的标准开发IDE,适用于TI多款MCU产品,安装时可以仅选择TMS570相关的软件包,如下图所示。
1.3 文档资料
2. 入门工程: LED闪烁
-
File->New CCS project,选项设置如下图,工程名随意。注意需要选择Empty Project。
![在这里插入图片描述](https://img-blog.csdnimg.cn/fbd578c5a4954dbcac28721affb89712.png -
工程建立后,运行HALCoGen,新建一个工程,选择TMS570LC43x系列,工程文件夹选择上面CSS建立的工程目录(project name,不是workspace name),工程名随便(示例中用的是TMS570-Gen),然后显示如下的芯片资源页面
-
选择Driver Enable标签,取消所有driver前的勾选,再勾选Enable GIO driver
-
再选择GIO标签页,Port B标签,Bit 6的配置项,输出选择1,模式选择“output”(勾选即可)
Port B-Bit 6对应开发板上的LED2,如下图中的原理图所示,输出为高(1)时LED2(见下图)会点亮。
-
完成以上步骤后,按F5生成HAL代码,此时CSS工程文件夹下会自动导入生成的文件,如下图
-
设置CSS工程属性包含新生成的include目录下头文件。在工程目录内选择工程然后右键,选择properties,在弹出的对话框内选择TMS570-Gen目录下的include文件夹,见下图。
-
在生成的文件夹内,source目录里,双击HL_sys_mail.c文件,在文件内输入如下代码。注意,代码必须写在下面的这种代码块之内, 否则会被HALCoGen自动生成功能给覆盖掉。
/* USER CODE BEGIN (1) */
/* USER CODE END */
工程代码:
/* USER CODE BEGIN (0) */
/* USER CODE END */
/* Include Files */
#include "HL_sys_common.h"
/* USER CODE BEGIN (1) */
#include "HL_gio.h"
/* USER CODE END */
/** @fn void main(void)
* @brief Application main function
* @note This function is empty by default.
*
* This function is called after startup.
* The user can use this function to implement the application.
*/
/* USER CODE BEGIN (2) */
#define CNT 5000000
/* USER CODE END */
int main(void)
{
/* USER CODE BEGIN (3) */
int i;
gioInit();
while(1)
{
gioToggleBit(gioPORTB, 6);
for(i = 0;i<CNT; i++);
}
/* USER CODE END */
return 0;
}
/* USER CODE BEGIN (4) */
/* USER CODE END */
- 选择Project->Build project,编译工程,如果无误,显示如下
- 用板子所带USB线连接板子和电脑,然后F11下载二进制文件到开发板,启动Debug过程。如果是第一次使用板载调试器,可能需要更新调试器固件,按照引导提示更新固件即可。成功进入Debug状态后,界面如下
- 按F8即可运行程序,可以看到LED2周期性闪烁。注意,闪烁时间取决于程序中的宏定义CNT数值,数值越大,间隔越长
#define CNT 5000000 - 至此,第一个工程LED闪烁全部完成