嵌入式学习笔记(21)——AVR单片机之片内EEPROM
来源:互联网 发布:手机淘宝新手教程视频 编辑:程序博客网 时间:2024/04/29 04:44
1. ATmega16单片机内部具有512字节的EEPROM,它是一个独立的数据空间。数据读写以一字节为单位,通过专用的指令来实现对EEPROM的操作,也可通过ISP,JTAG,并行编程的方式实现EEPROM的读写;采用内部RC振荡器的1MHz作为访问的定时时钟,其编程使用周期8848个周期,时间大约8.5ms;操作过程中尽量关闭中断,保证时序不被打断。
2. EEPROM存储器相关的寄存器
程序中可直接对地址寄存器EEAR赋值,如EEAR=0x01BA。
控制寄存器EECR用于控制单片机对EEPROM的操作
- 位3——EERIE:EEPROM中断准备好使能位。当EERIE置1而且全局中断I置位时,如果EEWE为0,则单片机产生一个中断表示写操作完成。(即置1后,才能在全中断I为“1”,且EEWE为0时产生写操作完成中断。)
- 位2——EEMWE:EEPROM主写使能位。当EEMWE为“1”时,设置EEWE为“1”将把EEDR中的数据写入EEAR所选择的的地址空间中(只是写入地址空间,还没有真正写入到EEPROM)。如果EEMWE为“0”,则EEWE无效。EEMWE在被用户置“1”后的4个时钟周期后被硬件清“0”。
- 位1——EEWE:EEPROM写使能位。当EEPROM的地址和数据准备好之后,用户必须设置EEWE为“1”,才能将数据写入EEPROM中,在置EEWE为“1”之前,EEMWE必须置“1”,否则写入操作无效。EEPROM数据的写入操作如下:a等待EEWE为“0”;b把EEPROM的地址写入EEAR;c把EEPROM的数据写入EEDR;d置EEMWE为“1”;e在置EEMWE为“1”的4个时钟周期内,向EEWE中写入“1”。
- 位0——EERE:EEPROM读使能位。EERE用于对EEPROM的数据读取,当EEAR中设置了EEPROM的读取地址后,置位EERE将执行读操作。当EEPROM中的数据被读取到数据寄存器EEDR中后,EERE被硬件清零,用户可以通过查询此位来判断读操作是否完成。
- 嵌入式学习笔记(21)——AVR单片机之片内EEPROM
- 嵌入式学习笔记(16)——AVR单片机之优势
- 嵌入式学习笔记(17)——AVR单片机之头文件简介和使用
- 嵌入式学习笔记(18)——AVR单片机之熔丝位设置
- 嵌入式学习笔记(19)——AVR单片机之C51向ICCAVR的移植
- 嵌入式学习笔记(20)——AVR单片机之中断
- AVR单片机EEPROM学习
- STC单片机片内EEPROM的读写
- PIC单片机片内存储空间定义(EEPROM)
- AVR 单片机学习笔记
- AVR单片机学习笔记
- 单片机——EEPROM
- 【学习笔记】AVR单片机之ADC和DAC的应用
- 嵌入式学习笔记(9)——51单片机之中断(外部中断)
- 嵌入式学习笔记(10)——51单片机之中断(定时器中断)
- 嵌入式学习笔记(11)——51单片机之中断(串口通信)
- 嵌入式学习笔记(1)——51单片机之预备知识
- 嵌入式学习笔记(2)——51单片机之开发环境搭建
- 数据库优化
- C++中声明与定义~~extern
- sso的cookie方式实现
- xml规范介绍
- Image Observer
- 嵌入式学习笔记(21)——AVR单片机之片内EEPROM
- cleaning selected projects has encountered a problem errors occurred during
- 双缓冲绘图
- memcached的运行状态监控
- Linux基本应用之NFS---实现两台主机间的通信
- .NET操作XML--XMLTextWriter
- ubuntu fedora 添加右键 打开终端
- XML与.NET
- 学习网站收集(陆续添加中)