当前位置: 首页 > news >正文

J-Scope的使用

1、硬件准备

  首先准备Jlink硬件,V8版本在J-Scope中采样频率高到50Hz,粗略的观看还可以;V9版本可以到1MHz;对于Scpoe还有一个同时观察变量的数量,V8最少,V9可观察的多一些,基本够用。

2、软件准备

segger官方网站地址:https://www.segger.com/

Scope软件下载地址:https://www.segger.com/j-link-j-scope.html

目前为Setup_JScope_V510d.exe

3、J-Scope软件配套JLink的软件版本

要想使用J-Scope,需要JLink的软件版本高一些,软件版本和Jlink的硬件本无关,只要自己的仿真器支持升级就行,所以最好下载最新的JLink驱动。

下载网站:https://www.segger.com/downloads/jlink/#J-LinkSoftwareAndDocumentationPack

目前最新的驱动:JLink_Windows_V620h.exe

4、J-Scope软件的HSS使用方法

安装完成之后,找到自己的安装目录,如图所示,会看到J-Scope的启动文件和他的帮助文件。

UM08028_JScope.pdf是官方的帮助文档,非常详细专业。

(1)启动软件

可以新建工程,或打开以前已有的工程,如下图所示。

选择新建新建,电机【OK】后的界面如图所示:

(2)J-Scope软件配置 

  a、J-Link的链接选择

    USB:大家用的基本是USB接口的

    Serial No

    TCP/IP

    Exitsting Session

  b、Specify Target Device:指明目标器件,配置过程如图

  

  c、Target Interface &Speed:目标的接口和速度

    JTAG、SWD或FINE,仿真的速度,如图

  至于选择JTAG还是SWD,需要根据自己开发板的接口来选择,与之相一致就好。

  d、Sampling Source

  

  e、Sampling Rate 单位us,最小修改为1.

    

  f、Elf File添加

  

  Elf文件是keil 生成的文件。扩展名为axf,在自己keil工程的文件夹中寻找。

  

  (3)J-Scope软件的观察变量

      

  FOC核心算法中的各个变量,勾选上即可,然后【OK】即可。

  

  连接好目标板,点击红色的圆点,即可开始采样,在采样过程中,用鼠标子在变量区点取一个变量,然后按【+】【-】键,则可以实现图形的上移、下移,如果按一下【Ctrl】键,然后在按【+】【-】,则可实现图形的放大和缩小,其实是修改了Y轴分辨率。

  采样停止后,在图形界面,鼠标左键点住拖动,可实现图形的左右移动,方便观察图像的历史记录。

  采样时或停止后均可点击放大和缩小图标,来实现采样率的改变。

  (4)J-Scope软件的保存数据文件

  【File】菜单中有数据的导出和导入功能,导出后可存为Excel文件,然后在Excel中进行处理,也可导入到Matlab中。

5、J-Scope软件RTT模式单片机工程中需要配置

  注:RTT模式选芯片型号的时候,必选对应的型号不能选内核型号。

    

  (1)下载这几个文件,也可以在Jscope的安装路径下找到。

  安装路径如下图:

  (2)将SEGGER_RTT.c,SEGGER_RTT.h,SEGGER_RTT.h添加进工程,并把SEGGER_RTT.c添加到工程。

  (3)添加缓存定义

    char JS_RTT_UpBuffer[4096];    // J-Scope RTT Buffer
    int  JS_RTT_Channel = 1;       // J-Scope RTT Channel

    上面的缓存大小可以给小点512也行。

  (4)随便找个地方初始化

     SEGGER_RTT_ConfigUpBuffer(JS_RTT_Channel, "JScope_I4I4I4", &JS_RTT_UpBuffer[0], sizeof(JS_RTT_UpBuffer), SEGGER_RTT_MODE_NO_BLOCK_SKIP);

    

  (5)

    #pragma pack(push, 1)
    struct {
        signed int Sine1;
        signed int Sine2;
        signed int Sine3;
      } acValBuffer;
    #pragma pack(pop)

    上面是你要发送的结构体,自己定义。

  (6)在你要发送的地方赋值并发送,例如中断:

      acValBuffer.Sine1 = Test_Counter1;
              acValBuffer.Sine2 = Test_Counter2;
              acValBuffer.Sine2 = Test_Counter3;

    SEGGER_RTT_Write(JS_RTT_Channel, &acValBuffer, sizeof(acValBuffer));

  (7)下面是重点!!!官方没有提到的。例如我想发四个数,两个int型,两个short型。

      #pragma pack(push, 1)

        struct {

            signed int Sine1;

            signed int Sine2;

            short Sine3;

            short Sine4;

        } acValBuffer;

        #pragma pack(pop)

  那么对应的初始化要改为"JScope_I4I4I4"这个参数就要改成"JScope_I4I4I2I2“

  (8)还有一个更重要的!那就是如果发送频率过块,快卡死,卡在一个循环里。

    SEGGER_RTT.c这个文件的WriteBlocking函数要做修改。

    

    加一句。

      if(NumBytesToWrite == 0){NumBytesToWrite = 1;}

 

  

转载于:https://www.cnblogs.com/zhaoyanan/p/7875698.html

相关文章:

  • oracle kill所有plsql developer进程
  • 《编程之美》
  • squid反向代理基本概述及性能事项
  • 自定义事件
  • 基因大数据分析的云计算实践
  • 推荐2个网站特效的网址
  • 【最新】2015年7月之15个最新jQuery插件
  • VS“.NET研究”2010测试功能之旅:编码的UI测试(1)
  • Json拼接字符串必须用双引号
  • 浅谈C#中的延迟加载“.NET研究”(1)——善用委托
  • App-V 4.6 SP1系列之一安装
  • LightSwitch:小试一“.NET研究”下微软开发框架LightSwitch
  • 文本模板转换工具包和 ASP.NET MVC(摘)
  • 《CLR Via C# 第3版》笔记之(十六) - 字符串
  • JSTL 自定义
  • 【108天】Java——《Head First Java》笔记(第1-4章)
  • 2017 前端面试准备 - 收藏集 - 掘金
  • axios请求、和返回数据拦截,统一请求报错提示_012
  • Babel配置的不完全指南
  • github从入门到放弃(1)
  • Java 网络编程(2):UDP 的使用
  • java第三方包学习之lombok
  • Java读取Properties文件的六种方法
  • SpringBoot 实战 (三) | 配置文件详解
  • springMvc学习笔记(2)
  • 阿里云Kubernetes容器服务上体验Knative
  • 浮动相关
  • 官方新出的 Kotlin 扩展库 KTX,到底帮你干了什么?
  • 诡异!React stopPropagation失灵
  • 前嗅ForeSpider教程:创建模板
  • 入门到放弃node系列之Hello Word篇
  • 数据可视化之 Sankey 桑基图的实现
  • 我与Jetbrains的这些年
  • 项目管理碎碎念系列之一:干系人管理
  • 移动端 h5开发相关内容总结(三)
  • ​插件化DPI在商用WIFI中的价值
  • #NOIP 2014# day.1 T3 飞扬的小鸟 bird
  • #微信小程序(布局、渲染层基础知识)
  • (1)常见O(n^2)排序算法解析
  • (android 地图实战开发)3 在地图上显示当前位置和自定义银行位置
  • (done) NLP “bag-of-words“ 方法 (带有二元分类和多元分类两个例子)词袋模型、BoW
  • (翻译)Quartz官方教程——第一课:Quartz入门
  • (附源码)springboot人体健康检测微信小程序 毕业设计 012142
  • (附源码)springboot社区居家养老互助服务管理平台 毕业设计 062027
  • (介绍与使用)物联网NodeMCUESP8266(ESP-12F)连接新版onenet mqtt协议实现上传数据(温湿度)和下发指令(控制LED灯)
  • (论文阅读32/100)Flowing convnets for human pose estimation in videos
  • (一)Neo4j下载安装以及初次使用
  • .Net Core 中间件验签
  • .Net CoreRabbitMQ消息存储可靠机制
  • .NET NPOI导出Excel详解
  • [ 第一章] JavaScript 简史
  • [2013][note]通过石墨烯调谐用于开关、传感的动态可重构Fano超——
  • [23] 4K4D: Real-Time 4D View Synthesis at 4K Resolution
  • [Angular 基础] - 表单:响应式表单
  • [C语言][PTA基础C基础题目集] strtok 函数的理解与应用