查看:
350
|
回复:
1
|
TI M0开发板测评报告+评测报告
|
tricore
1
主题
3
回复 |
1#
电梯直达
一、开发环境搭建 基于MSPM0,官方推荐的开发环境有三种,分别是TI官方的CCS、Keil、IAR,关于每种开发环境以及工程的创建,官方有相应的文档介绍https://software-dl.ti.com/msp430/esd/MSPM0-SDK/1_20_01_06/docs/english/quickstart_guides/doc_guide/doc_guide-srcs/index.html。 为了获取更好的支持和便利性,本次选择TI官方的CCS IDE进行开发测试,但是需要注意的是,目前CCS支持的仿真器只有jlink和XDS等,最常见的开源DAP-link在CCS里面并不支持,因此如果使用DAP-link调试仿真则需要换为Keil或者IAR。
二、使用XDS调试 目前官方推荐的工具是TMDSEMU110-U — XDS110 JTAG 调试探针,看了一眼售价,价格不菲,直接放弃。
翻阅官方各种评估板手册发现,TI的MSP432评估板板载的也是XDS110(不知道跟上面九百多的具体差别在哪里,可能是多了些隔离之类的吧,但是最基本的调试仿真 功能肯定都一样) 上图为MSP432E401Y LaunchPad评估板上的板载XDS-110仿真器 上图为MSPM0G3507 LaunchPad评估板上的板载XDS-110仿真器 深入研究了一下,二者虽然都是XDS-110,但是硬件方案不太一样。MSP432E401Y LaunchPad使用TM4C129作为仿真器,MSPM0G3507 LaunchPad使用MSP432E401Y作为仿真器,不过硬件再怎么变,形态上它还是一个调试器,翻出手里的MSP432E401Y LaunchPad尝试一下。 由于这块评估板几年前的了,固件比较老,MSPM0是M0+内核的,为了更好的兼容性,先将板载XDS-110进行固件升级。 进入到CCS安装目录下的指定位置,如图所示 执行xdsdfu -e查看当前XDS-110是否成功连接到PC,如果连接成功,会有上图信息显示,包括设备描述符里面的VID和PID,以及序列号等信息。 接着执行xdsdfu -m将XDS-110切换到固件升级DFU模式下 最后执行xdsdfu -f firmware_3.0.0.28.bin -r,将固件(firmware_3.0.0.28.bin,位于XDS110文件夹内)下载到设备上,并复位设备。 重新执行xdsdfu -e可以看到Version栏已经变为更新后的固件版本,这里由于我之前已经操作过一次了,固件版本一样,仅做演示用。 硬件连接 断开1-2、13-14、15-16的跳线帽,使用杜邦线按——GND、14——SWDIO、16——SWCLK连接,即可使用XDS进行调试。 软件配置 在对应激活工程下,右击选择Properties——General——Project——Connection处选择XDS110,然后应用保存即可进行调试下载。 如图已进入CCS下相应的调试界面。
三、LED测试 在CCS下创建一个GPIO工程。 在上面选择官方的gpio_toggle_output例子,导入到CCS里面。默认官方例程是基于MSPM0G3507-LQFP64创建的,而立创的这块板子是基于MSPM0G3507SPTR-LQFP48的,为了使用方便,先将目标器件改为48脚封装的。 按上图步骤,进入switch界面切换器件。 将Package由LQFP-64改为LQFP-48,之后点击CONFIRM确认。 确认之后在syscfg配置里面会出现一个工程配置文件,并对该文件报错,大致意思就是器件变更,与元器件不一致。 进入工程配置文件后,将器件选择为MSPM0G3507,与上面保持一致。之后将工程进行编译,即可发现器件变更为48脚的了。 根据实际原理图对对应的pin进行修改,这里立创提供的资料里面没有原理图,只能对照着提供的keil版本测试例程看是哪个IO了,板上的LED2(蓝灯)——PB14,LED3(绿灯)——PA28,LED4(红灯)——PA31,LED1为电源指示灯,针对MSPM0G3507功能扩展板,其他不确定是哪个IO。接着直接在syscfg里面对IO进行修改配置 指定端口、引脚号、方向为输出、初始化为低电平,配置完后编译即可在代码里生成对应的初始化。 在main函数里更改对应的逻辑,初始化LED3和LED4为高电平,LED2为低电平,在while里面不断翻转LED2和LED3的电平,现象为上电后LED3和LED4一块亮,之后LED4保持常量,LED2和LED3亮灭交替。现象如下图 几颗LED放置的太近了,手机相机拍的不是很明显。。
四、MATHACL硬件数学加速器测试 MSPM0G内置MATHACL硬件加速器,可以计算多种数学函数,包括正弦函数、开方、练乘、连除等运算,在需要数字运算的场景下非常实用。官方也提供了丰富的API供调用来实现数学函数计算,但是底层操作貌似已经封库,只需要关注上层调用函数传参、读参即可。
上面是一些数学运算的函数声明,已经封装到IQmathLib.h里面。 关于各种数学函数运算相关的寄存器配置,手册里面也介绍过了,也可以根据需要自定义相关的函数。 上面举例为计算平方根所需的配置。 通过实现测试除法功能,此处调试时已经变量格式转化为Q-Value(24)格式,qC的 值与预期符合,接着通过_IQtoF函数将定点数转换为浮点数。 五、总结 MSPM0G相比M0L上面的模拟功能更加丰富,4mbps的ADC可以用来采集电机的相电流,低侧MOS使用电流采样电阻将电流信号送至片内OPA,经ADC采集,也可以用COMP进行相电流过流保护。原意是想使用SimpleFOCMini的硬件控制,但是上面将低侧MOS直接接地,没有电流采样信号,只能重新基于DRV8313画一块新的带电流采样的板子。 |
立创商城小编
211
主题
148
回复 |
2#
恭喜您入选本次测评活动前三名,我们将在2月2日前,派发以下奖励至你的客编。 奖励1:立创采购晶50 奖励2:立创商城满101减100优惠券,有效期30天。 请记得及时使用优惠券,祝您工作顺利! |
|