• STS和RTDX使用


    (1)下面介绍一下STS的使用
          ----在工程中打开DSP/CONFIGURATION TOOLS,并在STS模块下添加一个对象stsObj.
          ----在程序里添加以下代码
          #include
          #include
          extern far STS_Obj stsObj;
          //通常有三种使用方法
          //1。统计消耗的时钟数
          func()
          {
              STS_set( &stsObj, CLK_gethtime()); //设置一个起始时刻
              "do algorithm"//运行算法
              STS_delta(&stsObj, CLK_gethtime()); //得到自上一个STS_set到目前的时钟数
          }
          //2。统计变化的变量
          func()
          {
          STS_add( &stsObj, pitch);//将变量pitch在一段循环中的最大值,平均值及总和打印出来
          }
          //3。统计变量改变的差值
          STS_set( &stsObj,targetValue);
          "processing"
          STS_delta(&stsObj,newValue);//将变量改变的差值统计出来

          ----在运行代码前,在CCS中打开TOOLS..DSP/BIOS..STATISTICS VIEW,在打开的STATISTICS窗口
          中,单击右键打开PROPERTY PAGE,选择要显示的STS对象及要观察的统计数据,如平均值, 总数,
          循环次数等.运行代码,所要观察的统计数据会出现在STATISTICS窗口中,这样我们能够在不影响系统运行的时候,获取有关的统计信息了.

     (2).RTDX实时连续探察模块

          ----下一个我们要提到的重要模块是RTDX(REALTIME DATA EXCHANGE),RTDX提供了实时连续探察
          DSP内部处理的方法,我们可以在DSP全速运行的时候在主机和DSP间进行数据的传输,用户可以在主机用OLE automation
          client分析显示得到的数据.

          ----RTDX包括主机部分和目标部分,目标DSP中程序调用RTDX目标库的API函数通过JTAG接口与主机交换数据,主机端客户程序通过OLE接口调用RTDX
          HOST LIBRARY API与DSP交换数据。

          目标DSP内输出管道的编程可以参照一下流程:

          1)#include
          2)RTDX_CreateOutputChannel(ochan);
          声明一个全局的输出管道
          3) RTDX_enableOutput(&ochan);
          使能一个输出的管道
          4) status = RTDX_write(&ochan, &data, sizeof(data));
          将所要传出的数据data传递到管道
          5)RTDX_disableOutput(&ochan);
          关断管道

          目标DSP内输入管道的编程与此类似
          在主机端可以用VB,VC或者EXCEL编程
          这里介绍一下VC环境下RTDX输入管道编程

          1) 输入RTDX支持库
          #import
          using namespace RTDXINTLib;

          2) 定义一个RTDX对象
          IRtdxExpPtr rtdx;

          3) 初始化COM
          ::CoInitialize(NULL);

          4) 初始化COM对象
          HRESULT hr = rtdx.CreateInstance( L"RTDX" );

          5) 打开一个管道
          status = rtdx.Open("ochan", "R")

          6) 从管道中读数据
          status = rtdx.ReadI4(data)

          7) 关闭管道
          status = rtdx.Close()

          8) 释放COM对象
          rtdx.Release();

          9) 释放COM
          ::CoUninitialize();

          主机端输出管道的编程与此类似.

  • 相关阅读:
    软件测试课堂练习
    JSP第一次作业
    安卓第六次作业
    安卓第五次作业
    第四次安卓作业
    JSP第四周
    软件测试课堂练习3.4
    Android数据库表
    Android购物菜单
    Android增删改查
  • 原文地址:https://www.cnblogs.com/qxeric/p/3080814.html
Copyright © 2020-2023  润新知