首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >嵌入式系统中的事件记录

嵌入式系统中的事件记录
EN

Stack Overflow用户
提问于 2011-08-11 14:46:04
回答 4查看 6.5K关注 0票数 7

通常,在运行RTOS的SBC中,将数据/事件日志写入外部介质(如SD卡)将是一项容易的任务。然而,在使用微控制器的嵌入式系统中,例如PIC微芯片,具有有限的数据/程序存储器。虽然一些芯片组支持外部媒体,但假设没有,那么如何登录MCU?

我能想到的唯一可行的方法就是把它写到MCU的EEPROM中,但是这可行吗?如果可以做到这一点,那么如何写和读呢?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-08-11 14:51:29

可以对任何存储设备执行日志记录,包括SD卡(假设相关硬件外设可用)。如果通过串行端口连接了外部设备,则可以向其写入数据。

通常,只有在异常情况下才会执行事件日志记录。写入EEPROM或闪存(对于较新的设备)相对较慢,会消耗功率,并且会耗尽有限的资源(空间和擦除周期)。

对于调试,通常使用串行端口(或Cortex-M3上的SWO端口)。

票数 3
EN

Stack Overflow用户

发布于 2011-08-11 19:44:12

您可以实现一个日志记录工具,它只需在每次您想要记录一个事件时将一个字节写入一个数组。然后可以检索日志列表并将其转换为人类可读的事件列表。这种方法的好处是对实时应用程序的侵入性较小。

我在一个应用程序中使用了这种方法,其中在1-2分钟的测试会话中生成了100-200个事件。然后通过串口下载该列表,并使用一个小Python脚本进行分析。

票数 2
EN

Stack Overflow用户

发布于 2011-08-11 20:03:08

根据您的数据需求,您可以选择SPI闪存或I²C EEPROM。

I2C EEPROMS在存储方面较小,但它的接口在大多数微控制器中都可用(如果没有,则在具有常规IO引脚的软件中相对容易做到这一点),而且它们的速度要慢得多(主要是因为I2C总线被限制在1 1Mhz)。它很容易在容量和8DIP封装find them up to 1mbit

SPI闪存速度更快,密度更高,而且通常更便宜,所以如果你需要快速写入,老实说,更好的技术,你可以使用should go for them

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7021887

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档