基于24C02的数据存储与显示系统设计.docx
- 文档编号:23211090
- 上传时间:2023-05-15
- 格式:DOCX
- 页数:21
- 大小:318.12KB
基于24C02的数据存储与显示系统设计.docx
《基于24C02的数据存储与显示系统设计.docx》由会员分享,可在线阅读,更多相关《基于24C02的数据存储与显示系统设计.docx(21页珍藏版)》请在冰豆网上搜索。
基于24C02的数据存储与显示系统设计
目录
第一章绪论3
1.1单片机的简单介绍3
1.1.1单片机的特点3
1.1.2单片机的应用领域4
1.2AT80C514
1.2.1AT80C51单片机简介4
1.2.2AT80C51单片机的结构5
1.2.2AT80C51性能介绍7
第二章
C总线8
2.1
C总线结构8
2.2
C总线上的数据传送9
2.2.1位传输9
2.1.2数据传输的字节格式10
2.3
C数据传输协议10
2.424C02芯片相关介绍11
2.5EEPROM概述12
第三章程序设计13
3.1实验电路图13
3.2基于24C02的数据存储与显示系统设计13
实验小结19
参考文献20
第一章绪论
1.1单片机的简单介绍
单片机是指一个集成在一块芯片上的完整计算机系统。
尽管他的大部分功能集成在一块小芯片上,但是它具有一个完整计算机所需要的大部分部件:
CPU、内存、内部和外部总线系统,目前大部分还会具有外存。
同时集成诸如通讯接口、定时器,实时时钟等外围设备。
而现在最强大的单片机系统甚至可以将声音、图像、网络、复杂的输入输出系统集成在一块芯片上。
图1-1MCS-51片内总体结构框图
1.1.1单片机的特点
1.集成度高,体积小,可靠性高。
单片机将各功能部件集成在一块晶体芯片上,集成度很高。
其内部布线很短,因此其抗工业噪音性能优于一般通用的CPU。
另外,其体积小,对于强磁场环境易于采取屏蔽措施,适合在恶劣环境下工作。
2.控制功能强。
为了满足对对象的控制要求,单片机的指令系统均有极丰富的条件:
分支转移能力,I/O口的逻辑操作及位处理能力,适用于专门的控制功能。
3.扩展。
片内具有计算机正常运行所必需的部件。
芯片外部有许多供扩展用的三总线及并行、串行输入/输出管脚,很容易构成各种规模的计算机应用系统。
4.外部总线增加了I2C(Inter-IntegratedCircuit)及SPI(SerialPeripheralInterface)等串行总线方式,进一步缩小了体积,简化了结构。
5.低电压,低功耗,便于生产便携式产品。
6.优异的性能价格比
1.1.2单片机的应用领域
1.在智能仪器仪表中的应用
2.在机电一体化中的应用
3.在日常生活及家用电器领域的应用
4.在实时过程控制中的应用
5.应用于办公自动化设备
7.在计算机网络和通信领域中的应用
6.商业营销设备中的应用
10.航空航天系统和国防军事、尖端武器等领域
9.应用于汽车电子产品
8.单片机在医用设备领域中的应用
1.2AT80C51
1.2.1AT80C51单片机简介
AT89C51是美国ATMEL公司生产的低电压,高性能的CMOS8位单片机片内4Kbytes的可反复擦写的只读程序存储器(PEROM)和128bytes的随机存储器(RAM),器件采用ATMEL公司的高密度、非易失存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大。
AT89C51单片机可灵活的应用于各种控制领域。
管脚说明:
VCC:
供电电压。
GND:
接地。
P0口:
P0口为一个8位漏级开路双向I/O口,被定义为高阻输入。
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,可接收输出
4TTL门电流。
图1-2AT89C5140脚塑料双列直插封装(PDIP)
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接
收,输出4个TTL门电流。
P3口:
P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL
门电流。
P3口也可作为AT89C51的一些特殊功能口。
高电平时间。
RST:
复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的
地位字节。
ALE/PROG:
当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的
/PSEN:
外部程序存储器的选通信号。
(0000H-FFFFH),不管是否有内部程序存储器。
/EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储器
XTAL2:
来自反向振荡器的输出。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
1.2.2AT80C51单片机的结构
1中央处理器(CPU)
CPU是单片机内部的核心部件,是一个8位二进制数的中央处理单元,主要由运算其、控制器和寄存器阵列组成。
运算器
运算器用来完成算术和逻辑运算功能,包括算术逻辑单元(ALU)、累加器(ACC)、暂存寄存器(TMP1、TMP2)、程序状态寄存器(PSW)等。
部件。
控制器主要由程序计数器PC、指令寄存器IR和定时控制逻辑电路等构成。
控制器
控制器是单片机内部按照一定的时序协调工作的控制核心,是分析和执行指令的
2存储器
AT89C51单片机内部有128个字节的RAM数据存储器和4KB的闪存程序存储
器(Flash)。
程序存储器是可读不可写的,用于存放编好的程序和表格常数。
数
据存储器是既可读也可写的,用于存放运算的中间结果,运行数据暂存及数据缓
3I/O端口
P2口、P3口,它们都是8位准双向口,每次可以并行输入或输出8位二进制信
并行I/O端口:
AT89C51有四个8位并行I/O端口,分别命名为P0口、P1口、
息。
串行I/O端口:
AT89C51有一个全双工的可编程串行I/O端口,它利用了P3口
的第二功能。
4定时器/计数器
AT89C51内部有两个16位可编程定时器/计数器,简称为定时器(TO)和计数
器(T1),T0和T1分别由两个8位的寄存器构成,其中T0由TH0和TL0构成,
T1由TH1和TL1。
T0和T1在定时器控制器TCON和定时器方式选择寄存器TMOD的控制下,可
工作在定时器模式或计数器模式下,每种模式下又有不同的工作方式。
当定时/
5中断系统
计数溢出时还可以申请中断。
单片机中的中断是指CPU暂停正在执行的原程序而为中断服务程序(执行中断
服务程序),在执行完中断服务程序后再回到原程序继续执行。
总线是用于传送信息的公共途径。
总线可以分为数据总线、地址总线、控制总线。
时器、计数器TCON(中断标志寄存器)等构成,IE、IP、TCON均为SFR特殊
功能寄存器。
AT89C51的中断源有5个。
它们分别是两个外部中断源,三个内
部中断源。
6内部总线
总线是用于传送信息的公共途径。
总线可以分为数据总线、地址总线、控制总线。
线的结构可以减少信息传输线的根数,提高系统可靠性,赠强系统灵活性。
单片机呢的CPU、存储器、I/O接口等单元都是通过总线连接在一起的。
采用总
1.2.2AT80C51性能介绍
AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FlashProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
第二章
C总线
C总线是一种双向二线制总线,它的结构简单,可靠性和抗干扰性能好。
目前很多公司都推出了基于
C总线的外围器件,例如我们学习板上的24C02芯片,就是一个带有
C总线接口的E2PROM存储器,具有掉电记忆的功能,方便进行数据的长期保存。
2.1
C总线结构
C总线结构很简单,只有两条线,包括一条数据线(SDA)和一条串行时钟线(SCL)。
具有
C接口的器件可以通过这两根线接到总线上,进行相互之间的信息传递。
连接到总线的器件具有不同的地址,CPU根据不同的地址进行识别,从而实现对硬件系统简单灵活的控制。
一个典型的
C总线应用系统的组成结构如下图所示(假设图中的微控制器、LCD
驱动、E2PROM、ADC各器件都是具有
C总线接口的器件):
驱动、E2PROM、ADC各器件都是具有
C总线接口的器件):
我们知道单片机串行通讯的发送和接收一般都各用一条线TXD和RXD,而
C总线的数据线既可以发送也可以接受,工作方式可以通过软件设置。
所以,
C总线结构的硬件结构非常简洁。
当某器件向总线上发送信息时,它就是发送器,而当其从总线上接收信息时,又成为接收器。
2.2
C总线上的数据传送
下面我们看看
C总线是如何进行数据传送的。
我们知道,在一根数据线上传送数据时
必须一位一位的进行,所以我们首先研究位传送。
2.2.1位传输
C总线每传送一位数据必须有一个时钟脉冲。
被传送的数据在时钟SCL的高电平期间保持稳定,只有在SCL低电平期间才能够改变,示意图如下图2-2所示,在标准模式下,高低电平宽度必须不小于4.7us。
那么是不是所有
C总线中的信号都必须符合上述的有效性呢?
只有两个例外,就是开始和停止信号。
开始信号:
当SCL为高电平时,SDA发生从高到低的跳变,就定义为开始信号。
停止信号:
当SCL为高电平时,SDA发生从低到高的跳变,就定义为结束信号。
开始和结束信号的时序图如下图2-3所示:
图2-3
C总线传送数据开始和结束信号的时序图
2.1.2数据传输的字节格式
SDA传送数据是以字节为单位进行的。
每个字节必须是8位,但是传输的字节数量不受限制,首先传送的是数据的最高位。
每次传送一个字节完毕,必须接收到从机发出的一个应答位,才能开始下一个字节的传输。
如果没有接受到应答位,主机则产生一个停止条件结束本次的传送。
那么从机应该发出什么信号算是产生了应答呢?
这个过程是这样的。
当主器件传送一个字节后,在第9个SCL时钟内置高SDA线,而从器件的响应信号将SDA拉低,从而给出一个应答位。
好啦,了解了I2C传输数据的格式,现在来研究双方传送的协议问题。
2.3
C数据传输协议
C总线的数据传输协议如下:
(1)、主器件发出开始信号
(2)、主器件发出第一个字节,用来选通相应的从器件。
其中前7位为地址码,第8位为方向位(R/W)。
方向位为“0”表示发送,方向位为“1”表示接受。
(3)、从机产生应答信号,进入下一个传送周期,如果从器件没有给出应答信号,此时主器件产生一个结束信号使得传送结束,传送数据无效。
图2-4
C总线数据的传送过程图
(4)、接下来主、从器件正式进行数据的传送,这时在I2C总线上每次传送的数据字节数不限,但每一个字节必须为8位(传送的时候先送高位,再送低位)。
当一个字节传送完毕时,再发送一个应答位(第9位),如上一条所述,这样每次传送一个字节都需要9个时钟脉冲。
数据的传送过程如下图2-4所示:
2.424C02芯片相关介绍
24c01/24c02是一个1K/2K/4K/8K/16K位串行CMOSE2PROM,内部含有128/256/512/1024/2048个8位字节,CATALYST公司的先进CMOS技术实质上减少了器件的功耗。
CAT24WC01有一个8字节页写缓冲器,24c01/24c02有一个16字节页写缓冲器.该器件通过I2C总线接口进行操作有一个专门的写保护功能.
图2-524C02芯片管脚及其描述
AT24C02是带有
C总线接口的E2PROM存储器,具有掉电记忆的功能,并且可以象普通RAM一样用程序改写。
它的容量是256个字节(00h~0ffh),有A2、A1、A0三位地址,可见
C总线上可以连接8片AT24C02,它的寻址字节是1010A2A1A0R/W。
图2-6是DIP封装的24C02与80C51的接口方案。
其中A0、A1、A2是芯片地址线,单片使用时接地;SCL是串行移位时钟端;SDA是串行数据或地址端,CPU通过SDA访问芯片;WP是写保护端,接高电平时芯片只能读。
图2-624C02执行写操作时与80C51的接口
2.5EEPROM概述
EEPROM是一种可用电气方法在线擦除和再编程的只读存储器.它既有RAM在连机操作中可读可改写的特性,又具有非易失性存储ROM在掉电后仍然能够保持所存储的数据的优点.写入的数据在常温下至少可以保持10年.
图2-7EEPROM内部结构框图
第三章程序设计
3.1实验电路图
图3-1程序设计电路图
3.2基于24C02的数据存储与显示系统设计
实验程序如下:
SCLEQUP1.5
SDAEQUP1.6
ORG0000H
AJMPMAIN
ORG0030H
MAIN:
MOVR4,#0
MOVP3,#0
MOVP0,#3FH
SETBP3.5
JBP2.3,EEE
LCALLKEYSCAN
SJMPFFF
EEE:
JBP2.2,FFF
LCALLKEYSCAN
FFF:
MOVR0,#01H
LCALLRD_DATA
MOVR4,A
LCALLDISPLAY
SJMPMAIN
;***********************************************
KEYSCAN:
MOVR4,#1
LOOP:
MOVP3,#0
MOVP0,#3FH
SETBP3.5
JBP2.3,L1
LCALLDELAY10
JBP2.3,L1
INCR4
AJMPAAA
L1:
JBP2.2,AAA
LCALLDELAY10
JBP2.2,AAA
DECR4
AJMPAAA
AAA:
LCALLDISPLAY
LCALLDELAY10
STORE:
MOVR0,#01H
MOVA,R4
MOVR1,A
LCALLWR_DATA
LCALLRD_DATA
MOVR3,A
RET
DISPLAY:
MOVA,R4
MOVDPTR,#TABLE
MOVCA,@A+DPTR
MOVP0,A
SETBP3.7
CLRP3.7
MOVA,#11111011B
MOVP0,A
SETBP3.5
CLRP3.5
ACALLDELAY10
RET
TABLE:
DB0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H
DB80H,90H,88H,83H,0C6H,0A1H,86H,8EH
DELAY10:
MOVR6,#225
DEL:
MOVR7,#225
DJNZR7,$
DJNZR6,DEL
RET
;**************************************************************
WR_DATA:
LCALLBSTART
MOVA,#0A0H
LCALLWBYTE
MOVA,R0
LCALLWBYTE
MOVA,R1
LCALLWBYTE
LCALLBSTOP
RET
RD_DATA:
LCALLBSTART
MOVA,#0A0H
LCALLWBYTE
MOVA,R0
LCALLWBYTE
LCALLDELAY
LCALLBSTART
MOVA,#0A1H
LCALLWBYTE
LCALLRBYTE
LCALLBSTOP
RET
BSTART:
CLRSCL
LCALLDELAY
SETBSDA
LCALLDELAY
SETBSCL
LCALLDELAY
CLRSDA
LCALLDELAY
CLRSCL
RET
BSTOP:
CLRSCL
LCALLDELAY
CLRSDA
LCALLDELAY
SETBSCL
LCALLDELAY
SETBSDA
LCALLDELAY
CLRSCL
LCALLDELAY
RET
WBYTE:
MOVR3,#8
WBY0:
CLRSCL
RLCA
MOVSDA,C
SETBSCL
DJNZR3,WBY0
CLRSCL
LCALLDELAY
SETBSCL
LCALLDELAY
CLRSCL
LCALLDELAY
RET
RBYTE:
LCALLDELAY
MOVR3,#8
RBY0:
CLRSCL
LCALLDELAY
SETBSCL
LCALLDELAY
MOVC,SDA
RLCA
DJNZR3,RBY0
CLRSCL
LCALLDELAY
SETBSDA
LCALLDELAY
SETBSCL
LCALLDELAY
RET
DELAY:
NOP
NOP
NOP
RET
END
实验小结
随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域,在生活中可以说得是无处不在,因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的。
对于单片机知识,我掌握的并不好,对于程序的熟悉程度也不够。
当然,在这次课程设计中,我也查了不少资料,认真学习了所需要的知识,对以前学的重新温习一遍,并且学到了新的知识。
了解了24C02的相关知识,熟悉了EEPROM存储器,并能够对按键进行扫描、识别和动态显示,并将扫描结果保存于24C02,断电,再通电后能显示断电前的结果。
通过这次课程设计,我更加体会到了所学理论知识的重要性:
知识掌握得越多,设计得就更全面、更顺利、更好。
再有学会了怎样查阅资料和利用工具书。
由于一个人不可能什么都学过,什么都懂,更加不可能一学就通,因此,当你在设计过程中需要用一些不曾学过的东西时,就要去有针对性地查找资料。
经过这次的课程设计,大致地了解了对一课题进行系统研究、设计及制作的全过程。
这些认识使我们在将来的工作和学习当中都会有很大的帮助。
在往后加以吸收利用,以提高自己的应用能力,而且还能增长自己见识补充最新的知识。
毕业设计培养了严肃认真和实事求是的科学态度。
而且培养了吃苦耐劳的精神以及严谨的作风,提高了交流沟通和团体协作能力。
这些对我以后的工作都非常有帮助的。
课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程。
这次课程设计综合了团体的力量,得到了所需要的结果。
在今后的学习与工作过程中,要认识到团体作用,加强团体间的交流,认真的对待每一件事。
参考文献
[1]何立民.单片机应用技术大全.北京:
北京航空航天大学出版社,1994
[2]谭浩强.单片机课程设计.北京:
清华大学出版社,1989
[3]张毅刚.单片机原理及接口技术.哈尔滨:
哈尔滨工业大学出版社,1990
[4]
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 24 C02 数据 存储 显示 系统 设计