zoukankan      html  css  js  c++  java
  • msp430FR5739 FRAM的学习

    FRAM,中文名称为铁电存储器。。FRAM提供一种与RAM一致的性能,但又有与ROM 一样的非易失性。 FRAM 克服以上二种记忆体的缺陷并合并它们的优点,它是全新创造的产品,一个非易失性随机存取储存器。

    首先了解下FR5739的地址空间,对于FRAM,它的地址空间范围从0xC000—0xFFFF;

    分成32page,每个page的大小为512字节。。具体分布可以查看官方的User Guide文档,此处截部分图:

    因此,在编写程序的时候,假如需要将数据存储进FRAM,则应设置写入地址在该范围内。。

    对于中端向量的地址空间的范围,文档上明确给出了是从0FFFFH---0FF80H,其中每个中断向量所占的地址为16个字节。因此,一共有64个中断源。。

    1KRAM的地址范围则从1FFFH—1A00H,更详细的可以看datasheet中的内存结构

    结合这个Memory Organization 和前面的FRAM的地址空间,就发现了两者的FRAM的地址空间没有对上号。因为Memory OrganizationTotla Size 15.5K,起始地址是C200H,而前面的是16K,起始地址为C000,也就是说少了一个page。。然后又看了下文档,发现在User Guide 中的Table 6-1. Page Addresses for 16KB, 8KB, and 4KB Main Memory

    NOTE中提及了

    大概意思就是说在计算的时候,主内存的大小应该从下一个或者往下的两个power算起。。不过我没明白为什么要这样弄。。。

    综上其言,只要定义个指向FRAM地址空间的指针,就能通过指针的操作将数据写入其中了。。然后调试的时候查看内存,便能知道是否将数据写进去了。。

  • 相关阅读:
    P3180 [HAOI2016]地图
    P2787 语文1(chin1)- 理理思维
    P2221 [HAOI2012]高速公路
    P4137 Rmq Problem / mex
    P3746 [六省联考2017]组合数问题
    P2461 [SDOI2008]递归数列
    P3715 [BJOI2017]魔法咒语
    P3195 [HNOI2008]玩具装箱TOY
    Linux下的strerror是否线程安全?
    bash/shell的字符串trim实现
  • 原文地址:https://www.cnblogs.com/jinsedemaitian/p/5589062.html
Copyright © 2011-2022 走看看