历史上的今天
今天是:2024年08月27日(星期二)
2021年08月27日 | MC9S12G128内存映射(本地地址,逻辑地址,全局地址)
2021-08-27 来源:eefocus
最近在搞飞思卡尔单片机,属于入门菜鸡的级别,现在总结下对于MC9S12G128内存映射,即主要是本地地址,逻辑地址,全局地址概念的理解,之前看.prm文件简直一头雾水,没有人可以问(因为大家都很忙),自己琢磨了一阵觉得有些头绪,网上的资料很多,但是绝活哥及大佬只是高屋建瓴的一笔带过,剩下我这个菜鸡原地一脸懵逼,如有错误,欢迎指正。
上图

上图简直不要太经典,简直不要太简练
16位单片机,最大寻址能力即2的16次方,65535/1024=64k,当flash内存大于64k时,地址怎么索引呢,即有了分页窗口的说法。
本地地址,就是0到64k,在寻址范围内的地址,16k一页,共四页
0x0000-0x3FFF(包含寄存器空间,D-flash,RAM,EEPROM)
0x4000-0x7FFF
0x8000-0xBFFF(分页窗口)
0xC000-0xFFFF
逻辑地址,就是指分页窗口的地址,可以索引到超过寻址范围的地址
拿MC9S12G128来讲,128k,一页16k,共8页,地址命名就是分页窗口号加上分页窗口地址,飞思卡尔HS12系列最大flash是256k即16页,刚好是0-F,对于MC9S12G128来说,分页窗口号是从F开始递减的,也就是8-F(F->8好理解一些)具体命名如下也就是地址如下:
08 8000 - 08 BFFF
09 8000 - 09 BFFF
0A 8000 - 0A BFFF
0B 8000 - 0B BFFF
0C 8000 - 0C BFFF
0D 8000 - 0D BFFF(对应4000-7FFF)
0E 8000 - 0E BFFF
0F 8000 - 0F BFFF(对应C000-FFFF)
全局地址,就是可以将flash线性索引的一串地址规则,规定也是由0x3FFFF开始往上数,具体命名如下:
0x20000-0x23FFF
0x24000-0x27FFF
0x28000-0x2BFFF
0x2C000-0x2FFFF
0x30000-0x33FFF
0x34000-0x37FFF(对应4000-7FFF)
0x38000-0x3BFFF
0x3C000-0x3FFFF(对应C000-FFFF)
不知道为什么对这些玩意特别纠结,想知道什么意思却求而不得,等弄明白好像也就那么回事。
可以对照PRM文件具体理解
ps,上图是针对MC9S12G系列的泛化,不要一一对应,否则就很难理解。
上一篇:飞思卡尔PWM模块
史海拾趣
|
上市不重要;商业模式重要 商业模式是影响一个企业发展、融资、上市非常重要的因素。不同商业模式的企业应选择不同的上市地。反之,欲在不同地方或者同一地方不同市场上市的企业应根据自己的融资需求预先设计自己独特的 ...… 查看全部问答> |
|
其他应对移动和振动[1]问题的解决方案包括: •除去振动源或者与振动源间在机械上解耦。电机、水泵和其他机电装置都是常见的振动源[2]。 •稳定整个测试环境。保证电子元器件、导线和电缆的稳固安装或者捆绑固定。屏蔽[3]应该保证稳 ...… 查看全部问答> |
|
建议获奖者包括其它未获奖者和未如期完成作品的参赛者继续改进自己的作品,这不仅仅是动手实践提高自己技术能力的一次机会,好的DIY作品本身也是一件实用的装置,善于利用的话,也许还能成为一块不错的“敲门砖”,特别是对于还是学生的参赛者,同 ...… 查看全部问答> |
|
我仿真的时候没有问题可以,把程序下到板子里问题就出来了,为什么我把触发方式设置成边沿触发,把程序下到板子里就先执行了一次中断服务程序,而我在Protues仿真的时候就是好的,我有点郁闷了。怀疑是不是硬件的原因。板子放了很久,复位按钮更奇 ...… 查看全部问答> |




