hsh007 发表于 2024-2-9 10:40

MSPM0开发生态---软件开发工具

<div class='showpostmsg'> 本帖最后由 hsh007 于 2024-2-9 10:39 编辑

开发生态对开发者非常重要,所以各个MCU厂家非常重视。

笔者先以STM32为例来看看开发生态包含哪些内容,然后体验一下TI MSPM0的软件开发工具。

# 概述
下图是STM32的开发生态系统示意图,是以STM32Cube为核心构建的。


在软件开发工具方面,ST提供的如下:


TI主要提供Code Composer Studio(CCS), SysConfig和MSPM0 Analog Configurator。

# IDE

## CCS
### 概述

(https://www.ti.com/tool/CCSTUDIO?keyMatch=&tisearch=search-everything&usecase=partmatches)是TI 用于微控制器和处理器的集成开发环境 (IDE),它包含一整套用于开发和调试嵌入式应用的工具。CCS可在 Windows®、Linux® 和 macOS® 上使用。此外,还可以通过访问 (https://dev.ti.com/),在云中使用它。


CCS正在从 Eclipse 过渡到 Theia应用框架。在此过渡期间,这两个版本均可用并受到维护。对器件系列和功能的支持将逐渐添加到CCStudio Theia中。

与传统的CCS相比,CCStudio Theia具有更现代化的界面和更强大的扩展性。THEIA采用了Web技术,可以通过浏览器访问,也支持本地安装。它提供了丰富的插件生态系统,使开发人员可以根据自己的需求定制IDE,并支持多种编程语言。

项目在 Eclipse 和Theia 版本的 CCS之间兼容,因此可在项目之间轻松切换。听说CCS 12.x 将是最后一个基于Eclipse的大版本,未来CCStudio Theia将使用CCS 13.x。

另外,容易忽略的是TI还有基于云的CCS,无需下载和安装大量软件即可在云中进行开发。

附上用户在线用户指南:(https://software-dl.ti.com/ccs/esd/documents/users_guide_zh/index.html)

### [编译器](https://www.ti.com/tool/TI-CGT)

CCS包括专为 TI 器件获得卓越性能和理想代码尺寸而定制的 C/C++ 编译器:包含用于 MSP430TM、C2000TM 和 DSP 等专有架构的编译器,以及用于基于 Arm 的微控制器的编译器。

TI Arm Clang 编译器将 LLVM 和 Clang 与 TI 增添的功能(如链接时优化)相结合,为基于 Arm 的 TI 微控制器提供出色的代码大小。

### Resource Explorer

通过 Resource Explorer 可以访问嵌入式开发所需的资源。快速访问为所用器件定制的示例、培训、软件开发套件和文档。除了包含在 Code Composer Studio 中,另外也可通过 (https://dev.ti.com/tirex) 在云中找到。

### (https://www.ti.com/tool/SYSCONFIG)

SysConfig是一款类似STM32CubeMX的直观而全面的工具,可简化配置难题,用于配置引脚、外设、驱动程序、无线电和其他组件。 SysConfig 可以自动检测、发现和解决冲突,来加快软件开发。
可以在CCS中点击*.syscfg文件打开:


也可以单独打开:


### (https://www.ti.com/tool/ENERGYTRACE) ™ 

EnergyTrace是一款分析工具,用于测量和显示应用的电能系统配置并帮助优化应用,从而实现超低功耗。


可以选择MCU运行时间,如10s,20s来测量功耗:


### 脚本与自动化

CCS拥有完整的脚本环境,允许自动执行重复性任务,例如测试和性能基准测试。
Debug Server Scripting (DSS) 是 Debug Server 的一组跨平台 Java API,允许通过 Java 或第三方工具(如 (https://www.mozilla.org/rhino)、Java、(https://www.jython.org/)、(https://wiki.tcl-lang.org/page/Jacl)等)进行脚本编写。JavaScript 是 DSS 支持的默认(也是优选)脚本语言。
Debug Server 是 Code Composer Studio (CCS) 的基本调试引擎,可通过 DSS 和 CCS IDE 来访问它。

## 第三方IDE
作为大厂,ARM Keil和IAR肯定是要支持的。本次我没有去尝试这些第三方IDE,CCS(Theia)是免费的,能用就尽量用免费的吧,帮公司和自己省点钱。

# SysConfig
续前面介绍,SYSCONFIG 虽然跟 STM32CubeMX 一样是一个代码配置工具,但是 SYSCONFIG 不会生成嵌入形式的代码,它基本只生成单独的4个文件:



上图中第一个第二个文件就是初始化代码的C和H文件,在一个空工程中,最基础的程序是这样的:
![]

这里面的SYSCFG_DL_init函数,就是在ti_msp_dl_config.c中,这里面的任何代码都不建议修改,因为每一次保存SYSCONFIG的配置,这个文件就会被SYSCONFIG改动。

# MSPM0 Analog Configurator
是一个在线的图形配置工具,旨在使用 MSPM0 器件简化和加快模拟信号链的设计和实现,无需进行传统的编码开发。

目前只支持浏览器Chrome和Firefox,不支持微软和苹果的浏览器:



但是FQ后用Chrome也登录不了。


# 需要注意的几点

## CCStudio Theia的下载

安装包总是下载失败,通过网页、迅雷以及其它下载工具试了多次都不行。
最后请管理员帮忙下载的。

## 版本管理
- CCS没有带版本管理功能,只有CCStudio Theia带了

- CCStudio Theia中不能新建或者切换branch,只能用默认的


使用git commit提交项目后,然后git checkout,CCS(Theia)需要使用git smart导入:


否则会编译出错:



</div><script>                                        var loginstr = '<div class="locked">查看本帖全部内容,请<a href="javascript:;"   style="color:#e60000" class="loginf">登录</a>或者<a href="https://bbs.eeworld.com.cn/member.php?mod=register_eeworld.php&action=wechat" style="color:#e60000" target="_blank">注册</a></div>';
                                       
                                        if(parseInt(discuz_uid)==0){
                                               
                                        }                </script><script type="text/javascript">(function(d,c){var a=d.createElement("script"),m=d.getElementsByTagName("script"),eewurl="//counter.eeworld.com.cn/pv/count/";a.src=eewurl+c;m.parentNode.insertBefore(a,m)})(document,523)</script>

秦天qintian0303 发表于 2024-2-9 20:50

<p>sysconfig这个工具随工程这一点我比较喜欢,不用再启动其他的软件了</p>
页: [1]
查看完整版本: MSPM0开发生态---软件开发工具