This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] EEPROM

Guru**** 2321270 points
Other Parts Discussed in Thread: ENERGIA
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/580519/eeprom

主题中讨论的其他器件:Energia

大家好、我想将 EEPROM 连接到 TC4M1249XL、但显示错误。

未在该范围内声明 EEPROM。

我不知道问题是什么。

如果你能帮我、我将不胜感激

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Marco、您好。

    您使用的是 CC6/CC7还是 ENERGIA? 或其他环境?

    您的代码是什么、包括#include?

    John

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我是说、这是 您源代码中的#include 命令。 由于 ENERGIA 的库被写入 Tiva C 系列库之上、并且在使用的 ROM/FLASH 库调用上存在差异。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 John:


    我正在使用 ENERGIA 进行编程。

    我的计划是:

    #include

    int addr = 0;

    void setup()



    void loop()


    Val = 12;
    EEPROM.write (addr、val);


    延迟(100);


    很简单、但我有错误。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Marco,还不错
    请注意,val 以前未在 setup()之前或内部的代码中定义
    您需要一个、 int val = 0
    似乎您还需要包括(尽管不包括全部或任何);
    #include
    #include
    #include
    #include

    还请注意、您实际上所做的是、在无限循环内
    写入相同的 EEPROM 地址/位置0 - 3、相同的值、
    一遍又一遍地运行。

    John
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    正如我说过的、这是一个测试程序、我真的想用一个按钮来记录 RTC 为我提供的数据存储时间、但是我在尝试使用 EEPROM 保存一个简单变量时出错。

    Marco
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您发送的代码不起作用
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、能不能帮助任何程序将变量保存到 EEPROM 中
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Mark。
      TIVAARE 外设驱动程序库用户指南第128页的示例非常简单
     要关注的内容。  您可以 从 TI 下载该文档、也可以将上述标题"谷歌"。
    您甚至可以使用#define My_info 0x400并使用 My_info 关键字而不是地址
    本身。 请记住 、EEPROM 中的每个位置都反映为4个物理字节、
    一个字。 即使您只想 在 EEPROM 位置存储"1"、也是如此。 在示例中
    uint32_t 指针 pui32Data/pui32Read 的第一个(第0个)元素、扩展范围为0x400至
    0x403、因此 uint32_t 指针 pui32Data/pui32Read 的第二个(第一个)元素从0x404开始
    并在 0x407结束
    在这方面、 由于 TM4C1294xxxx 上的 EEPROM 被安排为 6k 空间、只有1536个不同的空间
    4字节/32位字值 可保存在此处。 足以满足任何应用的需求。
     
    因此、如果 您想存储 3416078932之类的电话号码、则需要将其转换为
    十六进制为:0xCB9D3A54、然后仅在 EEPROM 中的一个地址位置使用4个字节。 如果你
    要将其存储为不同的十进制 数字、则 需要10个字= 40字节的 EEPROM
    空间(不是很有用)。 如果要存储包含字母和数字的字符串、则有两个
    选项。
    可以用单独 的字符来分隔它并 为每个字符使用一个字、也可以使用公共例程来
    将 字符串的每个数字/字母转换器转换为字符/字节、然后 将它们中的每四个连接起来
    uint32_t 值、然后 将 这些值存储在顺序 EEPROM 位置。 当心-->每一个
    位置必须是除 前一个地址之外的4个地址位置。 那么 、我们来看看一串的最佳情况
    假设长度为33个混合 字符/符号/数字、则需要8 + 1 = 9字地址位置
    或总共需要36个字节-> 前32个字符为32个字节、 第33个字符为另外4个字节
    字符。 希望这对您有所帮助
    此致、
    John
     
     
     
    ----