MSPM0L1306 LaunchPad™开发套件用用于评估MSPM0L130x混合信号微控制器开发板。该套件包含在MSPM0L1xx上开始开发所需的一切微控制器平台,包括用于编程、调试和能量的板载调试探针测量。该板还具有板载按钮和LED,可为简单用户快速集成接口、板载热敏电阻、光传感器和RGB LED。
开发板靓照:
MSPM0L1306是Arm®32位Cortex®-M0+CPU,频率高达32MHz。设备功能64KB嵌入式闪存与4KB片上RAM相结合。集成的高性能模拟12位1-Msps SAR ADC、零漂移和零交叉斩波运算放大器(OPA)以及通用放大器(GPAMP)等外围设备可帮助用户设计系统。40针BoosterPack™插入式模块头简化了快速原型设计,支持广泛的可用BoosterPack插件模块的数量。您可以快速添加无线连接、图形显示器、环境传感等等。设计您自己的BoosterPack插件模块或选择TI和第三方开发人员已经提供了许多。还提供免费软件开发工具,如TI的Code Composer Studio™IDE、IAR Embedded Workbench™IDE和Keil®µVision®IDE。Code Composer Studio IDE支持EnergyTrace™技术当与MSPM0L1306 LaunchPad开发套件配对时。有关LaunchPad的更多信息开发工具包、支持的BoosterPack插件模块和可用资源可以在TI上找到LaunchPad™开发工具包门户网站。快速入门并在MSPM0软件中查找可用资源开发工具包(SDK),请访问TI云开发区。MSPM0 MCU还得到广泛的支持在线辅助资料、MSP Academy培训以及通过TI E2E™支持论坛提供的在线支持。
资源:
•带有外部编程选项的板载XDS110调试探头
•EnergyTrace技术可用于超低功率调试
•2个按钮、1个LED和1个RGB LED,用于用户交互
•热敏电阻电路
•光传感器电路
•ADC输入的RC滤波器(默认情况下未填充)
•支持GPIO和XDS110的BSL调用
•通过USB到PC的反向通道UART
芯片MSPM0L1306介绍:MSPM0L134x 和 MSPM0L130x 微控制器 (MCU) 属于 MSP 高度集成的超低功耗 32 位 MSPM0 MCU 系列,该系列基于增强型 Arm® Cortex®-M0+ 内核平台,工作频率最高可达 32MHz。这些低成本 MCU 提供高性能模拟外 设集成,支持 -40°C 至 125°C 的工作温度范围,并在 1.62V 至 3.6V 的电源电压下运行。MSPM0L134x 和 MSPM0L130x 器件提供高达 64KB 的嵌入式闪存程序存储器和高达 4KB 的 SRAM。这些 MCU 包含精度高达 ±1.2% 的高速片上振荡器,无需外部晶体。其他特性包括 3 通道 DMA、16 位和 32 位 CRC 加速器,以及各种高性能模拟外设,例如一个具有可配置内部电压基准的 12 位 1.68MSPS ADC、一个具有内置基准 DAC 的高速比较器、两个具有可编程增益的零漂移零交叉运算放大器、一个通用放大器和一个片上温度传感器。 这些器件还提供智能数字外设,例如四个 16 位通用计时器、一个窗口化看门狗计时器和各种通信外设(包括两个 UART、一个 SPI 和两个 I 2C)。这些通信外设为 LIN、IrDA、DALI、Manchester、Smart Card、SMBus 和 PMBus 提供协议支持。 TI MSPM0 系列低功耗 MCU 包含具有不同模拟和数字集成度的器件,可让客户找到满足其工程需求的 MCU。此架构结合了多种低功耗模式,并经过优化,可在便携式测量应用中延长电池寿命。
– Arm® 32 位 Cortex®-M0+ CPU,频率高达
32MHz
• 工作特性
– 工作温度范围:–40°C 至 125°C
– 宽电源电压范围:1.62V 至 3.6V
• 存储器
– 高达 64KB 的闪存
– 高达 4KB 的 SRAM
• 高性能模拟外设
– 一个具有总计多达 10 个外部通道的 12 位
1.68Msps 模数转换器 (ADC)
– 可配置的 1.4V 或 2.5V 内部 ADC 电压基准
(VREF)
– 两个零漂移、零交叉斩波运算放大器 (OPA)
• 0.5µV/°C 漂移,具有斩波
• 6pA 输入偏置电流 1
• 集成可编程增益级 (1-32x)
– 一个通用放大器 (GPAMP)
– 一个具有 8 位基准 DAC 的高速比较器 (COMP)
• 32ns 传播延迟
• 低功耗模式,低至 <1µA
– ADC、OPA、COMP 和 DAC 之间的可编程模拟
连接
– 集成温度传感器
• 经优化的低功耗模式
– 运行:71µA/MHz (CoreMark)
– 停止:4MHz 时为 151µA,32kHz 时为 44µA
– 待机:32kHz 16 位计时器运行时为 1.0µA,
SRAM/寄存器完全保留,32MHz 时钟唤醒时间
为 3.2µs
– 关断:61nA,具有 IO 唤醒能力
• 智能数字外设
– 3 通道 DMA 控制器
– 3 通道事件结构信号系统
– 四个 16 位通用计时器,每个计时器具有两个捕
捉/比较寄存器,支持待机模式下的低功耗运
行,总共支持 8 个 PWM 通道
– 窗口化看门狗计时器
• 增强型通信接口
– 两个 UART 接口;一个支持 LIN、IrDA、
DALI、Smart Card、Manchester 并且都支持待
机模式下的低功耗运行
– 两个 I2C 接口;一个支持 FM+ (1 Mbit/s),两个
都支持 SMBus、PMBus 和从停止状态唤醒
– 一个 SPI,支持高达 16Mb/s 的速率
• 时钟系统
– 精度为 ±1.2% 的内部 4MHz 至 32MHz 振荡器
(SYSOSC)
– 精度为 ±3% 的内部 32kHz 低频振荡器
(LFOSC)
• 数据完整性
– 循环冗余校验器(CRC-16 或 CRC-32)
• 灵活的 I/O 功能
– 多达 28 个 GPIO
– 两个具有失效防护保护功能的 5V 容限开漏 IO
• 开发支持
– 2 引脚串行线调试 (SWD)
• 封装选项
– 32 引脚 VQFN (RHB)
– 32 引脚 VSSOP (DGS)
– 28 引脚 VSSOP (DGS)
– 24 引脚 VQFN (RGE)
– 20 引脚 VSSOP (DGS)
– 16 引脚 SOT(DYY)
– 16 引脚 WQFN (RTR)
• 系列成员 (另请参阅器件比较)
– MSPM0L13x3:8KB 闪存、2KB RAM
– MSPM0L13x4:16KB 闪存、2KB RAM
– MSPM0L13x5:32KB 闪存、4KB RAM
– MSPM0L13x6:64KB 闪存、4KB RAM
• 开发套件与软件(另请参阅工具与软件)
– LP-MSPM0L1306 LaunchPad™ 开发套件
– MSP 软件开发套件 (SDK)
软件进行GPIO操作:
首先进行芯片资源配置:
代码编写:
芯片原理图:
#include "ti_msp_dl_config.h" /* This results in approximately 0.5s of delay assuming 32MHz CPU_CLK */ #define DELAY (26000000) //粗延时函数,微秒 void delay_us1(unsigned int time) { unsigned int i=0; while(time--) { i=10; //自己定义 while(i--) ; } } //毫秒级的延时 void delay_ms1(unsigned int time) { unsigned int i=0; while(time--) { i=12000; //自己定义 while(i--) ; } } int main(void) { /* Power on GPIO, initialize pins as digital outputs */ SYSCFG_DL_init(); /* Default: LED1 and LED3 ON, LED2 OFF */ DL_GPIO_clearPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_2_PIN); DL_GPIO_setPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_1_PIN | GPIO_LEDS_USER_LED_3_PIN | GPIO_LEDS_USER_TEST_PIN); while (1) { DL_GPIO_setPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_1_PIN); DL_GPIO_setPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_2_PIN); DL_GPIO_setPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_3_PIN); delay_ms1(500); DL_GPIO_clearPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_1_PIN); DL_GPIO_clearPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_2_PIN); DL_GPIO_clearPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_3_PIN); delay_ms1(500); DL_GPIO_setPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_1_PIN); DL_GPIO_setPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_1_PIN); DL_GPIO_setPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_2_PIN); DL_GPIO_setPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_3_PIN); delay_ms1(500); DL_GPIO_clearPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_1_PIN); DL_GPIO_clearPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_2_PIN); DL_GPIO_clearPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_3_PIN); delay_ms1(500); DL_GPIO_setPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_1_PIN); DL_GPIO_setPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_1_PIN); DL_GPIO_setPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_2_PIN); DL_GPIO_setPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_3_PIN); delay_ms1(500); DL_GPIO_clearPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_1_PIN); DL_GPIO_clearPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_2_PIN); DL_GPIO_clearPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_3_PIN); delay_ms1(500); DL_GPIO_setPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_1_PIN); DL_GPIO_clearPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_1_PIN); DL_GPIO_setPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_2_PIN); // 灭掉红色,点亮绿色 delay_ms(500); DL_GPIO_clearPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_2_PIN); DL_GPIO_setPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_3_PIN); // 灭掉绿色,点亮蓝色 delay_ms(500); DL_GPIO_clearPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_3_PIN); DL_GPIO_setPins(GPIO_LEDS_PORT, GPIO_LEDS_USER_LED_1_PIN); } }
实现现象一下视频;
https://www.bilibili.com/video/BV17m411C7xc/?buvid=XY75B537C416E17A953A00A33EDB883CA28EB&is_story_h5=false&mid=Pw2Hq3t6IhfKj%2FPD%2Bao96g%3D%3D&plat_id=147&share_from=ugc&share_medium=android&share_plat=android&share_session_id=24675ff3-531b-4190-887e-92ff72a910f3&share_source=WEIXIN&share_tag=s_i×tamp=1714456421&unique_k=gZaBq1y&up_id=526937168