CCS 使用小知识

2019-07-14 22:22发布

CCS 使用小知识


烧写方法:

       1. Texas InstrumentsDSP.
com/forum.php?mod=forumdisplay&fid=58" target="_blank" class="relatedlink">CCSv5ccs_baseemulationspecdigsdconfigexSdConfigEx.exe  ---复位仿真器
       2.Texas Instrumentsccsv5ccs_baseemulationspecdigsdflashinSDFlash.exe --烧写.out文件
       DSP堆栈问题
       在CCS开发编程,出现一个函数返回值不时出现异常值0x00,后发现函数出来之前值都是对的,返回的值就错了。应该是堆栈溢出,但堆栈不能改大,只能通过全局变量来返回数据。

       DSP 数据长度问题
       定义unsigned char 变量,理论上最大值为255,再加1应该变成0,但在DSP的CCS编程不是。DSP没有8位的存储单元,都是16位的。即使定义char变量,也还是16位,要注意!

  • Driver: boot_tempmake_imagesd_proj_usbsdgo28xusb.dvr
  • Algorithm  boot_tempmake_imagesd_proj_usb28345_M25P16_Flash_Boot.out
  • Programming:
  • Flash Data
  • D:boot_tempoot_tempmake_imageoot_20131025.out

复制代码
      为什么在CCS中,unsigned char占两字节空间?
       DSP没有8位的存储单元,都是16位的
  • a = sizeof(unsigned char);
  • b = sizeof(unsigned short);
  • c = sizeof(unsigned int);
  • d = sizeof(unsigned long);
  • a=1; b=1; c=1; d=2;  (sizeof是以字为单位)

复制代码
      1.include 路径添加
       右键工程--build propertie--C2000 compile-- include options

       2.堆栈大小更改
       右键工程--build propertie--C2000 Linker-- Basic Options


       3.支持FPU
       右键工程--build propertie--C2000 compile -->RunTime Model Options -->Specify floating point support(--float_support)  fpu32



       需要加载头文件 math.h 库文件使用 rts2800_fpu32.lib,同时在ccs的编译选项中设置支持fpu32即可
       在计算除法的时候尽量把除法化为乘法计算,乘法比除法速度快的太多了
  • value=value*0.5;// 3 cpu cycles
  • value=value/2;//155 cpu cycles===1us

复制代码
      (3)显示变量HEX格式


0条回答

一周热门 更多>