FreeMASTER 使用说明

1. FreeMASTER 的安装

前往飞思卡尔官网下载 FreeMASTER 2.0 安装软件,安装步骤略。

2. FreeMASTER 简介

本次总结将介绍如何通过 PE 添加 FreeMASTER 模块。所有 FreeMASTER 的嵌入式芯片都支持 FreeMASTER 功能。

  • FreeMASTER 是一种具有变量窗口和图形化功能的在线调试工具。
  • PC 可以通过通信端口(SCI、JTAG、CAN)读/写和观察嵌入式芯片内部所有被定义并使用到的全局变量。
  • FreeMASTER 的 PC端上位机中有 3 种基本功能。
  • 观察视窗:观察视窗中可以观察任意多个变量。
  • OScilloscope:功能类似示波器,实时刷新变量,以变量(Y轴)-时间(X轴)或变量(Y轴)-变量(X轴)的方式将变量变化图形化显示。由于其刷新速率受通信速率的限制,最短刷新时间为 10ms。故 OScilloscope 不适用于观察更新速度小于 10ms 的变量,此时就需用到 Recorder。
  • Recorder:不断记录数据,在需要时调出所有数据进行观察的工具。每调用一次 FMSTR1_Recorder() 函数,就进行一次数据的记录,故可根据需要安排 FMSTR1_Recorder() 函数的位置。该函数会在每次被调用时将需要观察的变量值储存在一个 buffer 中,buffer 被填充到设定的长度后,收集到的数据会传给 PC 端的 FreeMASTER 上位机,并可以以图形化的方式显示出来。其优点是使采样周期大大缩短,而缺点是不能实时观察数据,即观察到的数据由于定时批量传输存在一定的延时。当然,其可观察到的点数受所设置 buffer 大小的限制。

后两者能够在线观察的最大变量个数为 8 个,下面将结合实例进行具体说明。

3. 模块初始化

3.1  模块添加

如图 3-1 所示,双击添加 FreeMASTER 模块。

图 3-1 FreeMASTER 模块添加

如图 3-2 所示,双击FMSTR1:FreeMaster,在右侧弹出配置窗口。

图 3-2 添加 FreeMASTER 后的界面

3.2  模块设置

如图 3-3 所示为 FreeMASTER 设置界面,下面对各项设置进行介绍。

图 3-3 FreeMASTER 设置界面

  • 中断方式可选 Poll driven 或 Interrupt driven,这里以 Poll driven 为例。
  • 通信方式可选 SCI、JTAG、CAN,这里以 SCI 和 JTAG 通信为例。
  • Oscilloscope 最大可显示 8 个 变量,根据需要选择是否使用,这里选择使用(Enable)。
  • Recorder 最大可显示 8 个变量,根据需要选择是否使用,这里选择使用(Enable)。
  • Recorder buffer length 是嵌入式芯片内部储存的数据个数,达到这一限值后向上位机传送数据,这里选择 1000。
  • Data buffer length 用来储存 PC 端上位机发来的 command 命令,是否使用 Oscilloscope 和 Recorder 将对其最小设定长度产生影响,根据提示信息“The minimal buffer length is XXX byte ”进行设定。

其余选项保持默认设置即可。下面介绍 FreeMASTER 通信初始化。

由于通信方式选择的是 SCI,故在“FMSTR1:FreeMaster”目录下找到与之关联的QSCI0 模块,如图 3-4 所示。 双击“QSCI0:Init_SCI”进行设置,出现如图 3-5 所示 QSCI 设置界面。

图 3-4 打开 SCI 设置界面

①在 Clock setting 中进行时钟设置:本例中波特率设为 19200,此处波特率的设置要与 PC端上位机相同(后详)。通过 Baud rate divisor (波特率除数选项)进行粗调,Fraction baud rate divisor (波特率除数分数部分)进行微调。

②设置 SCI 数据格式的设置要与 PC 端上位机相同。如数据格式(Data format)是 8 位还是 9 位、信号是否需要翻转(Polarity)、是否需要校验(Parity)。其余设置保持默认即可。

如图 3-6 所示为 QSCI 引脚设置,与硬件对应即可。这里选择 RxD 为 GPIOC8,TxD 为 GPIOC7。

QSCI 设置中 Interrupt 与 Initialization 设置保持默认即可。

图3-5 SCI 设置界面

图 3-6 SCI 引脚选择

3.3  模块函数的使用

在使用观察视窗或 Oscilloscope 时,需在 main() 函数 for 循环中不断调用 FMSTR_Poll() 函数。

在使用 Recorder 时,除需要在 main() 函数 for 循环中调用 FMSTR1_Poll()函数,还要在需要记录数据时调用 FMSTR1_Recorder() 函数,每次调用记录一次所有使用到的全局变量。根据需要安排 FMSTR1_Recorder() 函数的位置。

之后会举例说明 Oscilloscope 和 Recorder 的应用场合,并进行比较。

3.4  设置 PC 端FreeMASTER

将嵌入式芯片与 PC(Personal Computer,即个人电脑)相连,需要通过外围电路(如串口转 USB 电路)将 UART 通信的 RXD、TxD 信号转化为USB 端口的 D+、D- 信号,并用 USB 线连接至 PC。此时 PC 才可识别串口设备。

3.4.1 基本设置

如图 3-7 所示为 PC 端 FreeMASTER 主界面。

图 3-7 PC 端 FreeMASTER 界面简介

如图 3-8 所示,添加识别到的串口设备。通过 PC 的设备管理器可查看当前 PC 识别到的硬件设备,如图 3-9 所示。

图3-8 添加串口设备

图 3-9 设备管理器观察设备 COM 口

通信方式设置,下面以 SCI 和 JTAG 通信为例进行介绍(在具体应用中选择其中一种即可):

 如图 3-10 所示为 FreeMASTER 软件的SCI 设置界面,参数须与嵌入式芯片的设置相同。

图 3-10 SCI 通信设置

 

‚ 如图 3-11 所示为 FreeMASTER 软件的JTAG 设置界面。

图 3-11 JTAG 通信设置

接下来关联工程文件,即将 FreeMASTER 与指定的工程文件绑定,如图 3-12 所示。

图 3-12 添加 MAP Files

MAP Files 文件内包含变量的的变量名、变量类型以及地址等信息,添加此文件方便地使 PC 端 FreeMASTER 与工程相关联。文件类型选择“Binary ELF with DWARF2/DWARF4 dbg format”,如图 3-13 所示


图 3-13 选择关联文件类型

3.4.2 视窗中变量的添加、观察与修改

图 3-14 、图 3-15 所示为添加变量方法。

图 3-14 打开变量列表添加变量

图 3-15 添加变量 k

图 3-15 中的 ① 为在正确选择编译好的 MAP Files 后,Address 中应有在 CodeWarrior 中定义且被使用的变量。本例中定义了 k 变量。下拉列表中出现的其他变量是在嵌入式芯片与 PC 端 FreeMASTER 间进行指令传输的变量。

如图 3-16 所示为变量参数的设置。

K 变量设置完成后单击“确定”按钮,用同样的方法添加变量 i。

如需修改变量的值,可设置变量的 Modifying 属性。如图 3-17和图3-18 所示为 Modifying 属性设置界面。

图 3-16 Variable 参数的设置

图 3-17 变量修改的设置界面 1

图 3-18  变量修改的设置界面 2

 

变量添加完成后的 Variable List 如图 3-19 所示。

图 3-19 添加变量后的 Variables List

下面添加变量至观察视窗。具体步骤如图 3-20~图 3-21 所示。

  • 选中 Watch;
  • 选中 k(或 i);
  • 单击 Add 添加变量,添加好变量 k 和 i 后的界面如图 3-22 所示。


图 3-20 变量观察视窗添加变量

图 3-21 可选变量显示

图 3-22 变量添加

图 3-23 变量添加完成界面

3.4.3 Oscilloscope 的使用

如图3-24 所示,添加 Oscilloscope 至当前 FreeMASTER 工程。

图 3-24 添加 Oscilloscope

如图 3-25、图 3-26 所示,设置 Scope 属性。

图 3-25 Oscilloscope 基本设置

 选择横轴时间单位。勾选 Append units name to the label 则显示横轴单位为s,否则不显示。

‚ 选择横轴宽度,如图 3-25 所示整个横轴长度为 10s。勾选 Auto-scale when lower than width 则显示时间不足 10s 时,会自动调整横轴长度为当前时间值。不勾选则横轴时间固定为 10s。

图 3-26 Oscilloscope 属性设置

PC 端 FreeMASTER 可添加多个变量进行观察,最多支持 8 个变量在 6 个 BLOCK 中显示。

如果两个变量在同一坐标轴观察,则按照图 3-27 操作,添加变量后的 Oscilloscope 如图 3-28 所示,其中变量 k 和 i 可自己选择不同颜色显示。两个变量变化曲线同时在 BLOCK0 中显示。

图 3-27 两变量在同一坐标轴显示设置

图 3-28 两变量在同一坐标轴显示效果

 

如果两变量在两个坐标轴观察,选择 Graph vars 中的一个选项和 Assignment 中一个 BLOCK 可将其关联,按照图 3-29 操作,添加变量后的 Oscilloscope 如图 3-30 所示。变量 k 的变化曲线在 BLOCK0 中显示,变量 i 的变化曲线在 BLOCK1 中显示。

图 3-29 两变量在两个坐标轴显示设置

图 3-30 两变量在两个坐标轴显示效果

 

注意:在使用观察视窗或 Oscilloscope 时,参考以上步骤设置完成后,还需要在 main() 函数 for 循环中不断调用 FMSTR1_Poll() 函数。

 

3.4.4 Recorder 的使用:

如图3-31 所示,添加 Recorder 至当前 FreeMASTER 工程。

图 3-31 添加 Recorder

 

Recorder 的基本设置如图 3-32 所示。

图3-32 Recorder 基本设置

 Timer base 为时间轴与采样数的关系。Recorder 为每次刷新显示的采样点数。这里选择 256。其可设置最大值为图中‚所示“xxx points can be seen”。

‚ 在 FreeMASTER 运行时才可显示最大采样数。与 CW 中对FreeMASTER 的设置以及变量数有关。这里在程序运行时显示的数值为 256。

Recorder 的属性设置如图 3-33 所示。

图 3-33 Recorder 属性设置

 

Recorder 的触发设置如图 3-34所示。

图 3-34 Recorder 触发设置

 Threshold 即触发值,当触发变量达到这一数值时触发,图 3-35 中的 Threshold 值为 20,与图 3-34 中对应。

‚ Pretrigger 是触发点前保存的数据个数,图 3-35 中的 Pretrigger 值为10,与图 3-34 中对应。点(Pretrigger,Threshold)即如图 3-35 所示点(10,20)是 PC 端 FreeMASTER 经过处理后显示波形中肯定存在的点。

图 3-35 Recorder 运行效果

 

注意:在使用 Recorder 时,参考以上步骤设置完成后,除需要在main()函数 for 循环中调用 FMSTR1_Poll() 函数,还要在需要记录数据时调用 FMSTR1_Recorder() 函数。

★博文内容均由个人提供,与平台无关,如有违法或侵权,请与网站管理员联系。

★文明上网,请理性发言。内容一周内被举报5次,发文人进小黑屋喔~

评论