| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 嵌入式 -> 基于TMS32F28035的CLA学习 -> 正文阅读 |
|
[嵌入式]基于TMS32F28035的CLA学习 |
? 部分内容参考:? ? DSP28035 CLA配置与调试步骤_lijialin_bit的博客-CSDN博客_cla调试?? ????????控制律加速器通过添加并行处理来扩展?C28x?CPU?的功能。?CLA?处理的时间关键控制环路可实现低?ADC采样输出延迟。?因此,?CLA?支持更快速的系统响应和可高频率的控制环路。?将?CLA?用于时间关键任务可将CPU?解放出来去同时执行其它系统和通信功能。 以下是?CLA?主要特性列表:
CLA?被设计成减轻?CPU?的控制任务负担,?从而在主?CPU?(C28x)?内核上释放带宽。?它对诸如?PWM?和ADC?等与主?CPU?共用的控制外设具有访问权限。?如下图中所示,?CLA?有其自身的程序和数据总线,?并且独立执行主内核。?CLA?使用消息?RAM?与主内核进行交互,?并且与主?CPU?同时具有对控制外设的访问权限。? CLA?不具有支持全标准?C?语言编译程序所需的硬件支持,?例如,?CLA?没有堆栈。?此外,?CLA?的指令集被精简了,?并且不能支持标准?C?语言编译程序的所有函数。?因此,?可提供编辑?CLA?的“CLA-C?编译程序”,?此编译程序支持大多数,?但不是全部?C?语言编译程序函数。?例如,?CLA?只支持函数调用的一级嵌套以避免函数调用中的系统开销。 程序调试说明:? 程序参考文件目录如下(Ti官网库函数): ?? CLA程序代码可包含多大8个任务或中断服务程 为了使用CLA,需要配置两块RAM区域,用于CLA与主CPU通讯使用,分别为CPUtoCLARAM以及CLAtoCPURAM,其中CPUtoCLARAM区域数据CPU可读可写,CLA只能读不能写,CLAtoCPURAM区域数据CLA可读可写,CPU只能读不能写。CLA可以直接访问ePWM、HRPWM、比较器和ADC结果寄存器。? CLA配置过程: CMD文件配置 与没有CLA的工程相比,带有CLA的工程需要为CLA配置一个RAM区域存放代码和数据。?作为CLA与主CPU进行数据通讯的RAM空间,用于存放交互数据。 ????????SECTION块为CLA部分相关的块分配地址,对应空间为PAGE中分配的CLA空间 主程序配置 在主程序中,需要对CLA进行初始化工作。首先设备初始化函数DeviceInit()中使能CLA的时钟。 此例程需要运行任务Task1,Task1由ADC1的中断触发,当ADC1采样完成后,执行Task1程序进行数据处理,所以设置Task1的中断源为ADCINT1,并使能中断响应。 CLA初始化 CLA的函数需要在程序启动后主动运行一次,比如数据的初始化工作,因此在配置CLA时,使能CLA应答IACK,并且强行执行一次CLA任务。这里将Task8指定响应M_INT8中断,并使用CLA1ForceTask8()函数执行一次Task8任务,完成CLA数据的初始化。? CLA程序的编写 CLA是可以直接操控PWM、ADC寄存器,操控PWM输出及读取ADC的采样结果; CLA中进行操作的数据在声明时,需要注意这部分数据存放在CLA映射的RAM区域中。 对于CLA需要与CPU进行通讯的变量,指定存储在CPUtoCLA的RAM区域,这部分区域的数据,CPU可读可写,CLA只能读不能写。(同样如CLA程序需传递给CPU数据,在CPU中定义数据变量在RAM的CLA_CPU_MSGRAM区域,CLA可读可写,CPU只能读不能写) CLA程序的调试 CLA程序是不能通过仿真器打断点形式进行调试,必须通过在程序中插入debug语句才能调试。插入__medebugstop(),则程序会停止在此处。CLA可支持单步运行。 添加完debug后,在开发环境中进行设置,右键点击工程选择Properties->Built->C2000?Compiler->Processor?Options,Specify?CLA?support?必须设置为cla0。 调试步骤: (1)编译程序,点击甲壳虫按钮进入调试界面 (2)调试界面选择XDS100V3?USB?Emulator_0/CLA然后右键点击Connect?Target (3)连接成功后下载.out文件,Run->Load->Load?Symbols、 (4)下载成功后,断点直接跳到cla程序的debug,接下来可以进行单步调试了 |
|
嵌入式 最新文章 |
基于高精度单片机开发红外测温仪方案 |
89C51单片机与DAC0832 |
基于51单片机宠物自动投料喂食器控制系统仿 |
《痞子衡嵌入式半月刊》 第 68 期 |
多思计组实验实验七 简单模型机实验 |
CSC7720 |
启明智显分享| ESP32学习笔记参考--PWM(脉冲 |
STM32初探 |
STM32 总结 |
【STM32】CubeMX例程四---定时器中断(附工 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 4:26:31- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |