C2000学习
基于TI官方板卡:LAUNCHXL-F280049C 评估板 | TI.com.cn
学习基础
-
拥有板卡。
-
芯片手册:TMS320F280049C data sheet, product information and support | TI.com
- 用户指南 :用处不大,但是可以快速开始:SPRUII7B | 德州仪器 TI.com.cn
- 用户手册 :虽然但是,其实MidWare里面东西更多:ZHCA981F | 德州仪器 TI.com.cn
- **板卡手册:**盒子里面丢了可以看看:www.ti.com.cn/cn/lit/ug/s...
-
拥有MyTI账号:所有下载都需要这个账号
-
速通TI的心:其实不比STM32难太多
-
准备开始
板卡导览
等我学完了做吧
软件准备
TI给人的感觉就是:==零碎==
-
CCS: CCSTUDIO IDE、配置、编译器或调试器 | TI.com.cn
- 集成开发环境,安装之后装C2000就行。WEB版的下载速度也很快。
- 注意不要下成
Theia
这个给M0用的了
- 注意不要下成
- 但是下载之后可以进行美化,详情参考大礼包。
- 资源管理器天天403,别用了,也没啥用,截图留念。
- 资源管理器天天403,别用了,也没啥用,截图留念。
- 集成开发环境,安装之后装C2000就行。WEB版的下载速度也很快。
-
C2000Ware: C2000WARE 软件开发套件 (SDK) | TI.com.cn
- 类似于CUBE给你下的支持包,有例程,而且比CUBE那个辣眼睛的HAL库不带CUBEMX配置好看点。
- 文件结构如下:(注意,以下目录结构来自5.0版本,升级之后酌情对照)
python. └── C2000Ware_5_00_00_00 # 根目录 ├── C2000WareUpdater.exe # 更新器,没用 ├── C2000Ware_5.00.00.00_manifest.html # 类似于许可证,可以查看支持的板卡和库的级别 ├── C2000Ware_v5.00.00.00_Release_Notes.pdf # 发行说明,没用 ├── archive # 没用,存了个历史的库 ├── boards # 给硬件看/你板子要看原理图的时候看 ├── change_log.html # 没啥用 ├── device_support # 军火展示+一些老的用寄存器写的例程(基本不用看) ├── docs # 目录导航`/docs/c2000Ware_quickstart_guide/html/index.html` ├── driverlib # 你滴库函数!! ├── examples # 重新导向你滴库函数 ├── kernel # RTOS ├── libraries # 第三方库 ├── license.txt # 法律文件 ├── training # 类似于靶场,但是很烂 ├── uninstallers # 卸载器 └── utilities # 一些工具,目前没用
- 根据doc文档中说明如下:
Directory Name Description .metadata 包含 C2000Ware 资源浏览器独立 GUI 文件。请勿修改。 boards 包含 C2000 controlCARDS的硬件设计原理图、BOM、gerber 文件和文档, device_support 包含所有特定于设备的支持文件、位字段标头和设备开发用户指南。 docs 包含 C2000Ware 软件包用户指南和所有软件包文档的 HTML 索引页。 driverlib 包含特定于设备的驱动程序库和基于驱动程序的外围设备示例。 examples 包含涉及多个设备/外设的示例,以展示不同的应用。 libraries 包含特定于设备的库和核心库。 uninstallers 包含 C2000Ware 卸载程序。 utilities 包含开发实用程序应用程序,如闪存编程器、Windows 驱动程序和第三方软件 - 啊对,这么重要的东西CCS是不会给你下的。
-
SysConfig :TI-CubeMX:SYSCONFIG IDE、配置、编译器或调试器 | TI.com.cn
- 功能没那么强大,而且需要手动添加软件包。选中
<盘符>:\ti\C2000
即可。
- 功能没那么强大,而且需要手动添加软件包。选中
-
ControlSuite:一个老的库支持软件,但是支持全中文。
- 里面有一些实用案例,结构还可以,可以拿来看。
- 和Ware一样,不创建启动方式,自己进去找。
迁移可以参考:www.ti.com.cn/cn/lit/ug/s...
- 其他电机、控制包请参考大礼包 :)。
第一个工程模板
非常重要,直接面向C2000Ware编程的第一步!
创建你的英雄
直接放目录结构:
python
├── .ccsproject # CCS创建的工程文件
├── .cproject # CCS创建的工程文件
├── .project # CCS创建的工程文件
├── App # 应用层,你编写的逻辑等
│ ├── inc # 你自己的库
│ └── src # 你的主要逻辑
├── Bsp # SysConfig生成的你自己的班级支持包
│ ├── board.c
│ ├── board.cmd.genlibs
│ ├── board.h
│ ├── board.opt
│ ├── c2000ware_libraries.c
│ ├── c2000ware_libraries.cmd.genlibs
│ ├── c2000ware_libraries.h
│ ├── c2000ware_libraries.opt
│ ├── clocktree.h
│ ├── pinmux.csv
│ └── untitled.syscfg # 双击可以进入配置界面
├── C2000Ware # \driverlib\f28004x\driverlib 全部内容
│ ├── ccs # 需要引用头文件,其中,DEBUG和RELEASE需要分开引入/排除
│ ├── inc # 寄存器层的东西
│ ├── ...... # 其他DriverLib
├── Cmd # 烧写算法文件,原始地址为:\device_support\f28004x\common\cmd 按需选用
│ ├── 28004x_cla_flash_lnk.cmd
│ ├── 28004x_cla_ram_lnk.cmd
│ ├── 28004x_generic_flash_lnk.cmd
│ ├── 28004x_generic_ram_lnk.cmd
│ ├── 28004x_iqmath_flash_lnk.cmd
│ ├── 28004x_iqmath_ram_lnk.cmd
│ ├── 28004x_launchpad_demo_flash_lnk.cmd
│ ├── 28004x_launchpad_demo_ram_lnk.cmd
│ └── f28004x_headers_nonbios.cmd # \device_support\f28004x\headers\cmd
├── Debug # CCS自动生成的调试文件
├── Device # 设备描述文件,只要选用这几个即可,原始目录:\device_support\f28004x\common\include和source当中
│ ├── device.c
│ ├── device.h
│ ├── driverlib.h
│ └── f28004x_codestartbranch.asm # 板卡启动文件
├── Lib # 按需使用的C2000的库
└── targetConfigs # CCS生成的
├── TMS320F280049C.ccxml # 你的烧录器配置文件
└── readme.txt
主要构建步骤如下:
-
创建各个文件夹,并拖入文件:Cmd,Device,C2000Ware
-
使用
SysConfig
生成BSP,直接保存全部文件(右下角)
3. 进入CCS之后创建工程,需要设置的地方如下:右键项目属性进入: 1. 使用的RuntimeSupport和OutputFormat,以及使用的连接器/连接件也可以直接放在工程当中(Cmd,然后禁用其他的):
3. 预定义设置
DEBUG
宏: 4. Include(注意在引用
Ware
当中的2000之后,还需要引入Debug并且屏蔽Release(3个lib都需要屏蔽!): 5. 右键禁用其他的连接文件,以免造成困扰:
1. 推荐使用generic系列的。 6. Main中建立主函数,构建如下,初始化顺序参考官方例程,如:
arduino
```c
#include "device.h"
#include "driverlib.h"
#include "board.h"
/**
* main.c
*/
int main(void)
{
Device_init(); // 初始化设备
Interrupt_initModule(); //初始化中断
Interrupt_initVectorTable(); //初始化中断向量表
Board_init(); //SysConfig文件引入
Interrupt_enableMaster(); //开启中断
while(1);
return 0;
}
```
外设
等快速熟悉了后续更新
大礼包
一些"增值目录"
- TI官方软件板卡说明:C2000™ 软件指南 --- C2000™ 软件指南 (ti.com)
- TI官方C2000主页:C2000 实时微控制器 | TI.com.cn
C2000的美化
CCS的汉化
- 众所周知,CCS是基于Eclipse的二次开发,那么,采用Eclipse的汉化方式当然可行。
帮助->安装新软件
:- 名称随意添加,位置请添加:mirrors.tuna.tsinghua.edu.cn/eclipse/tec...
- 这是清华大学的babel镜像源,根据地理位置选择,搜一个。
- 然后在babel列表Fetch出来之后选择:
- 下一步下一步。
主题选择和美化
我这里安装我喜欢的暗色主题
帮助-->Eclipse市场
,等待载入之后选择Poular,很快找到:- Icon挺好看的,但是第三个安装不了(CCS缺JAVA包),点完了就点下一个吧。
- 安装完后如果不满意的后续更改:
窗口-->首选项-->常规-->外观
:使用主题:- 随后点击
Open Color Themes Page
进入主题的修改页,可以快速搭配,Enjoy!我的:Af7-Qw
- 如果有其他好看的主题请分享给我捏。
CCS使用小技巧
-
CCS是默认开启代码补全的,只是需要快捷键触发,默认快捷键为:
Alt+/
。- 需要修改可以在
首选项-->键
当中搜索内容辅助
进行修改:
- 需要修改可以在
-
CCS恢复默认窗口:
窗口-->透视图-->复位透视图
根据需求恢复吧。

- Eclipse没有Copilot,但是应用商店里面有这个叫做Tabnine 的插件,可以提供代码自动补齐,虽然反应不是很快;
- 在和我一起建立软件包之后,可以直接在code进行代码查找和开发哦w
白嫖Copilot的劳动力