ADSP-BF706之同步信号触发机制

2023-11-11 00:10

本文主要是介绍ADSP-BF706之同步信号触发机制,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这款dsp硬件手册中可以看到Trigger Routing Unit这个单元的知识介绍,在开发中我也用到了同步触发机制,使用的是软件触发,将Software-driven Trigger 0 作为TRU的master,EPPI和定时器作为slave。
同步触发的运行机制如图所示,一端作为产生触发信号的master,另一端是响应的slave。触发信号的输入和输出都是在TRU触发路由单元进行,the master trigger register(MTR)产生一个触发信号,slave的slave select register(SSR)会识别到这个信号。程序中使用的是software trigger,在配置正确之后,通过将Software-driven Trigger的ID写入到MTR寄存器,作为slave的EPPI和定时器就会自动开启。触发一次响应一次,若要不断响应就需要不断触发。
在这里插入图片描述
配置代码如下,可使用CCES例程中封装得函数,挺好理解的,也可以通过写寄存器方式进行配置。
1、例程方式:

 adi_tru_Init (true);adi_tru_ConfigureSlave (TRGS_EPPI0_CH0_DMA,TRGM_SOFT0_MST);     //TRGM_SOFT0_MST  TRGS_TIMER0_TMR1_SLV0adi_tru_ConfigureSlave (TRGS_TIMER0_TMR1_SLV0,TRGM_SOFT0_MST);

TRGS_EPPI0_CH0_DMA和TRGS_TIMER0_TMR1_SLV0都是你想同步触发的slave。TRGM_SOFT0_MST是作为master。
2、自行配置方式

*pREG_TRU0_GCTL = BITM_TRU_GCTL_RESET;     // reset to all TRU registers
*pREG_TRU0_GCTL = BITM_TRU_GCTL_EN;         //enable the TRU.*pREG_TRU0_SSR3 = TRGM_SOFT1_MST;    // TRGS_TIMER0_TMR1_SLV0 作为slaver对应着主ID。TRGM_EPPI0_CH0_DMA
*pREG_TRU0_SSR44 = TRGM_SOFT1_MST;

当然配置完同步触发机制之后,你还要配置设置的slave,在slave初始化的时候,将之配置成等待触发,这样同步触发机制才可以成功运行。

这篇关于ADSP-BF706之同步信号触发机制的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/386232

相关文章

java中反射(Reflection)机制举例详解

《java中反射(Reflection)机制举例详解》Java中的反射机制是指Java程序在运行期间可以获取到一个对象的全部信息,:本文主要介绍java中反射(Reflection)机制的相关资料... 目录一、什么是反射?二、反射的用途三、获取Class对象四、Class类型的对象使用场景1五、Class

Python 中的异步与同步深度解析(实践记录)

《Python中的异步与同步深度解析(实践记录)》在Python编程世界里,异步和同步的概念是理解程序执行流程和性能优化的关键,这篇文章将带你深入了解它们的差异,以及阻塞和非阻塞的特性,同时通过实际... 目录python中的异步与同步:深度解析与实践异步与同步的定义异步同步阻塞与非阻塞的概念阻塞非阻塞同步

Linux搭建Mysql主从同步的教程

《Linux搭建Mysql主从同步的教程》:本文主要介绍Linux搭建Mysql主从同步的教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux搭建mysql主从同步1.启动mysql服务2.修改Mysql主库配置文件/etc/my.cnf3.重启主库my

如何关闭 Mac 触发角功能或设置修饰键? mac电脑防止误触设置技巧

《如何关闭Mac触发角功能或设置修饰键?mac电脑防止误触设置技巧》从Windows换到iOS大半年来,触发角是我觉得值得吹爆的MacBook效率神器,成为一大说服理由,下面我们就来看看mac电... MAC 的「触发角」功能虽然提高了效率,但过于灵敏也让不少用户感到头疼。特别是在关键时刻,一不小心就可能触

Nginx之upstream被动式重试机制的实现

《Nginx之upstream被动式重试机制的实现》本文主要介绍了Nginx之upstream被动式重试机制的实现,可以通过proxy_next_upstream来自定义配置,具有一定的参考价值,感兴... 目录默认错误选择定义错误指令配置proxy_next_upstreamproxy_next_upst

Java中将异步调用转为同步的五种实现方法

《Java中将异步调用转为同步的五种实现方法》本文介绍了将异步调用转为同步阻塞模式的五种方法:wait/notify、ReentrantLock+Condition、Future、CountDownL... 目录异步与同步的核心区别方法一:使用wait/notify + synchronized代码示例关键

Spring排序机制之接口与注解的使用方法

《Spring排序机制之接口与注解的使用方法》本文介绍了Spring中多种排序机制,包括Ordered接口、PriorityOrdered接口、@Order注解和@Priority注解,提供了详细示例... 目录一、Spring 排序的需求场景二、Spring 中的排序机制1、Ordered 接口2、Pri

使用C++将处理后的信号保存为PNG和TIFF格式

《使用C++将处理后的信号保存为PNG和TIFF格式》在信号处理领域,我们常常需要将处理结果以图像的形式保存下来,方便后续分析和展示,C++提供了多种库来处理图像数据,本文将介绍如何使用stb_ima... 目录1. PNG格式保存使用stb_imagephp_write库1.1 安装和包含库1.2 代码解

MySQL 缓存机制与架构解析(最新推荐)

《MySQL缓存机制与架构解析(最新推荐)》本文详细介绍了MySQL的缓存机制和整体架构,包括一级缓存(InnoDBBufferPool)和二级缓存(QueryCache),文章还探讨了SQL... 目录一、mysql缓存机制概述二、MySQL整体架构三、SQL查询执行全流程四、MySQL 8.0为何移除查

一文详解Java Condition的await和signal等待通知机制

《一文详解JavaCondition的await和signal等待通知机制》这篇文章主要为大家详细介绍了JavaCondition的await和signal等待通知机制的相关知识,文中的示例代码讲... 目录1. Condition的核心方法2. 使用场景与优势3. 使用流程与规范基本模板生产者-消费者示例