存储器分为程序存储器(ROM)和数据存储器(RAM),两种又都可以分为片内和片外,片外即需要自己在单片机外部扩展。

8051单片机的片内程序存储器有4K,片内数据存储器有256个字节,其中又分为高128字节位特殊功能寄存器区,真正用户能用的RAM只有低128字节。

8052单片机有8K片内程序存储器,而数据存储器除了低128字节外还有扩展的高128字节,地址上跟特殊功能寄存器一样,但物理上是独立的,寻址方式不一样,扩展的高128字节只能间接寻址。

Keil中变量的存储类型:

存储类型

说明

code

程序空间(无需改变的变量)

data

直接访问的内部数据存储器(速度最快)

idata

间接访问的内部数据存储器(可以访问全部256字节RAM)

bdata

可位寻址的内部数据存储器

xdata

外部数据寄存器(最大64K)

pdata

分页的外部数据寄存器(最大256字节,少用)

【如无使用关键字,系统则按默认处理(根据存储模式)】

Keil中的存储模式:

存储模式

说明

Small

变量默认为data型,最大128字节

Compare

变量默认为pdata型,最大256字节

Large

变量默认为xdata型,最大64K

Keil中设置如下图:

我们平常使用的STC单片机,有很多型号,具体存储器大小都要看型号:

【89/90系列的机器周期需要12个或6个时钟周期】

【12/15系列的机器周期只需要1个时钟周期】

51单片机上的FFT算法

最近用增强型51单片机做了一个简易的点阵音乐频谱显示器,最主要是自己刚学完信号处理课程,想自己写一个FFT算法。现将已经能够在51单片机上运行的FFT算法供需要的伙伴们参考。

在51单片机上运行FFT算法,需要注意一下几点:

由于51单片机的内存RAM很小,只有128字节,52有256字节,而16点的浮点数输入,就需要2*4*16=128字节的内存开销,所以只有256字节的做多只能做16点的FFT运算。而且必须要用idata定义才能将其定义在高128字节。所以要做16点以上的FFT运算,必须选用有内部扩展RAM的51系列单片机,然后用xdata定义,并且要将存储模式设为LARGE模式。

单片机中存储器扩展位地址线怎么算_51单片机存储器小结相关推荐

  1. 单片机中存储器扩展位地址线怎么算_51单片机CPU结构各部件的原理详细分析

    一. 51单片机串行口工作原理 MCS-51系列单片机片内有一个串行I/O端口,通过引脚RXD(P3.0)和TXD(P3.1)可与外设电路进行全双工的串行异步通信. 1.串行端口的基本特点 8031单 ...

  2. 单片机中存储器扩展位地址线怎么算_51单片机外部扩展存储器时,分时复用做数据线和低8位地址线的是( )...

    [单选题]AT89C51单片机的P3.4脚功特殊能( ) [简答题] [判断题]读风玫瑰图时,它的f风向中心吹向外缘. [简答题](16.0分) [判断题]项目建议书仅是项目建设轮廓的一个初步研究,批 ...

  3. 单片机中存储器扩展位地址线怎么算_单片机外部扩展存储器时,分时复用做数据线和低8位地址线的是( )。 (2.0分)_学小易找答案...

    [判断题]数据挖掘一般是指从大量的数据中通过算法搜索隐藏于其中信息的过程() [单选题]单片机的P1口的功能是( ). (2.0分) [单选题]当52单片机应用系统需要扩展外部存储器或其他接口芯片时, ...

  4. 单片机中存储器扩展位地址线怎么算_小白学单片机 :AT89S51单片机基本硬件结构认识(2)...

    AT89S51单片机存储器的空间配置及功能结构 AT89S51单片机的存储器在物理结构上可以分为4个不同的存储空间:(1)内部程序存储器:(2)片内数据存储器:(3)片外数据存储器(最大可扩展到64K ...

  5. 单片机中存储器扩展位地址线怎么算_关于单片机外扩存储器的编址方法

    进行存储器扩展时,可供使用的编址方法有两种,即:线选法和译码法. -------线选法 所谓线选法,就是直接以系统的地址作为存储芯片的片选信号,为此只需把高位地址线与存储芯片的片选信号直接连接即可.特 ...

  6. 单片机定时器实验两位倒计时秒表_Proteus入门单片机(3)例程分析

    74HC573详解: /* 调试环境:Proteus 7.8 AT89S52单片机 8位共阴数码管 功能为:实现数码管1秒~99秒倒计时, 12M晶振 */#include <reg52.h&g ...

  7. 单片机can通信可以接多少个设备_51单片机的多机并行通信系统应用

    在一些复杂的系统中,系统与分系统.分系统与设备等之间存在数据的传递问题,往往采用通信的方式来解决.由于分系统.没备等通信波特率的不同,特别是一些特殊波特率设备的存在,使得系统中设备间的相互通信不易实现 ...

  8. 1. 若某存储器芯片有地址线16条、数据线8条,则该芯片的存储容量是( )位。————计算机组成原理

    若某存储器芯片有地址线16条.数据线8条,则该芯片的存储容量是( )位. A.8K✖16 B.16K✖8 C.32K✖16 D.64K✖8 答案: D 解析: 数据线8条,说明一个存储单元可以存一个字 ...

  9. 单片机c语言定义位,单片机C语言中位操作用法.pdf

    风行下载2012 正式版官方下载:/ C C 单片机的CC语言中位操作用法 作者:郭天祥 来源:转自 更新时间:2008-12-421:50:22 在对单处机进行编程的过程中,对位的操作是经常遇到的. ...

最新文章

  1. 【swjtu】数据结构实验2_中缀表达式的求值算法
  2. Linux查看ice版本,Linux下ICE的安装
  3. 数字化转型知识方法系列之五:数字化转型战略
  4. python中bytearray函数_Python内置函数bytearray()
  5. aws cli 使用_学习AWS CLI –使用AWS CLI探索IAM用户,角色,策略
  6. Hive中表名、别名的限制
  7. 九章算术卷第七 盈不足
  8. asp.net页面中Menu控件下拉菜单被frame挡住和iframe自适应高度的解决办法
  9. Python统计磁盘代码文件行数
  10. RocketMQ 常见异常处理
  11. pandas数据分组与聚合
  12. 一文读懂天翼物联网平台(AIoT)
  13. 服务器网站扩容一年1g价格,服务器网站扩容 一年1G价格
  14. Coding and Paper Letter(七十六)
  15. Android自定义View之画圆环(手把手教你如何一步步画圆环)
  16. Android PAD扫描枪扫描二维码条形码
  17. 国考省考行测:细节理解,对错判断,要素查找,问什么,找什么,对比分析
  18. 1081: 数字包含
  19. bert 文本分类实战
  20. js 参数为回调函数

热门文章

  1. window oracle 只有bak文件怎么恢复_一起来学习Oracle的备份恢复基础吧-4
  2. CMake编译opencv
  3. [CQOI2015]选数(杜教筛)
  4. AGC004E - Salvage Robots(dp,思维)
  5. cf1555C Coin Rows
  6. 牛客题霸 [删除有序链表中重复的元素] C++题解/答案
  7. 【数位DP】CF 54C,509C,431D,628D,855E,1245F,95D
  8. CF1472(div3):总结
  9. YBTOJ 特殊数列(哈希表)
  10. [模板]多项式全家桶小记(求逆,开根,ln,exp)