我从事Ti的C28x系列的DSP的开发时间不长,短短一年,使用过两种架构的DSP,主要针对资源管理有一些自己的心得。

在工程文件的分布上,本人认为需要DSP运行的的代码应该放在一个.C文件中管理,这样整个工程的代码结构就非常清晰了,查找问题,也容易定位。这个.C我们可以称之为UsrApp.C,包含4个函数,初始化函数,主中断函数,1ms定时器中断函数,主循环函数。

代码如下:

#include "Serve.h"
#include <stdio.h>
#include <string.h>#ifdef FLASH
#pragma CODE_SECTION(MainInt,"ramfuncs")
#pragma CODE_SECTION(StdLoop,"ramfuncs")
#endifvoid UsrAppInit(void) //初始化函数
{}void MainInt(void)  //主中断函数
{}void StdLoop(void)  //1ms定时器函数
{}void MainLoop(void) //主循环函数
{}

这样在其他.c文件中的函数直接extern,按照需求塞到这四个函数里就可以了。

1、初始化函数没啥好说的。

void UsrAppInit(void) //初始化函数

2、主中断函数

一般用PWM的CMPC触发的中断,中断频率为PWM的频率,还有一种我习惯用的,PWM启动ADC转换,ADC转换完成后再触发一个中断,这个主中断的频率也是PWM频率。

这个主中断函数,一般放实时性要求比较高的函数,我做电力电子行业的,一般会将数据采集、故障保护、算法、PWM释放等函数放在这里面。

void MainInt(void)  //主中断函数

3、1ms定时器中断函数

这个函数是由定时器触发的,一般里面放通讯函数,这类通讯函数,一般是轮询的,每隔一定时间轮询,查看是否接收数据,或者发送数据。

void StdLoop(void)  //1ms定时器函数

4、主循环函数

一般放一些参数配置,或者显示之类等实时性要求不高的函数。

void MainLoop(void) //主循环函数

Ti的C28x系列的DSP使用经验,如何整合DSP中运行的函数。相关推荐

  1. Ti的C28x系列的DSP(28069)使用经验,I2C与EEPROM(AT24C256C)

    本人正式使用I2C的经历只有一次,使用EEPROM是为了实现DSP的RAM中的变量断电后仍不会丢失的目的.这可能不是一个恰当的比喻.下面我来详细描述EEPROM的过程. 项目中使用的EEPROM的型号 ...

  2. TI的C28x系列芯片的存储结构(1)——总括

    C28x内核为哈佛结构,程序储存和数据储存分开,使用32位数据地址和22位程序地址.这样总地址可以达到:在数据空间中存储4G个字(1个字= 16位),在程序空间中存储4M个字.C28x的程序和数据空间 ...

  3. Ti的C28x系列的DSP(28069)(28377)使用经验,ADC经验

    笔者使用过的项目中,使用的ADC都是DSP的片内ADC,使用片内ADC的好处是,转换速度快,节约成本,这是相比片外ADC的优势. DSP_28069的ADC精度是12位,DSP_28377D的ADC精 ...

  4. TI的C28x系列芯片的存储结构(2)——CLA的RAM

    CLA有自己的程序和数据总线,它的RAM存储区分三种:程序RAM(program RAM).数据RAM(data RAM)和信号RAM(message RAM). ①program RAM CLA的程 ...

  5. SuperSocket 1.4系列文档(17) 在Windows Azure中运行SuperSocket

    Windows Azure是微软的云计算平台!Windows Azure通过微软的数据中心为开发人员提供以按需的计算能力和存储能力去托管.扩展和管理互联网上的应用程序. 运行于Windows Azur ...

  6. TI公司三大系列DSP内部结构之比较

    一引言 DSP有两种解释:一种是数字信号处理器(Digital SignalProcessor),也称数字信号芯片:另一种是数字信号处理技术(Digital Signal Processing).我们 ...

  7. 二、TI毫米波雷达系列——IWR6843 DSP系统内存结构

    DSP系统结构: 1)IWR6843的DSS的核心是600MHz的C674xDSP核,客户可以编程运行雷达信号处理算法.DSP本地有两级内存(L1和L2).L1(32KBL1D.32KBL1P)以60 ...

  8. [解疑][TI]TI毫米波雷达系列(一):Texas Instruments德州仪器 相关软件安装及使用时问题汇总,持续更新......

    德州仪器 (Texas Instruments),简称TI,是全球领先的半导体公司,为现实世界的信号处理提供创新的数字信号处理(DSP)及模拟器件技术.除半导体业务外,还提供包括传感与控制.教育产品和 ...

  9. 理解单片机(MCU)、ARM、DSP,vDSP(Vision DSP )都是处理器,

    可以具体参考知乎上的讨论怎么深入浅出地理解「单片机.ARM.DSP 有互通之处,都是 CPU」? 一.理解MCU,ARM cpu, DSP 作者:匠人时尚 链接:https://www.zhihu.c ...

最新文章

  1. Convert函数应用格式化日期
  2. Zend Framework数据库操作(1)
  3. linux Figlet 转换字符字
  4. android定位会出现的问题,Android 定位当前位置可能出现的问题
  5. JAXB和java.util.Map
  6. java集合(1)-概述
  7. 利用Scrapy框架爬取落网上的音乐文件
  8. 使用Span T 提高C#代码的性能
  9. linux——windows:上传、下载命令——rz,sz
  10. python︱写markdown一样写网页,代码快速生成web工具:streamlit 缓存(五)
  11. Apache访问localhost页面403Forbidden
  12. su插件打开显示html,如何让自己的su从工具变成神器?你需要这些插件
  13. 沟通成本:信任,外包永远的痛——外包实践(65)
  14. 修改sublimeText 文件目录窗口样式
  15. 移动硬盘不在计算机显示,Win7移动硬盘在电脑上不显示怎么办?移动硬盘不显示盘符的解决办法...
  16. lighttpd跟php,Lighttpd与PHP
  17. Buuctf rar
  18. Airtest 之 poco 避坑大法
  19. 一个请假单流程的实现(struts2.1.8+spring2.5+hibernate3集成jbpm4.3
  20. 全网独家解决方案: doccano报错 Your models in app(s): ‘api‘ have changes that are not yet reflected in a migrat

热门文章

  1. 微信小程序海报分享及好友分享
  2. os在python中是什么意思_import os在python中有哪些意思
  3. 清华计算机推免录取2020,清华大学2020年推免研究生本科都来自哪些院校 推免生一定会被录取吗...
  4. 求指定年份到当前年份的所有时间段 cte
  5. 什么样的店铺是需要去补充订单的
  6. 【itext学习之路】-------(第四篇)给pdf增加文本水印和图片水印
  7. IE8,9,10下table th不显示边框解决方法
  8. 将Firefox书签(JSON)导入到Chrome中
  9. ssh远程执行nohup命令
  10. Node.js沙箱逃逸