ESM驱动提供API来配置和处理来自ESM H/W模块的错误

ESM头文件在应用程序中应该被包含如下:

#include <ti/drivers/esm/esm.h>

驱动初始化

ESM驱动是通过使用ESM_init函数来初始化。在没有调用这个API之前,其他的ESM API不能被调用。

注意:如果使用的是TI RTOS,则在进入main之前ESM错误应该被清除并标志被设置为0。对于其他的RTOS,检查RTOS的实现或设置这个标志为1

使用驱动

对于使用ESM驱动下面是一个示例:

ESM_init(0);  //ClearErrors is set to 0

MSS上处理中断

当ESM驱动运行在R4F上时,注册高优先级的FIQ来处理MSS ESM错误。当ESM 错误发生在DSS上时,MSS被通过Group2 错误信号来通知。ESM驱动注册低优先级的IRQ来处理这些错误。

DSS上处理中断

DSS ESM错误必须揭露他们来生成一个NMI。这个仅仅适用于xWR16xx/xWR18xx/xWR68xx DSS中。SOC_configureDSSESMMask API可以被使用。驱动程序/应用程序必须为其感兴趣的错误信号解除位掩码。例如,看门狗驱动程序在内部接触看门狗到期NMI错误位的伪装,以生成NMI。

DSS ESM错误生成一个NMI,可以首先被RTOS NMI异常的句柄捕获。因此应用程序必须产生NMI异常句柄在.cfg文件中使用ESM驱动的高优先级FIQ处理API

Exception.nmiHook = "&ESM_highpriority_FIQ";

注册通知器

应用程序能够对ESM错误需要额外的处理来注册回调函数。一个这样的例子就是在DSS上的看门狗延时。当看门狗延时导致DSS上发生NMI时,该事件inturn会在MSS上生成group1 ESM错误。应用程序可以使用ESM通知程序注册回调来处理这些错误。

硬件寄存器映射

此驱动程序使用的硬件寄存器映射可以在include/reg_esm.h中找到

应用程序可以调用的函数

ESM驱动提供了外部API方便用户调用

ESM_Handle ESM_init  (   uint8_t     bClearErrors    )   初始化ESM驱动int32_t ESM_registerNotifier    (   ESM_Handle  handle,ESM_NotifyParams *   params,int32_t *    errCode )    注册通知,如果检测到错误中断,ESM模块将回调int32_t ESM_deregisterNotifier    (   ESM_Handle  handle,int32_t  notifyIndex,int32_t *   errCode )   取消ESM通知的注册

参考文献:

  1. 《mmWave SDK Module Documentation》

Xiaojie雷达之路---TI实战笔记---ESM Driver说明相关推荐

  1. Xiaojie雷达之路---TI实战笔记---MRR_MSS_CLIAdvancedFrameCfg详解

    本篇文章主要是对MSS项目中的源文件中mss_pa_cli.c的函数进行MRR_MSS_CLIAdvancedFrameCfg详解 函数源程序如下: static int32_t MRR_MSS_CL ...

  2. Xiaojie雷达之路---TI实战笔记---MSS代码详细解读

    文章目录 前言 基础知识 文章中会用到的专业术语 毫米波雷达的初始化流程(在MSS中) 本案例中要用的其他知识 UART MailBox Semaphore 代码解读 main函数 MRR_MSS_i ...

  3. Xiaojie雷达之路---TI实战笔记---BPM MIMO

    雷达信号和调制波形如下图所示: 第一个是固定载频矩阵脉冲,第二个是线性调频脉冲,第三个是相位编码脉冲 固定载频和线性调频这两种类型的脉冲很常见 本篇文章主要是配置相位编码脉冲 当+时初始相位为0deg ...

  4. Xiaojie雷达之路---TI实战笔记---对AWR1843+DCA1000采集的数据进行解析

    这篇文章主要是介绍对AWR1843和DCA1000采集的数据进行解析 下面两张图要必须看懂,才能进行以后的操作: 图1: 这张图片主要说明的意思是对于每个tx的chirp,每个rx都会接收到 从上面这 ...

  5. Xiaojie雷达之路---TI实战笔记---CCS调试模式

    文章目录 前言 基础知识 毫米波雷达的两种调试模式 mmwave_automotive_toolbox_3_1_0工具箱 开发工具 案例演示 工程导入 工程重新编译 烧录xwr18xx_ccsdebu ...

  6. Xiaojie雷达之路---TI实战笔记---chirp、profile、frame、advframe

    什么是chirp? chirp是雷达发射的一种信号,频率随着时间线性增加,最多可以定义512个chirp,如下图所示: Chirp Timing Parameters: Idle time:上一次ch ...

  7. Xiaojie雷达之路---Mailbox深挖

    Hello,大家好,我是Xiaojie,欢迎大家能够和Xiaojie来一起学习毫米波雷达知识,本片文章主要是对Mailbox通信进行深挖: 有关Mailbox的源码解析已经在<Xiaojie雷达 ...

  8. Xiaojie雷达之路---TDM-MIMO及雷达处理流程仿真

    Hello,大家好,我是Xiaojie,欢迎大家能够和Xiaojie来一起学习毫米波雷达知识,本篇文章主要目的是介绍TDM-MIMO及雷达信号处理流程的仿真.一起来看看吧!!! 前言 在以前简单的仿真 ...

  9. Xiaojie雷达之路再回首---TI文档总结

    Hello,大家好,我是Xiaojie,学习TI的毫米波雷达将近快连两年了,从刚刚开始什么都不懂截止到现在,在学习过程中慢慢摸索前进,摸索的过程是真的很痛苦,这篇文章呢,主要总结一下TI的相关文档,也 ...

最新文章

  1. C++_泛型编程与标准库(六)
  2. 翻译关于ViewController的一篇文章
  3. 通过 python-xmp-toolkit 读取图片xmlp信息
  4. 主要技术指标简介_期货常用技术指标(五)布林线
  5. 转-开源云API竞争大幕开启
  6. 基于json的jquery地区联动
  7. Windows环境下使用CMake编译OpenCV3.0和OpenCV_contrib
  8. Windows Server 2012正式版RDS系列⑻
  9. 关于SQL SERVER 2005 开发版
  10. 统信UOS使用wine安装“方正ApabiReader_4.5.2.1790(ceb阅读器)”并解决安装过程中文显示成方块问题
  11. mysql 防止网络爬虫_Nginx反爬虫策略,防止UA抓取网站
  12. cf487e Tourists 题解(圆方树)
  13. Cadence: 各软件业务
  14. 《Python数据分析与挖掘实战》第7章-聚类+绘制雷达图
  15. PyQT之多窗口切换
  16. 2020-4-22 深度学习笔记20 - 深度生成模型 5 (有向生成网络--sigmoid信念网络/可微生成器网络/变分自编码器VAE/生产对抗网络GAN/生成矩匹配网络)
  17. CSS基础(3)- 选择器
  18. D3.js 力导向图的显示优化
  19. 前端知识点HTTP/ECMAScrip
  20. 解决webpack报错:ERROR in multi ./xxx/xxx.js ./xxx/xxx.js Module not found: Error: Can't resolve '.\xxx\

热门文章

  1. Foxmail 邮件的备份与恢复
  2. 13 路由器RIP动态路由配置
  3. Springboot快速实现邮件发送
  4. pingpong 攻防世界
  5. 帆软10.0突然出现黑色框线以及打印预览出现plain问题
  6. 活体生物发光成像技术原理及应用
  7. 【算法】环形赛道-java
  8. 【基础算法】DFS和BFS
  9. 路由器wifi密码设置
  10. 三思近10000㎡天幕屏耀显上海“八万人”体育场