




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、项目五 存储系统设计任务2 串行EEPROM的扩展设计任务内容 设计一个带1位数码管的显示系统,能存储待显示的数据,掉电不丢失。选择串行EEPROM完成设计。学习目标了解串行E2PROM芯片AT24C系列的性能和使用方法掌握串行EEPROM芯片扩展的接口电路设计了解I2C总线的协议规范和操作时序掌握单片机模拟I2C总线操作的软件设计方法巩固数码管显示的接口电路设计和程序设计方法。知 识 点知识点一 串线EEPROM、铁电存储器知识点二 I2C总线协议规范知识点三 I2C总线的应用知识点四 AT24C04与单片机的接口 串行接口芯片与并行接口芯片相比,以占用单片机口线少而占优势,代表性的串行存储
2、器有:ATMEL公司生产的AT24C系列EEPROM、富士通生产的MB85RC等系列铁电存储器(FRAM),其中铁电存储器的操作频率可达1 MHz,读写次数1012次/B,适合数据不断变化的存储场合。 AT24C、MB85RC系列均采用二线制I2C总线结构,可以与具有I2C总线结构的单片机或者模拟I2C总线传输方式的单片机直接连接。这种结构不仅占用很少的资源和I/O口线,而且体积大大缩小,同时具有工作电源宽、抗干扰能力强、功耗低、掉电数据保持、支持在线编程等特点。因此这类存储器芯片已被广泛应用到各类控制电路中。知识点一 串线EEPROM、铁电存储器1引脚图及说明知识点一 串线EEPROM、铁电
3、存储器(1)SCL:串行时钟端,用于对输入和输出数据的同步。(2)SDA:串行数据/地址输入或输出端。(3)WP:写保护,接高电平时具有写保护功能。(4)A0、A1、A2:片选输入。(5)Vcc:电源端,接+5V电源。(6)VSS:接地端。 本任务将以AT24C04为例,介绍这类芯片的应用。MB85RC系列铁电存储器的应用,可以参考AT24C系列EEPROM,时序均符合I2C规范,主要区别在于铁电存储器的操作频率快,脉冲之间可以不加延时。2芯片特性知识点一 串线EEPROM、铁电存储器(1)功能描述 AT24C04支持I2C双向二线制串行总线及其传输协议。在串行E2PROM系统中,必须有一片可
4、以产生串行时钟(SCL)的主器件控制,通常这个主器件就是单片机,控制其总线访问及产生“启动”和“停止”信号。对E2PROM写操作时,单片机是发送器,串行E2PROM是接收器,而在读操作时则相反。进行哪一种操作方式则由单片机确定。知识点一 串线EEPROM、铁电存储器(2)总线特性 I2C双向二线制串行总线协议定义只有在总线处于“非忙”状态时,数据传输才能被初始化。在数据传送期间,只要时钟线为高电平,数据线都必须保持稳定,数据才有效。否则数据线上的任何变化都被当作“启动”或“停止”信号。知识点一 串线EEPROM、铁电存储器(1)A段:总线非忙状态。在此期间SDA,SCL都保持高电平。(2)B段
5、:启动数据传输。当SCL为高电平时,SDA由高电平变为低电平的下降沿被认为是“启动”信号,只有出现了“启动”信号后,其他命令才有效。(3)C段:停止数据传输。当SCL为高电平时,SDA低电平的上升沿被认为是“停止”信号。随着“停止”信号的出现,所有外部操作都结束。(4)D段:数据有效。在出现“启动”信号以后,SCL为高电平且数据线稳定,这时数据线的状态表示要传送数据。知识点二 I2C总线协议规范 芯片的特征码为1010。芯片地址编码A2、A1与引脚上的A2、A1的接法(接VCC为1,接VSS为0)相比较,如果一致,该芯片被选通。所以一个I2C总线上最多可以挂四个AT24C04芯片。P0用于选择
6、片内地址:AT24C04共4Kbit容量(512Byte),P0=0选择0255单元空间,P0=1选择256511单元空间。1. AT24C04的I2C总线控制字知识点二 I2C总线协议规范 被寻址的串行E2PROM发出应答信号后,微处理器紧跟着发出一个字节的串行E2PROM存储单元的地址。当微处理器又接收到应答信号后,再送出要写入一个字节的数据。当微处理器再接收到应答信号后,立刻发“停止”信号,这个“停止”信号就激活内部编程周期,把接收到的8位数据写入指定的串行E2PROM存储单元。2. 写操作知识点二 I2C总线协议规范 读指定地址存储单元方式下微处理器需先发送芯片地址和指定单元地址,在得
7、到“应答”信号后,再发送“启动”信号,之后再发送芯片地址和R/W =1的控制信号,当串行EEPROM发出应答后,就串行输出数据。当一帧数据读完后发送非应答信号(高电平)紧接着发送“停止”信号。3 读操作知识点三 I2C总线的应用 读懂时序图,严格按照时序,进行各函数的编写。I2C总线上的数据传输,每个字节为8位,遵循高位先传,低位后传的原则。#define DELAY_TIME 60#define TRUE 1#define FALSE 0sbit SCL=P10; /*串行时钟*/sbit SDA=P11; /*串行数据*/void DELAY(unsigned int t) /*延时函数*
8、/while(t!=0)t-;知识点三 I2C总线的应用/*启动I2C总线的函数,当SCL为高电平时使SDA产生一个负跳变*/void I2C_Start(void)SDA=1;SCL=1;DELAY(DELAY_TIME);SDA=0;DELAY(DELAY_TIME);SCL=0;DELAY(DELAY_TIME);知识点三 I2C总线的应用/*终止I2C总线,当SCL为高电平时使SDA产生一个正跳变*/void I2C_Stop(void) SCL=0;SDA=0;SCL=1;DELAY(DELAY_TIME);SDA=1;DELAY(DELAY_TIME);SCL=0;DELAY(DE
9、LAY_TIME);知识点三 I2C总线的应用/*发送0,在SCL为高电平时使SDA信号为低*/void SEND_0(void) /* SEND ACK */SDA=0;SCL=1;DELAY(DELAY_TIME);SCL=0;DELAY(DELAY_TIME);知识点三 I2C总线的应用/*发送1,在SCL为高电平时使SDA信号为高*/void SEND_1(void)SDA=1;SCL=1;DELAY(DELAY_TIME);SCL=0;DELAY(DELAY_TIME);知识点三 I2C总线的应用/*发送完一个字节后检验设备的应答信号*/bit Check_Acknowledge(v
10、oid)SDA=1;SCL=1;DELAY(DELAY_TIME/2);F0=SDA;DELAY(DELAY_TIME/2);SCL=0;DELAY(DELAY_TIME);if(F0=1)return FALSE;return TRUE;知识点三 I2C总线的应用/* 向I2C总线写一个字节 */void WriteI2CByte(char b)reentrantchar i;for(i=8;i!=0;i-) if(b&0 x80)SEND_1();elseSEND_0();b=1;/*for(i=0;i8;i+) /原来写法 if(bi)&0 x80)SEND_1();elseSEND_0
11、();*/知识点三 I2C总线的应用/*从I2C总线读一个字节*/char ReadI2CByte(void)reentrantchar b=0,i;for(i=0;i8;i+)SDA=1; /*释放总线*/SCL=1; /*接受数据*/DELAY(10);F0=SDA;DELAY(10);SCL=0;if(F0=1) b=b1; b=b|0 x01;else b=b1;return b;知识点三 I2C总线的应用/*write one byte*功能:将ch写到地址add处 *输入:地址add,待写字节数据ch *输出:无 */void WriteByte(uchar add,uchar c
12、h) I2C_Start(); /start WriteI2CByte(0 xa0); while(!Check_Acknowledge(); /control byte WriteI2CByte(add); while(!Check_Acknowledge(); /address WriteI2CByte(ch); while(!Check_Acknowledge(); /data I2C_Stop(); /stop知识点三 I2C总线的应用/*Read one byte*功能:从地址ch处读取一字节数据*输入:地址add*输出:从地址add处读得的一字节数据*/char ReadByte(uchar add) char b; I2C_Start(); /start WriteI2CByte(0 xa0); while(!Check_Acknowledge(); /control byte, WriteI2CByte(add); while(!Check_Acknowledge(); /address I2C_Start(); /start WriteI2CByte(0 xa1); while(!Check_Acknowledge(); /data b=ReadI2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 租赁资产支持专项计划担保协议(2025年版)
- 二零二五年度汽修店转让合同:含维修业务数据共享与市场分析
- 2025年度旅行社旅游保险代理经营权承包合同
- 二零二五年度孩子户外运动组织服务合同
- 2025年度特色餐饮店铺铺面投资合同
- 二零二五年度公司员工业绩贡献对赌协议书
- 2025年度跨境电商履行合同环节风险控制合同
- 2025年度涉税法律诺成合同与税务风险管理实施合同
- 2025年度绿色建筑租赁合同解除及环保责任履行函
- 二零二五年度公寓租赁及家具租赁合同
- 气象报文日常航空天气报告电报翻译
- 航空航天概论-第三章飞行器动力系统
- 一年级下册数学教案-3.1 估数与数数 |冀教版
- 斯大林格勒保卫战精选教学课件
- 高处作业审批表
- 人员下班安全检查记录表
- 矿山矿石损失与贫化管理规程
- 安全生产晨会管理制度
- 曾奇峰精神分析网络课程学习笔记第1-6讲
- 无人机培训教材ppt
- 初筛阳性确诊流程
评论
0/150
提交评论