精华内容
下载资源
问答
  • freeMASTER 3.0

    2020-12-16 11:20:26
    freeMASTER 3.0是nxp公司的调试辅助软件,可以通过下载器、CAN、串口去观测程序中全局变量的状态。
  • freemaster入门教程.pdf

    2020-10-13 10:45:07
    这是NXP的一款调试工具,非常方便,这里提供简单的入门操作,很实用方便的工具。
  • FreeMaster_软件.zip

    2020-02-27 19:48:16
    FreeMaster_软件是NXP配套的调试软件,用于通过串口或者CAN等总线在线观察程序运行中的各个变量、等信息。
  • FreeMaster_软件.rar

    2019-09-18 21:42:44
    codewarrior软件仿真工具freemaster,方便芯片实时仿真与模拟。
  • Freemaster开发步骤

    2018-07-27 12:16:18
    Freemaster开发步骤,非常好用的调试工具,可以按这个步开发
  • FreeMASTER_Serial_Communication_Driver_V2_0
  • 玩转飞思卡尔在线调试工具FreeMaster的详细讲解
  • freemaster 的使用说明

    2018-07-03 10:26:25
    自己编写如何使用freemaster配合Code Warrior进行调试程序,可以实时看到全局变量的大小
  • freeMASTER工具使用记录

    2020-12-03 15:55:11
    以K66开发板为例,详细记录了nxp的freeMASTER工具使用记录。可供初学该工具用于调试的朋友借鉴参考。
  • FreeMASTER Serial Communication Driver》,freemaster串行驱动程序说明文档。
  • 通过CAN总线,使用freemaster工具进行在线观察和调试,已经调试通过
  • FreeMASTER快速入门

    2021-10-16 15:47:15
    文章目录FreeMASTER快速入门1.FreeMASTER介绍2.FreeMASTER获取3.FreeMASTER用法3.1 准备工作3.2 通信方式介绍3.3 FreeMASTER简单使用3.3.1 基于OpenSDA调试器使用FreeMASTER3.3.1.1 准备可执行文件3.3.1.2 创建...

    FreeMASTER快速入门

    1.FreeMASTER介绍

    如果有使用过NXP的MCU开发电机控制器的客户,一定用过或者听过MCAT,如下图所示,准确来说,MCAT就是FreeMASTER的一个图形插件,即control page窗口,整体界面就是FreeMASTER。MCAT是对FreeMASTER的高阶应用,这里不做详细描述,有兴趣的可以去NXP官网下载应用笔记AN4642进行研究。
    0

    下面摘取了两段NXP官网对FreeMater的介绍:

    • FreeMASTER是一种用户友好的实时调试监视器和数据可视化工具,可用于运行时配置和调试嵌入式软件应用。
    • FreeMASTER支持对正在运行的系统上的变量进行非侵入式监视,并且可以在示波器式显示器上以标准小部件(仪表、滑块等)或文本形式的数据形式显示多个变量,从而提供易于使用的数据记录器。

    2.FreeMASTER获取

    打开NXP官网,搜索栏输入“freemaster”,第一个链接点进去就到了FreeMASTER主界面,切换到DWONLOADS窗口,会看到有两个系列的FreeMASTER:

    • FreeMASTER tool 3.x,除了传统的FreeMASTER上位机之外,还有一个FreeMaster Lite,可以借助web远程通信,同时还支持第三方使用JSON-RPC的应用。
    • FreeMaster tool 2.x,传统的FreeMASTER上位机,官网上有2.5和2.0两个版本。
      1

    特别说明:FreeMASTER是向后兼容的,使用2.x版本生成的pmp文件可以用3.x版本打开使用,但是在使用3.x版本打开之后,再使用2.x版本有几率会出现无法打开的情况。

    3.FreeMASTER用法

    由于FreeMASTER 3.x版本的安装包比较大,而且很多功能我用不到,所以我这里选择的FreeMASTER 2.5版本(FreeMASTER 2.0版本的工具栏中的开始/暂停功能使用的同一个按钮,不容易判断判断FreeMASTER的状态,推荐使用2.5版本)

    3.1 准备工作

    在使用FreeMASTER之前,需要准备以下工具:

    • S32K144EVB-Q100
    • 一根MicroUSB线
    • S32 Design Studio for ARM 2.2
    • FreeMASTER 2.5

    3.2 通信方式介绍

    FreeMASTER 2.5支持两种连接方式:

    • RS232模式,用于使用USB转UART工具连接电脑上的FreeMASTER和MCU
    • Plug-in Module模式:
      1. 用于使用调试器连接电脑上的FreeMASTER和MCU,目前常见的调试接口都支持,如JTAG,SWD,BDM,CMSIS DAP等。
      2. 用于使用USB转CAN工具(USB转LIN工具)连接电脑上的FreeMASTER和MCU,主流的CAN卡供应商都支持,如Vector,KVASER,ZLG等。

    FreeMASTER 3.0支持的连接方式差不多,详细情况如下图: 2

    3.3 FreeMASTER简单使用

    3.3.1 基于OpenSDA调试器使用FreeMASTER

    接下来先介绍基于调试器的方式使用FreeMASTER监控变量,使用调试器的好处在于不需要在MCU的代码中添加FreeMASTER的驱动,只需要配置FreeMASTER上位机工程即可,缺点是会占用调试器资源。

    3.3.1.1 准备可执行文件

    使用FreeMASTER之前准备好可执行文件,S32DS生成的ELF文件,KEIL生成的AXF文件和IAR生成的OUT文件的都可以,同时需要和MCU烧录的文件保持一致。

    1. 本文选择S32DS 2.2 自带的PWM例程,如下图所示,并将其命名为ftm_pwm_s32k144_freemaster
      3

    2. 工程ftm_pwm_s32k144_freemaster生成之后,将mian函数内部的局部变量变成全局变量,因为FreeMASTER只能观察全局变量,如下图所示:
      4

    3. 保存改动之后,编译生成ELF文件,如下图,同时将elf烧入开发板的MCU中。
      5

    4. 同时,预先记住需要观察的全局变量,在制作FreeMASTER工程时会用到,这里选择全局变量increaseDutyCycledutyCycle,在代码中的变化规律如下图:
      6

    3.3.1.2 创建FreeMASTER工程

    1. 打开FreeMASTER,点击菜单栏的Project,选择Options,如下图所示:
      7

    2. Options选型卡界面比较多,这次主要用到的是CommMAP Files这两个界面。Comm界面主要用来选择通讯方式,MAP Files界面用来选择相应的可执行文件。Options选型卡界面如下图所示:
      8

    3. 首先配置Comm界面,通讯方式选择Plug-in module,点开下拉,如下图所示。因为我这里使用的调试器是板载的OpenSDA,选择第二个即可。如果使用Jlink,选择倒数第三个即可。
      9

    4. 接着配置connect string选项,如下图所示,选择相应的驱动和型号,点击OK。
      10

    5. 然后配置MAP Files界面,点击下图的红框处,选择之前生成的elf文件,点击打开即可。
      11

    6. 打开菜单栏Project的Variables选项,会进入变量列表,如下图所示。
      12

    7. 点击New,如下图所示,选择需要用到的向量increaseDutyCycledutyCycle,并进行相关的配置,如下图所示。如果想要在变量显示时可以手动修改变量时,可以点击Modifying,选择变量修改的方式,范围内任意值或者下拉列表选择。
      13

    8. 右击工程名,选择属性,在Main界面修改工程名,如下图所示。
      14

    9. 切换到Watch界面,将变量添加到观察窗口,完成之后,变量会显示在下方的Variable Watch窗口。同时也可以在Watch界面增加新的变量
      15

    10. 为了更直观的感受变量的变化趋势,需要增加波形显示。右击工程名,选择创建示波器,在Main界面修改波形名称,如下图所示:
      16

    11. 切换Setup界面,选择需要显示的变量,如下图所示:
      17

    12. 配置完成后将工程保存到例程的文件夹中。

    3.3.1.3 测试效果

    1. 将开发板连接上电脑,打开刚才的FreeMASTER工程,打开之前的Connect String配置界面,点击一下Rescan BDM,直到能看到Device Name,保证连接正常如下图所示:
      18

    2. 点击Go按钮,显示波形如下图:
      19

    3. 建议将波形的采集周期和变量的采集周期设置一致,如下图:
      20

    4. 按上述方法修改后的显示波形如下图,效果会好一些。
      21

    3.3.2 基于USB转UART工具使用FreeMASTER

    在实际场景中,基于USB转UART工具的方式使用FreeMASTER监控变量的方式更为常见,这种方式需要占用一个串口,同时代码还需要增加UART和FreeMASTER的驱动。

    3.3.2.1 准备可执行文件

    基于3.3.1.1章节的程序,还需要添加的功能如下图:
    22

    3.3.2.1.1 增加UART组件
    1. 在元器件库筛选出lpuart组件,双击添加到本工程中,如下图所示:
      23

    2. 配置lpuart1的初始化参数,如下图所示:
      24

    3. 配置lpuart1的引脚,如下图所示:
      25

    4. 点击按钮生成配置代码,如下图所示:
      26

    5. 添加头文件"lpuart1.h"包含以及添加串口初始化代码,如下图所示:

    #include "lpuart1.h"
    

    27

    3.3.2.1.2 增加FreeMASTER驱动
    1. 右击工程名,点击属性(Properties),点击SDKs,如下图:
      28

    2. 选择FreeMaster_S32xx,然后点击Attach/Detach按钮,如下图:
      29

    3. 选择Select All,如下图,然后点击OK返回。
      30

    4. 此时工程会多两个文件夹,如下图所示。其中FreeMaster_S32xx文件夹存放驱动,include文件夹存放配置文件。
      31

    5. 驱动文件夹不需要改动,freemaster_cfg.h需要按照实际使用情况进行修改,如下图所示。其中0x4006B000UL是LPUART1的基地址,原本的配置文件写错了,这里只有修改下注释名即可
      32

    33

    特别说明:关于freemaster_cfg.h中每个宏定义的详细说明,请参考FreeMaster的使用手册FMSTRSCIDRVUG.pdf的2.4.3章节,其位于S32DS2.2安装目录下,具体地址如下:S32DS_ARM_v2.2\S32DS\software\FreeMASTER_Serial_Communication_Driver_V2_0\doc\UserGuide
    6. 如下图所示:

    • 添加头文件"freemaster.h"包含,
    • 串口中断函数不使用SDK自带的,改用FMSTR_Isr(),
    • 添加FMSTR_Init()函数以及在死循环中添加FMSTR_Poll()函数
    #include "freemaster.h"
    

    34

    35

    3.3.2.2 修改FreeMASTER工程

    • 打开之前创建的工程,修改下通信方式以及加载新的elf文件即可,如下图所示:
      36

    37

    3.3.2.3 测试效果

    这里测试使用的是OpenSDA自带的USB转UART的功能,使用其他串口工具效果一样。测试波形如下图:
    38

    3.3 FreeMASTER其他功能

    • TSA功能,开启该功能之后,FreeMASTER不再从ELF文件中获取变量信息,而是通过FreeMASTER自定义的协议获取代码中放在TSA tables中的变量,相关操作如下:
      39

    • Application Commands功能,S32DS自带的FreeMASTER例程(如下图)有使用该功能。不过个人觉得该功能和使能写功能之后的变量窗口有些重复,一般用的不多。
      40

    展开全文
  • FREEMASTER基础

    2021-03-19 10:56:30
    Freemaster基础前言一、freemaster是什么?二、freemaster怎么用?1.连接拓扑:2.配置过程:三、实例分析1.配置过程2.配置文件分析: 前言 学习freemaster的用户手册,记录一下freemaster的一些基础知识 一、...


    前言

    学习freemaster的用户手册,记录一下freemaster的一些基础知识

    一、freemaster是什么?

    freemaster是一个工具:它通过串行通信接口读写目标处理器中的内部变量,并通过可视化工具展示之。

    二、freemaster怎么用?

    1.连接拓扑:

    PC主机 <-------串行通信端口-------> 目标板

    2.配置过程:

    PC主机

    • 硬件需求: 具有串口
    • 软件需求:
      • pc端程序(FMASTERSW31.exe)
      • 安装驱动程序 (FMASTERSCIDRV.exe)
        • 此驱动程序包含:
          • pc端串口驱动
          • 目标板上的驱动源码

    目标板:
    在目标板上移植freemaster串行通信驱动程序,这个驱动实现了freemaster的全部特性

    • 驱动移植步骤
      • 驱动源码包含到目标板工程中(src_common src_platforms)
      • 配置freemaster_cfg.h中的宏开关 (不需要在c文件中include,因为freemaster.h内部已经include)
      • 调用 freemaster api的c文件需要include freemaster.h
      • 配置SCI中断(如果使用了中断)
      • 初始化SCI, JTAG, or CAN modules
      • 调用 FMSTR_Init
      • 在主循环中周期调用 FMSTR_Poll
      • 如果使用TSA,需要编写XXX_tsa.h 并在C文件中include它,在XXX_tsa.h中配置tas table

    因此关键是两个.h文件的配置:XXX_tsa.h ,freemaster_cfg.h

    三、实例分析

    在bldc项目中使用了freemaster,分析其使用过程如下:

    1.配置过程

    1.将驱动源码包含到目标板工程中
    在这里插入图片描述
    2.配置freemaster_cfg.h
    在这里插入图片描述
    3.include freemaster.h
    在这里插入图片描述
    4.初始化SCI, JTAG, or CAN modules

    在这里插入图片描述
    5.调用 FMSTR_Init
    在这里插入图片描述
    6.在主循环中周期调用 FMSTR_Poll
    在这里插入图片描述

    2.配置文件分析:

    freemaster_cfg.h

    #ifndef __FREEMASTER_CFG_H
    #define __FREEMASTER_CFG_H
    
    /******************************************************************************
    * 选择freemaster的运行模式:中断or轮训
    ******************************************************************************/
    
    #define FMSTR_LONG_INTR        0    /* Complete message processing in interrupt */
    #define FMSTR_SHORT_INTR       0    /* SCI FIFO-queuing done in interrupt */
    #define FMSTR_POLL_DRIVEN      1    /* No interrupt needed, polling only */
    
    /*****************************************************************************
    * Select communication interface (LPUART/FlexCAN base address)
    ******************************************************************************/
    
    #define FMSTR_SCI_BASE         0x4006B000UL /* LPUART1 base on S32K14x */
    #define FMSTR_CAN_BASE         0x40024000UL /* FlexCAN0 base on S32K14x */
    
    #define FMSTR_DISABLE          0    /* To disable all FreeMASTER functionalities */
    #define FMSTR_USE_LPUART       1    /* 使用uart作为通信端口 */
    #define FMSTR_USE_FLEXCAN      0    /* To select FlexCAN communication interface */
    #define FMSTR_USE_PDBDM        0    /* To select Packet Driven BDM communication interface (optional) */
    
    /* Select RX and TX FlexCAN Message buffers */
    #define FMSTR_FLEXCAN_TXMB     0
    #define FMSTR_FLEXCAN_RXMB     1
    
    /******************************************************************************
    * Input/output communication buffer size
    ******************************************************************************/
    
    #define FMSTR_COMM_BUFFER_SIZE 0    /* Set to 0 for "automatic" */
    
    /******************************************************************************
    * Receive FIFO queue size (use with FMSTR_SHORT_INTR only)
    ******************************************************************************/
    
    #define FMSTR_COMM_RQUEUE_SIZE 32   /* Set to 0 for "default" */
    
    /*****************************************************************************
    * When RAM or ROM resources are limited, exclude some of the FreeMASTER 
    * features by default in the demo application 
    ******************************************************************************/
    #if 1
    #define FMSTR_DEMO_ENOUGH_RAM  1
    #define FMSTR_DEMO_ENOUGH_ROM  1
    #define FMSTR_DEMO_LARGE_ROM   1
    #else
    #define FMSTR_DEMO_ENOUGH_RAM  0
    #define FMSTR_DEMO_ENOUGH_ROM  0
    #define FMSTR_DEMO_LARGE_ROM   0
    #endif
    
    /* Configure example application to match physical capabilities of the CPU */
    #define FMSTR_DEMO_SUPPORT_I64 1
    #define FMSTR_DEMO_SUPPORT_FLT 1
    #define FMSTR_DEMO_SUPPORT_DBL 1
    
    /*****************************************************************************
    * Support for Application Commands 
    ******************************************************************************/
    
    #define FMSTR_USE_APPCMD       FMSTR_DEMO_ENOUGH_ROM    /* Enable/disable App.Commands support */
    #define FMSTR_APPCMD_BUFF_SIZE 32   /* App.Command data buffer size */
    #define FMSTR_MAX_APPCMD_CALLS 4    /* How many app.cmd callbacks? (0=disable) */
    
    /*****************************************************************************
    * Oscilloscope support
    ******************************************************************************/
    
    #define FMSTR_USE_SCOPE        FMSTR_DEMO_ENOUGH_RAM     /* Enable/disable scope support */
    #define FMSTR_MAX_SCOPE_VARS   8     /* Max. number of scope variables (2..8) */
    
    /*****************************************************************************
    * Recorder support
    ******************************************************************************/
    
    #define FMSTR_USE_RECORDER     FMSTR_DEMO_ENOUGH_RAM     /* Enable/disable recorder support */
    #define FMSTR_MAX_REC_VARS     8     /* Max. number of recorder variables (2..8) */
    #define FMSTR_REC_OWNBUFF      0     /* Use user-allocated rec. buffer (1=yes) */
    
    /* Built-in recorder buffer (use when FMSTR_REC_OWNBUFF is 0) */
    #define FMSTR_REC_BUFF_SIZE    8192   /* Built-in buffer size */
    
    /* Recorder time base, specifies how often the recorder is called in the user app. */
    #define FMSTR_REC_TIMEBASE     FMSTR_REC_BASE_MICROSEC(100) /* 0 = "unknown" */
    
    #define FMSTR_REC_FLOAT_TRIG   1    /* Enable/disable floating point triggering */
    
    /*****************************************************************************
    * Target-side address translation (TSA)
    ******************************************************************************/
    
    #define FMSTR_USE_TSA          1    /* Enable TSA functionality */
    #define FMSTR_USE_TSA_INROM    1    /* TSA tables to ROM or RAM */
    #define FMSTR_USE_TSA_SAFETY  FMSTR_DEMO_ENOUGH_RAM     /* Enable access to TSA variables only */
    #define FMSTR_USE_TSA_DYNAMIC FMSTR_DEMO_ENOUGH_RAM     /* Enable dynamic TSA table */
    
    /*****************************************************************************
    * Pipes as data streaming over FreeMASTER protocol
    ******************************************************************************/
    
    #define FMSTR_USE_PIPES        0   /* Enable/Disable pipes */
    #define FMSTR_MAX_PIPES_COUNT  3   /* 3 pipes for demo purposes */
    
    /*****************************************************************************
    * Enable/Disable read/write memory commands
    ******************************************************************************/
    
    #define FMSTR_USE_READMEM      1    /* Enable read memory commands */
    #define FMSTR_USE_WRITEMEM     1    /* Enable write memory commands */
    #define FMSTR_USE_WRITEMEMMASK 1    /* Enable write memory bits commands */
    
    /*****************************************************************************
    * Enable/Disable read/write variable commands (a bit faster than Read Mem)
    ******************************************************************************/
    
    #define FMSTR_USE_READVAR      1    /* Enable read variable fast commands */
    #define FMSTR_USE_WRITEVAR     1    /* Enable write variable fast commands */
    #define FMSTR_USE_WRITEVARMASK 1    /* Enable write variable bits fast commands */
    
    #endif /* __FREEMASTER_CFG_H */
    
    
    
    

    BLDC_appfreemaster_TSA.h

    #ifndef CONFIG_BLDC_APPFREEMASTER_TSA_H_
    #define CONFIG_BLDC_APPFREEMASTER_TSA_H_
    
    #include "freemaster.h"
    extern 		gd3000Status_t    				gd3000Status; //想要在freemaster中读写的变量
    
    //tsa列表开始
    FMSTR_TSA_TABLE_BEGIN(MY_TSA_SAMPLE)
    FMSTR_TSA_RW_VAR(gd3000Status,        			FMSTR_TSA_USERTYPE(gd3000Status_t))
    FMSTR_TSA_STRUCT(gd3000Status_t)
    		FMSTR_TSA_MEMBER(gd3000Status_t, 		R, 				FMSTR_TSA_UINT16)
    FMSTR_TSA_TABLE_END()
    //tsa列表结束
    

    将以上宏展开后如下:

    //函数声明 FMSTR_TsaGetTable_MY_TSA_SAMPLE
    const FMSTR_TSA_ENTRY* FMSTR_TsaGetTable_MY_TSA_SAMPLE (FMSTR_TSA_TSIZE* pTableSize);
    //函数体
    const FMSTR_TSA_ENTRY* FMSTR_TsaGetTable_MY_TSA_SAMPLE (FMSTR_TSA_TSIZE* pTableSize)
    {
        static const FMSTR_TSA_ENTRY fmstr_tsatable[] = {
        		{ {((const char*)("gd3000Status"))}, //name
        		  {((const char*)("gd3000Status_t"))},//type
    			  {((volatile const void*)(&(gd3000Status)))},//addr
    			  {((volatile const void*)(((volatile const void*)(((sizeof(gd3000Status))<<2)|(0x0003U)))))},//info
        		},
    			{ {((const char*)("gd3000Status_t"))},
    			  {((const char*)(((void *)0)))},
    			  {((volatile const void*)(((void *)0)))},
    			  {((volatile const void*)(((volatile const void*)(((sizeof(gd3000Status_t))<<2)|(0x0000U)))))},
    			},
    			{ {((const char*)("R"))},
    			  {((const char*)("\xE1"))},
    			  {((volatile const void*)(&((gd3000Status_t*)0)->R))},
    			  {((volatile const void*)(((volatile const void*)(((sizeof(((gd3000Status_t*)0)->R))<<2)|(0x0002U)))))},
    			},
        };
        if(pTableSize) *pTableSize = sizeof(fmstr_tsatable);
        return fmstr_tsatable;
    }
    

    由此可知,tsa通过宏函数定义了一个函数:FMSTR_TsaGetTable_MY_TSA_SAMPLE,函数内部定义了一个fmstr_tsatable[]数组,其中存储了变量的{name type addr info }信息,通过调用此函数即可获取fmstr_tsatable[]的指针,进而获取各个变量的定义。

    tsa可以定义多个table,并使用以下宏组合成tablelist

    /* TSA table list */
    FMSTR_TSA_TABLE_LIST_BEGIN()
    	FMSTR_TSA_TABLE(MY_TSA_SAMPLE)
    FMSTR_TSA_TABLE_LIST_END()
    
    #endif /* CONFIG_BLDC_APPFREEMASTER_TSA_H_ */
    

    展开后代码如下:

    const FMSTR_TSA_ENTRY* FMSTR_TsaGetTable(FMSTR_TSA_TINDEX nTableIndex, FMSTR_TSA_TSIZE* pTableSize)
    {
    	 if(!nTableIndex--)
    	{
    		const FMSTR_TSA_ENTRY* FMSTR_TsaGetTable_MY_TSA_SAMPLE (FMSTR_TSA_TSIZE* pTableSize);
    		return FMSTR_TsaGetTable_MY_TSA_SAMPLE(pTableSize);
    	} else	if(!nTableIndex--)
    	{
    		const FMSTR_TSA_ENTRY* FMSTR_TsaGetTable_dynamic_tsa (FMSTR_TSA_TSIZE* pTableSize);
    	    return FMSTR_TsaGetTable_dynamic_tsa(pTableSize);
    	} else
        {
    		return ((void *)0);
        }
    }
    

    跟踪代码,找到调用关系如下:

    main loop
    	|->FMSTR_Poll();
    		|->FMSTR_ProcessSCI(); 
    			|->FMSTR_Rx()
    				|->FMSTR_ProtocolDecoder()
    					|->FMSTR_GetTsaInfo()  ...
    						|->FMSTR_TsaGetTable
    							|->FMSTR_TsaGetTable_S32K_BLDC()
    							|->FMSTR_TsaGetTable_MY_TSA_SAMPLE()
    								|->fmstr_tsatable[]
    	
    

    四、总结

    freemaster 通过串行通信接口读写目标处理器中的内部变量,并通过可视化工具展示之
    TSA功能:将内部变量地址固化在函数中,通过串行poll函数调用获取内部变量的映射关系,实现数据的编码和解码


    五、参考文档
    FreeMASTER for Embedded Applications
    FreeMASTER Serial Communication Driver

    展开全文
  • 让你快速使用codewarrior的仿真工具freemaster,方便实时数据抓取,形成波形,方便分析问题
  • 骇客S32K144 简介 S32K144是NXP推出的车规等级的MCU,ARM架构的内核。芯片在设计上考虑了功能安全的设计,可以达到ASIL B的等级。但是一下SDK的使用,我也没有太多经验。这次hack过程中研究一下这里面的技巧。...
  • FreeMaster使用详解

    千次阅读 2021-02-12 22:41:33
    FreeMaster使用详解 简介 FreeMaster是NXP免费为用户提供的一种在PC上对MCU程序中数据可视化的工具。不仅支持简单的串口SCI调试,而且还支持BDM、JTAG、USB、CAN、Ethernet等在线调试。 使用FreeMaster工具不需要在...

    FreeMaster使用详解

    • 1. 简介

         FreeMaster是NXP免费为用户提供的一种在PC上对MCU程序中数据可视化的工具。不仅支持简单的串口SCI调试,而且还支持BDM、JTAG、USB、CAN、Ethernet等在线调试。使用FreeMaster工具不需要在目标工程中引用同FreeMaster相关的源代码, 只需要将需要实时显示的变量创建为全局变量即可,即在MCU的内存中分配一个固定的地址。之后FreeMaster将通过SWD通信接口读内存中的值并实时显示到PC机的界面上。

    • 2. 特点

      (1)  图形化调试环境;

    (2)支持RS232通信接口和其他如BDM、JTAG、CAN接口等等;
           (3)实时跟踪嵌入式C中的变量;
           (4)虚拟话的示波器窗口实时显示跟踪变量
           (5)通过目标板上的记录区(Recorder)快速读取数据;
           (6)内置支持标准数据类型(包括整型,浮点,位等);
           (7)支持Active X 接口支持VBScript和JScript;

    • 3.安装

      安装步骤特别简单,双击按照顺序直接安装即可。

    安装包获取途径:文末链接获取或自行下载( https://www.nxp.com/ )。

    • 4. 使用说明

       1. 双击打开软件后,界面如下图所示:

        2. 重命名 并 保存该项目为“Test1”;设置完毕后,“Ctrl + S”保存该项目。

         3.Project\Options里设置通讯接口和Symbol来源

         4. 上图中点击“View”,可查看程序中所支持的变量类型。

        5. 创建一个新的观察变量(Create New Watched Variable)

        6. 创建一个新的Scope(Create Scope)

        7. 测试截图

     

      说明: (1) 本例程测试平台为:STM32F103RCT6 + J-link仿真器

                (2) 简单测试代码:

                     

                (3)本文为FreeMaster最基本使用方法。此工具在电机调试使用尤为方便。

     

              <软件获取方式:关注公众号→对话框中输入“FreeMaster”获取。>

    展开全文
  • User Guide - FreeMASTER

    2014-10-09 15:57:10
    User Guide - FreeMASTER Freescale 调试工具FreeMASTER用户指南~~~
  • NXP在线调试工具FreeMaster使用教程

    千次阅读 多人点赞 2021-04-29 14:12:58
    FreeMaster为NXP公司为用户提供的一款运行在PC机上的图形化在线调试工具,不仅支持简单的串口调试,还支持JTAC、USB、CAN、DAP等在线调试。使用FreeMaster不需要添加额外的代码,只需要对软件进行相关配置便可以对...

    NXP在线调试工具FreeMaster使用教程


    前言

    FreeMaster为NXP公司为用户提供的一款运行在PC机上的图形化在线调试工具,不仅支持简单的串口调试,还支持JTAC、USB、CAN、DAP等在线调试。使用FreeMaster不需要添加额外的代码,只需要对软件进行相关配置便可以对工程中变量进行显示与在线调试。


    一、简介

    FreeMASTER是一个用户友好的实时调试监视器和数据可视化工具,它支持嵌入式软件应用程序的运行时配置和调优。无论是汽车原始设备制造商和行业领先的家电制造商广泛采用FreeMASTER,因为它适用于广泛的汽车和工业应用。

    FreeMASTER支持对运行中的系统中的变量进行非侵入性监视,并且可以在示波器类显示器上显示多个变量,如标准小部件(量规、滑块等)或文本形式的数据,提供简单易用的数据记录器。

    FreeMASTER可以与自定义HTML、MATLAB或将Excel添加到其他可编写脚本的框架中,将MCU硬件添加到控制回路中。从运行FreeMASTER的主机到目标系统的连接可以直接通过广泛的通信外围设备或调试通道进行。FreeMASTER将图形、表格网格和Web视图直接嵌入到桌面应用程序中。FreeMASTER连接通过使用JSONRPC调用的网络连接进行,客户端实现可用于Python、C/C++/C#和其他语言。

    二、特点

    (1)图形化调试环境;
    (2)支持RS232通信接口和JTAC、CAN等接口;
    (3)虚拟化示波器并实时跟踪显示工程中的变量;
    (4)通过目标板上的记录区(Recorder)快速读取数据;
    (5)内置支持标准数据类型(整型、浮点型等);
    (6)支持Active X 接口支持VBScript和JScript;
    (7)支持Matlab仿真接口;

    三、安装

    安装步骤比较简单,这里就不详细说了,下面附上安装包地址
    下载地址:link.
    提取码:ilyt

    四、使用说明

    1.安装完成后,打开软件,界面如下图所示。
    在这里插入图片描述
    2.右击【New Preject】点击【Properties】。
    在这里插入图片描述
    3.更改项目名与描述,点击确定后,保存该项目。
    在这里插入图片描述
    4.在【Project】中,点击【Options】。
    在这里插入图片描述
    5.根据自己的情况设置通讯接口。
    在这里插入图片描述
    6.根据图片设置Symbol来源。
    在这里插入图片描述
    7.设置成功后,点击【View】,便可查看程序中所支持的变量。
    在这里插入图片描述
    在这里插入图片描述
    8.右击【New Preject】点击【Create Scope】。
    在这里插入图片描述
    9.更改名字与描述。成功后变出现虚拟示波器窗口。
    在这里插入图片描述
    在这里插入图片描述
    10.右击【Name】下方的空白区域,创建一个新的观察变量【Create New Watched Variable】。
    在这里插入图片描述
    11.根据图片中内容进行观察变量的创建。
    在这里插入图片描述
    12.点击【Modifying】可对变量进行更多设置,例如图片中的步进调节设置。
    在这里插入图片描述
    13.可按照之前步骤对多个变量进行创建设置。在虚拟示波器右击可对创建的变量进行波形显示。
    在这里插入图片描述
    14.测试截图
    在这里插入图片描述
    15.对于一些变量,可在FreeMaster上直接更改并且在芯片中更新,这可谓是FreeMaster的强大之处。

    总结

    FreeMaster这款软件功能非常强大,使用非常方便。我也是刚刚开始使用,在这里只是对他基础的功能做了详解。因为他可对程序中变量实时显示和实时更新,在调节PID时非常的方便。希望各位打大佬可研究出其他功能,大家多多交流。

    展开全文
  • freemaster使用指导文档,英文原版,FreeMASTER for Embedded Applications
  • 【MPC5744P】FreeMaster上位机配置

    千次阅读 热门讨论 2018-12-04 15:54:38
    FreeMaster调试相对于劳特巴赫的工具可能没有那么强大,但是它有一个优点,就是免费,也可以实时观察变量,而无需停下来,不过需要注意的是变量必须是全局变量。 FreeMaster本质上和普通上位机没有太多区别(比一般...
  • FreeMASTER在连接成功后,如果出现这个错误,相应的html界面是空白的 就没有办法对参数进行调整,需要找到图中警告的目录检查是否存在提示的文件 在该目录下保存的txt档全是关于电机参数的配置文件 警告里面显示的是...
  • 问题 如图,这个区域无法显示你的插件,空白的,就无法进行下一步 解决方法 1、重新安装 FreeMaster...“c:\NXP\FreeMASTER 3.0\FreeMASTER\register.bat” with administrator rights. If re-installation does not h
  • 271_FreeMaster在S32K144上的使用

    千次阅读 2020-02-23 19:21:42
    继续学习S32K144,这次来看一个小工具FreeMaster。其实,涉及到MCU程序的部分算是一个协议栈。 这个功能的移植暂且不去探讨了,值得一说的是在S32DS中这个功能以及做成了开箱即用的功能了。使用的时候,只需要从...
  • 272_FreeMaster在S32K144上移植集成

    千次阅读 2020-02-24 20:48:26
    前面看了FreeMaster的功能,的确是很方便。不过,能够运行的只是一个做好了的Demo。如何让这个功能增加到我现在一直学习维护的工程中呢? 移植很简单,从Demo中梳理出相关的代码,然后完善一下SDK的驱动配置即可...
  • STM32 利用FreeMaster调试1

    千次阅读 2019-10-15 21:31:43
    1、首先下载两个软件 FMASTERSW25.exe(安装文件) FMASTERSCIDRV.exe(通信驱动文件) 下载完点击安装即可 2、采用Jlink调试 首先可以参考下 http://bbs.21ic.com/icview-2550628-1-1.html?_dsign=6f941d69 ...
  • 继续S32K144的学习,这一次的学习内容还是FreeMaster。这是一个很好的功能,能够给我们的软件调试带来很多便捷之处。但是,目前我看到的这个软件包似乎可移植性并不是很好,尤其是我想移植到其他的平台的时候或许会...
  • 飞思卡尔freemaster2.0的初步使用

    千次阅读 2018-08-27 16:59:00
    基于CAN的freemaster的使用: 单片机的代码配置: 1、SIUL的配置 2、时钟的配置 3、CAN的baud-rate和ID号的配置。 修改freemaster_cfg.h文件。另外,在main函数中, FMSTR_Init();//只需要调用一次 FMSTR_...
  • MPC5744P FreeMaster下位机示例,可以使用PEMicro作为通信接口,详细请参考文章:https://blog.csdn.net/u010875635/article/details/84789579
  • FreeMaster_1.3.2

    2010-04-19 19:35:30
    Freescale的DSP仿真软件 同PC_Master(PCmaster)功能相同 通过串口与DSP相连,可以实时观测DSP中全局变量的变化

空空如也

空空如也

1 2 3 4 5 ... 7
收藏数 133
精华内容 53
关键字:

FreeMaster

友情链接: rng binary.zip