博客
关于我
mdk平台下,cm3内核单片机使用event recorder,测试函数运行时间及printf打印
阅读量:591 次
发布时间:2019-03-11

本文共 1180 字,大约阅读时间需要 3 分钟。

Event Recorder 是一种高效的硬件记录器,主要用于复杂嵌入式系统中的数据采集与分析。以下将从多个维度详细介绍 Event Recorder 的功能及其使用方法。

Event Recorder 的特点

  • 高效检测:Event Recorder 能在应用程序运行时即时发现并记录各种事件信息,如运行错误、API 调用异常等,显著提升系统的实时性和可靠性。

  • 灵活配置:该工具支持多种事件类型的筛选机制,能够区分不同级别的系统操作和信息流,满足各类应用场景的需求。

  • 多样应用场景:不仅支持在RTOS 中部署,还可融入中断服务程序中运行,且对不同内核架构(如Cortex-M系列)有特殊优化。

    • 带 ITM 功能的处理:无需中断开关,简化了开发流程。
    • 其他处理:如Cortex-M0系列则需要中断控制。
  • 方便调试:支持 printf 重定向,便于出错时快速获取日志信息。同时兼容多种_debug工具(如SWD、JTAG等)。

  • 高效管理:通过内置的时间戳生成机制(如DWT计时器),能精确记录事件发生时间,减少系统资源占用,无需额外定时器。

  • 代码管理:由于任务执行时间可预测,开发者无需进行 debug 和 release 分支,极大提升了开发效率。

  • 兼容性优化:兆恩科技(ARM)官方文档指出Event Recorder 对于 RTX5 中间件完全支持,使用起来更加简便。


  • 使用方法

  • 库文件依赖:必须使用最新版本的 cmsis 库,否则可能导致编译失败。

  • 系统配置

    • 在 RTOS 中设置uously task (RTE),通常选择默认模式。
  • 配置SCT文件

    • 建议在SCT文件中开辟一个NOINIT的SRAM区域,或者参考官网文档进行配置。
    • 这一步可以防止非必要的初始化操作,提高资源利用率。
  • 初始化设置

    • 在代码中添加相应的头文件。
    • 调用 EventRecorderInitializeEventRecorderStart 初始化功能,并启动记录任务。
  • 事件操作

    • 使用如 EventStartA(n) 激活特定事件记录模式。

    • 在需要时调用 EventStopA(n) 停止记录。

  • 时间管理

    • 配置文件中需设置最小记录时间(默认为8个单元),并根据开发需求调整时钟频率。
  • 调试工具

    • 在AC6编译器下完成编译,最后使用合适的调试工具(如ST-Link、J-Link等)进行测试。
  • 最后的优化

    • 调试过程中可通过trace界面查看事件记录详情,确保配置正确。
  • 合规检查

    • 确保所有编译和调试过程顺利通过,最终生成可用于实际系统的优化版本。

  • 达到更高效的开发体验

    通过合理配置和使用Event Recorder,您可以在保证代码质量的同时,显著提高嵌入式开发效率。如果需要更详细的操作步骤,可参考 ARM 官方开发文档,或参考相关开发社区获取更多实用经验。

    转载地址:http://trevz.baihongyu.com/

    你可能感兴趣的文章
    Node-RED中使用node-red-browser-utils节点实现选择Windows操作系统中的文件并实现图片预览
    查看>>
    Node-RED中使用node-red-contrib-image-output节点实现图片预览
    查看>>
    Node-RED中使用node-red-node-ui-iframe节点实现内嵌iframe访问其他网站的效果
    查看>>
    Node-RED中使用Notification元件显示警告讯息框(温度过高提示)
    查看>>
    Node-RED中实现HTML表单提交和获取提交的内容
    查看>>
    Node-RED中建立Websocket客户端连接
    查看>>
    Node-RED中通过node-red-ui-webcam节点实现访问摄像头并截取照片预览
    查看>>
    node-request模块
    查看>>
    Node.js 8 中的 util.promisify的详解
    查看>>
    Node.js 函数是什么样的?
    查看>>
    Node.js 历史
    查看>>
    Node.js 在个推的微服务实践:基于容器的一站式命令行工具链
    查看>>
    Node.js 实现类似于.php,.jsp的服务器页面技术,自动路由
    查看>>
    Node.js 异步模式浅析
    查看>>
    node.js 怎么新建一个站点端口
    查看>>
    Node.js 文件系统的各种用法和常见场景
    查看>>
    Node.js 的事件循环(Event Loop)详解
    查看>>
    node.js 简易聊天室
    查看>>
    Node.js 线程你理解的可能是错的
    查看>>
    Node.js 调用微信公众号 API 添加自定义菜单报错的解决方法
    查看>>