2023电赛备赛-MSPM0学习笔记(五)UART配置

前言

如果您未看过笔者之前写的"第一步配置"和"MSPM0教程之调用SYSCONFIG以及配置GPIO输出和输入",强烈建议您将这两篇先看了,以免出现配置错误,如果您以及完成了SYSCONFIG的配置,请继续往下看

MSPM0时钟介绍

MSPM0一共有两个时钟源,分别是SYSOSC和LFOSC,他们的频率分别为4M和32.768K

image-20230605193425581

通过上图,我们可以看到,有多个时钟源,简单介绍一下

MCLK:主系统时钟,为PD1外设提供总线时钟(BUSCLK),系统初始化为32MHz;

ULPCLK:低功耗时钟,为PD0外设提供总线时钟,系统初始化为32MHz;

**LFCLK:**低频时钟,就是低频振荡器输出的32.768KHz;

CPUCLK:CPU运行时钟,,系统初始化为32MHz;

MFCLK:中频时钟,固定4MHz不变,使用的是SYSOC振荡器分频来,系统初始化默认关闭,需要软件打开;

MFPCLK:中频精准时钟,这个是作为时钟输出用的4MHz时钟,在SLEEP,STOP等低功耗模式下也可以持续输出;

以上文段来自创易栈MSPM0L1306开发板教程4 - 时钟

UART

接下来演示一下用MFCLK时钟源的UART配置

首先打开SYSCONFIG,在UART配置页点击ADD,将时钟源选择MFCLK。

image-20230605194141922

可以看到这时候Calculated Clock Source为0,说明我们还没打开MFCLK的时钟源,点击侧面的树状图

image-20230605194333209

然后再MFCLK那里点击一下即可,回到UART配置页那里,这时Calculated Clock Source还是0,我们还需要去SYSCTL那里配置一下

image-20230605194409912

点击SYSCTL,选择Use Clock Tree

image-20230605194532987

再返回UART,此时Calculated Clock Source已经有数值了

image-20230605194615727

将过采样(Oversampling)设置为16倍以降低误差

开启接收中断

image-20230605195327973

接下来绑定复用的IO,根据创易栈的手册,已经将UART1接在了CH340上了,所以我们绑定IO到PA10 和PA11

image-20230605195932347

image-20230605195918262

接下来保存,来到keil进行编译,让config.c更新一下配置信息

编写UART的中断函数

void UART1_IRQHandler(void)

{

  if(DL_UART_getEnabledInterruptStatus(UART1_INST,DL_UART_INTERRUPT_RX) == DL_UART_INTERRUPT_RX)

  {

  volatile char c;

  c = DL_UART_receiveData(UART1_INST);//接收数据

  DL_UART_transmitData(UART1_INST, c);//发送数据

  DL_UART_clearInterruptStatus(UART1_INST,DL_UART_INTERRUPT_RX);//清除中断标志位

  }

}

编写main

int main(void)

{

  SYSCFG_DL_init();

  NVIC_EnableIRQ(UART1_INT_IRQn);

  while (1) {

    delay_ms(1000);

    DL_GPIO_togglePins(GPIO_GRP_0_PORT,GPIO_GRP_0_LED_PIN);

  }

}

效果

image-20230605211723825

成功回显

转载请标明出处

By QDU_jiongsheng

<think>嗯,用户想了解如何使用CCS Theia进行MSPM0G3507的环境搭建、例程运行以及基本操作。首先,我需要整理相关的步骤,确保每个部分都清晰明了。 首先,环境搭建部分。用户需要下载CCS Theia和MSPM0-SDK。这里要注意正确的下载链接和安装顺序。可能需要检查官方资源或引用中的信息,比如引用[1]提到了下载地址,需要确认是否正确。另外,是否需要安装额外的驱动或软件支持包?比如调试器的驱动,例如XDS110,可能需要单独安装或者SDK中已经包含? 然后是创建新项目。这部分需要详细说明如何选择正确的芯片型号,导入SDK例程。可能用户会遇到找不到芯片型号的问题,引用[2]提到CCS中可能找不到型号,需要添加或更新SDK。这时候需要指导用户如何操作,比如在CCS Theia中如何添加SDK路径或者更新SDK版本。 接下来是工程配置,比如SysConfig工具的使用。引用[3]提到了syscfg文件,可能需要说明如何通过图形界面配置引脚和时钟,这对于新手来说可能比较直观,但步骤需要详细,比如双击打开配置界面,保存后自动生成代码。 例程运行部分需要指导用户如何编译项目,连接开发板,下载程序。可能需要注意调试器的连接方式,比如使用USB正确连接,选择正确的调试配置,比如XDS110。下载后如何复位或运行程序,是否需要按复位键,或者IDE中有直接运行按钮。 基本操作部分需要涵盖界面布局,比如资源管理器、代码编辑区、调试控制台的位置。调试技巧比如设置断点、变量监控,这些是常用的功能,需要简明扼要地说明。另外,如何导入现有工程或示例代码,比如通过导入向导选择SDK中的示例项目。 用户可能遇到的问题包括驱动安装失败、SDK路径错误、编译错误等,需要给出排查建议,比如检查USB连接、更新SDK、确认工程配置。可能还需要提醒用户参考TI的官方文档或视频教程,比如引用[3]中的B站链接,提供进一步学习的资源。 最后,生成的相关问题需要围绕用户可能感兴趣的下一步操作,比如如何添加外设驱动,优化代码体积,或者使用其他调试工具。这些问题应该帮助用户深入学习和解决问题,同时引导他们查阅更多资料。 需要确保整个回答结构清晰,步骤分明,使用中文,并且正确应用LaTeX格式。同时,引用标识要自然地附加在相关段落末尾,确保来源正确。</think>### MSPM0G3507 CCS Theia环境搭建与操作指南 #### 一、环境搭建步骤 1. **下载CCS Theia与SDK** - 访问[TI官网](https://www.ti.com/tool/CCSTHEIA)下载最新版CCS Theia(推荐版本≥12.6)[^1] - 下载[MSPM0-SDK](https://www.ti.com/tool/MSPM0-SDK),选择对应MSPM0G3507的软件包[^3] 2. **安装与配置** - 安装CCS Theia时勾选`MSPM0G3xx系列支持包`和`XDS110调试驱动` - 解压MSPM0-SDK至无空格路径(如`D:\ti\mspm0_sdk`) ```bash # SDK目录结构示例 mspm0_sdk/ ├── examples/ ├── kernel/ └── sysconfig/ ``` #### 二、例程运行流程 1. **创建新工程** - 点击`File → New → CCS Project` - 选择芯片型号`MSPM0G3507`,模板选择`Empty Project` - 右键工程选择`Import Example`,导入SDK中的GPIO/LED例程 2. **工程配置** - 双击`sysconfig/example.syscfg`打开图形化配置界面 - 配置GPIO引脚(如LED连接PA15)后保存,自动生成初始化代码[^3] 3. **编译与下载** - 点击工具栏`Build`按钮(或`Ctrl+B`)编译工程 - 通过USB连接开发板,选择`XDS110 Debug Probe`调试器 - 点击`Debug`按钮下载程序,按开发板复位键观察LED闪烁 #### 三、CCS Theia基本操作 | 功能 | 操作路径 | 快捷键 | |-------------------|-----------------------------------|-----------| | 代码自动补全 | 输入`.`触发 | Ctrl+Space| | 工程资源管理器 | 左侧导航栏`Project Explorer` | Alt+Shift+Q+P | | 调试控制台 | `Run → Debug`启动后自动打开 | F11 | | 变量监控 | 右键变量→`Add Watch` | Ctrl+Shift+W | #### 四、常见问题排查 1. **驱动安装失败** - 检查Windows设备管理器是否识别XDS110调试器 - 手动安装驱动路径:`<CCS安装目录>/ccs_base/common/uscif/xds110` 2. **例程编译报错** - 确认SDK路径正确:`Window → Preferences → Code Composer Studio → Products` 3. **无法下载程序** - 检查开发板供(建议使用独立5V源) - 更新XDS110固件:`ccs_base/script/xdsdfu.exe -e`
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值