博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MSP430单片机存储器结构总结
阅读量:4321 次
发布时间:2019-06-06

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

   

   MSP430 内部存储器的类型有:程序存储器 FLASH、数据存储器 RAM、外围模块寄存器、特殊功能寄存器。典型微型计算机的存储器都是采用冯•诺依曼结构,也称普林斯顿结构,即存放程序指令的存储器——程序存储器和存放数据的存储器——数据存储器采取统一的地址编码结构。程序存储器与数据存储器分开的地址编码结构称为哈佛结构,如 MCS-51 系列微处理器。MSP430 采用冯•诺依曼结构。其安排如图 1-1 所示,全部寻址空间为 64K字节。需要注意的是,虽然MSP430  16 位的微处理器,但其寻址空间还是按照字节来计算的。从 0  0xF 为特殊功能寄存器。共 16 个字节,包含中断标志寄存器1IFG1)、中断标志寄存器 2IFG2)、中断允许寄存器 1IE1)、中断允许寄存器 2IE2)、模块允许寄存器 1ME1)、模块允许寄存器 2ME2)。

    0x10  0x1FF 为外围模块寄存器。包含被定时器、AD 转换器、对外端口等模块用到的寄存器。

    0x200 开始为数据存储器 RAM。不同型号中数据存储器的大小不同,但都是从 0x200 地址开始向高端地址扩展。如 MSP430F149 的数据存储器容量为 2KB,其地址范围即为 0x2000x9FF

    0x0C00  0x0FFF  BOOT ROOM。其中存储的内容是生产芯片时掩模在芯片内的一段代码,此段代码用来完成

BSL bootstrap)功能。使芯片的保密熔丝熔断以后,仍然可以通过 BSL 方式修改芯片内的代码。

    0x1000  0x107F  128 个字节的 FLASH 存储器,称为信息存储器 B。此段存储器与高端地址存储代码的 FLASH 存储器本质上没有任何不同,同样也可以存储代码并执行,只是这一段存储器的长度较小,只有 128 个字节。主要用来存储一些掉电后仍需保存的数据。由于它是 FLASH 存储器,因此可以按照字或者字节写入,但必须整段擦除。

    0x1080  0x10FF 为信息存储器 A。功能与信息存储段 B 相同。

   程序存储器从 0xFFFF 开始向低端地址扩展,不同型号中程序存储器的容量不同,但都是从 0xFFFF开始向下扩展。如MSP430F133 的程序存储器容量为 8KB,其地址范围即为0xE0000xFFFFMSP430F149 的容量为 60KB,其地址范围为 0x11000xFFFF

   需要注意的是,在程序存储器容量为 60KB 的芯片中,程序存储器与信息存储器 A发生了重合,从地址0xFFFF 向低端地址扩展 60KB,其地址范围为 0x10000xFFFF,而信息存储器 A  B 的地址范围为 0x10000x10FF。程序存储器是 flash 存储器,分为若干段进行管理,可以按照字或者字节写入,擦除时无法按照字或者字节擦除,每次至少擦除一段,每段长度为 512 字节。

 0xFFE00xFFFF 是程序存储器的一部分,共 32 个字节。MSP430 规定用这一段存储器来存储各种中断的中断向量。

   由于程序存储器、信息存储器、数据存储器都是统一寻址的,所以,程序在这 3 种存储器中均可执行。不同的是,程序放在数据存储器中,掉电后就会丢失,并且很容易在执行中被改写,故一般情况不会将程序放在数据存储器中执行。修改程序存储器中的内容必须经过解锁操作才能进行,否则会引起系统复位,MSP430 的存储结构使得使用 C 语言编程所得到的代码仍然有很高的执行效率,因此,除非对程序的大小和执行时间有很高的要求,否则都应该选用 C 语言编写程序。

转载于:https://www.cnblogs.com/Zero_Victor/archive/2013/06/08/3127056.html

你可能感兴趣的文章
MySQL常用日期的选择
查看>>
Ubuntu下查看命令的源码
查看>>
锁及锁粒度的详细比喻
查看>>
JS获取终端屏幕、浏览窗口的相关信息
查看>>
长这么漂亮为啥还学编程?什么心态?
查看>>
JQ JS 切换背景图
查看>>
C#WebBrowser控件使用教程与技巧收集
查看>>
Git 命令
查看>>
/x00
查看>>
数据加载中……显示框
查看>>
判断Http请求由手机端发起,还是有电脑端发起
查看>>
ATMEL处理器自带USB CDC的Win7驱动问题
查看>>
gcc 4.8.5安装
查看>>
time模块
查看>>
db2相关问题及解决方法
查看>>
三、CSS样式——背景
查看>>
UVa 12299 RMQ with Shifts(线段树)
查看>>
BZOJ 3224: Tyvj 1728 普通平衡树(BST)
查看>>
uml建模工具Rational Rose2003使用笔记1
查看>>
Multiple
查看>>