ATmega48 Flash程序存储器

最新更新时间:2021-10-14来源: eefocus关键字:ATmega48  Flash  程序存储器 手机看文章 扫描二维码
随时随地手机看文章

系统内可编程的Flash 程序存储器
ATmega48/88/168具有 4/8/16K 字节的在线编程 Flash,用于存放程序指令代码。因为所有的AVR指令为16 位或32 位,故而 Flash 组织成 2/4/8K x 16。 对于 ATmega88与ATmega168,用户程序的安全性要根据Flash程序存储器的两个区:引导(Boot)程序区和应用程序区分开来考虑。 ATmega48中没有分为引导程序区和应用程序区,SPM 指令可在整个Flash中执行。详见P235“存贮程序存储器(SPM)控制和状态寄存器 – SPMCSR” 与 P243 中 SPMEN 部分的描述。。

Flash存储器至少可以擦写10,000次。ATmega48/88/168的程序计数器(PC)为11/12/13位,因此可以寻址 2/4/8K 的程序存储器P234“Flash自编程, ATmega48” 与P240“Boot Loader支持RWW自编程,ATmega88 与ATmega168” 。而 P254“存储器编程” 详述了用SPI引脚接口实现对Flash数据的 串行下载。

常数可以保存于整个程序存储器地址空间( 参考LPM 加载程序存储器指令的说明)。取指与执行时序图请参见 P11“ 指令执行时序”。

以下分别是ATmega48 和 ATmega88、ATmega168 的程序存储器映像示意图。

 


关键字:ATmega48  Flash  程序存储器 编辑:什么鱼 引用地址:http://news.eeworld.com.cn/mcu/ic550528.html

上一篇:ATmega48 SRAM数据存储器
下一篇:ATmega48 复位与中断处理

推荐阅读

ATmega48 SPI数据模式与时序
ATmega48有四种 XCKn (SCK)相位与极性的组合与串行数据有关,具体由 UCPHAn与UCPOLn决 定。 数据传输的时序图请见 Figure77。 数据位的移出与锁定发生在 XCKn 信号的相反边沿,以保证有足够的时间使数据稳定。UCPOLn 与 UCPHAn 的功能总结见 Table86。改变这两位的设置将破坏正在进行的通讯。 。
发表于 2021-10-20
<font color='red'>ATmega48</font> SPI数据模式与时序
ATmega48 I/O存储器
ATmega48/88/168的 I/O P311“ 寄存器概述 ” 。ATmega48/88/168 的所有 I/O 和外设都被放置在 I/O 空间。 所有的 I/O地址都可以通过LD/LDS/LDD和ST/STS/STD指令来访问,在32个通用工作寄存器和I/O之间传输数据。 地址为0x00 - 0x1F的I/O寄存器还可用SBI和CBI指令直接进行位寻址,而SBIS和SBIC则用来检查单个位置位与否。使用 IN 和 OUT 指令时地址必须在 0x00 - 0x3F之间。如果要象 SRAM 一样通过 LD 和 ST 指令访问 I/O 寄存器,相应的地址要加上 0x20。 ATmega48/88/168 是一个复杂的微处理器
发表于 2021-10-20
ATmega48 时钟系统及其分布
Figure12为ATmega48 的主要时钟系统及其分布。这些时钟并不需要同时工作。为了降低功耗,可以通过使用不同的睡眠模式来禁止无需工作的模块的时钟,详见 P32” 电源管理及休眠模式 ” 。下面为时钟系统的详细描述。CPU 时钟- clkCPU CPU时钟与操作AVR内核的子系统相连,如通用寄存器文件、状态寄存器及保存堆栈指针的数据存储器。终止CPU 时钟将使内核停止工作和计算。I/O 时钟- clkI/O I/O时钟用于主要的I/O 模块,如定时器/ 计数器、SPI 和USART。I/O 时钟还用于外部中断模块。要注意的是有些外部中断由异步逻辑检测,因此即使I/O 时钟停止了这些中断仍然可以得到监控
发表于 2021-10-20
<font color='red'>ATmega48</font> 时钟系统及其分布
ATmega48 时钟源
ATmega48芯片有如下几种通过Flash熔丝位进行选择的时钟源。时钟输入到AVR时钟发生器,再分配到相应的模块。不同的时钟选项将在后续部分进行介绍。任何时钟源都需要足够高的Vcc来启动振荡器,并且还要有一个最小振荡周期以保证在开 始正常工作之前电源达到稳定电平 。为保证有足够高的 Vcc,在其它复位源释放之后,器件在一个超时延迟时间 (tTOUT) 之内保持内部复位状态。 P37”系统控制和复位” 描述了内部复位的开始条件。这个延时(tTOUT)由看门狗振荡器定时,而延时的周期数通过熔丝位 SUTx 与 CKSELx 来设定。 Table5 列 出了可选的延迟。看门狗振荡器的频率由工作电压决定,详见 P283”ATmega48
发表于 2021-10-20
<font color='red'>ATmega48</font> 时钟源
ATmega48 晶体振荡器
XTAL1 与XTAL2 分别为用作片内振荡器的反向放大器的输入和输出,如Figure 13 所示,这个振荡器可以使用石英晶体,也可以使用陶瓷谐振器。该振荡器为满振幅振荡器, XTAL2 引脚的输出为满幅振荡信号。可用来驱动其它的时钟输入端,且可在噪声环境中工作。电流消耗大于 P25” 低功率晶振 ” 。注意满振幅晶振只在 Vcc = 2.7 - 5.5V 时可用。电容 C1、 C2 的值总是相等的。具体电容值的选择取决于使用的是石英晶体还是陶瓷振荡器,及总的杂散电容与环境电磁噪声等。 Table9 给出了采用石英晶体时的电容选择范围。使用陶瓷振荡器时,电容值应采用生产商给出的值。工作模式通过熔丝位 CKSEL3..1 来选择,如
发表于 2021-10-19
<font color='red'>ATmega48</font> 晶体振荡器
ATmega48 低频晶体振荡器
为了使用32.768 kHz 钟表晶体作为器件的时钟源,必须将熔丝位CKSEL 设置为“1001”以选择低频晶体振荡器。晶体的连接方式如Figure 13 所示。通过对熔丝位CKOPT 的编程,用户可以使能XTAL1 和XTAL2 的内部电容,从而去除外部电容。内部电容的标称数值为36 pF。选择了这个振荡器之后,启动时间由熔丝位SUT 确定,如Table 10 所示。
发表于 2021-10-19
<font color='red'>ATmega48</font> 低频晶体振荡器
小广播
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2021 EEWORLD.com.cn, Inc. All rights reserved