计算机硬件综合设计——实时时钟显示_第1页
计算机硬件综合设计——实时时钟显示_第2页
计算机硬件综合设计——实时时钟显示_第3页
计算机硬件综合设计——实时时钟显示_第4页
计算机硬件综合设计——实时时钟显示_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、课程设计任务书学生姓名:专业班级:指导教师: 工作单位:计算机科学与技术学院题目:实时时钟显示例程设计初始条件:1. 课程设计使用ZG211硬件综合实验平台(8051单片机),配有课程设计接口芯片和辅助芯片以及器件;2. ZG211有程序设计集成开发环境,程序设计语言为C语言;3. ZG211硬件综合实验平台使用说明书;要求完成的主要任务:(包括课程设计工作量及其技术要求,撰写说明书具体要求)1. 学习使用ZG211硬件综合实验平台,程序设计集成开发环境;2. 根据课程设计题目,进行需求分析,搞清楚课程设计需要设计需求和需要解决的设计内容。3. 查阅和学习课程设计题目需要的接口芯片资料,掌握接

2、口芯片的使用方法和编程要领。查阅和学习课程设计题目需要的辅助芯片以及器件资料。4. 设计接口芯片和辅助芯片以及器件与8051单片机连接硬件电路原理图。5. 设计与硬件电路原理图对应的C语言程序(或8051汇编语言)。给出程序流程图。在集成开发环境中调试程序。给出程序的详细注释。能够解释使用程序模拟电路时序信号和数据。6. 撰写课程设计报告,1)详细陈述以上的设计过程;2)详细陈述电路的调试过程。时间安排:第18周:1. 熟悉ZG211硬件综合实验平台,KEILC UVISION2 集成开发环境;查阅接口芯片资料, 熟悉接口芯片和它的使用方法。2. 设计硬件电路原理图,。第19周:1. 使用C语

3、言或汇编语言设计和调试接口程序。2. 撰写计算机硬件综合设计报告。指导教师签名:年 月 日系主任(或责任教师)签名:实时时钟显示例程设计目录:1 实验目的 42 实验设备 42.1 硬件环境 42.2 实验板模块 93 实验要求 104 实验原理 114.1 PCF8563芯片114.2 I2C 协议 1 45 实验步骤 205.1 硬件连接 205.2 软件设计 206 实验成功标志 217 程序说明 218 操作过程说明 229 心得体会 221实验目的1. 掌握10 口操作;2. 掌握显示及键盘芯片的运用;3了解中断的运用;4了解I2C总线操作。2实验设备2.1硬件环境1. PC机一台;

4、ZG-211单片机系统实验板一块;实验连接线若干2. 芯片CH451芯片CH451是一个整合了数码管显示驱动和键盘扫描控制以及卩 P监控的多功能外围芯 片。CH451内置RC振荡电路,可以动态驱动8位数码管或者64位LED具有BCD译码、 闪烁、移位等功能;同时还可以进行64键的键盘扫描;CH451通过可以级联的串行接口 与单片机等交换数据;并且提供上电复位和看门狗等监控功能。(1) 显示驱动1. 内置大电流驱动级,段电流不小于 30mA字电流不小于160mA2. 动态显示扫描控制,直接驱动 8位数码管或者64位发光管LED3. 可选数码管的段与数据位相对应的不译码方式或者BCD译码方式。4.

5、 字数据左移、右移、左循环、右循环5. 各数字独立闪烁控制。6. 通过占空比设定提供 16 级亮度控制。7. 支持段电流上限调整,可以省去所有限流电阻。8. 扫描极限控制,支持 1 到 8 个数码管,只为有效数码管分配扫描时间。(2) 键盘控制1. 内置64键键盘控制器,基于8X 8矩阵键盘扫描。2. 内置去抖动电路。3. 键盘中断,低电平有效输出。4. 提供按键释放标志位。(3) 外部接口1. 高速的 4 线串行接口,支持芯片级联,时钟速度从 0 到 10MHz。2. 串行接口中的DIN和DCLK信号线可以与其它接口电路共用。3. 完全内置 RC 阻容振荡电路,根据需要可以外接阻容振荡。4.

6、 内置上电复位和看门狗Watch-Dog,提供高电平有效和低电平有效复位输出(4) 其它杂项1. 可选多种封装: DIP28、SOP28、DIP24S。2. 经过授权采用了 2 项专利技术,低成本,简便易用。89S52芯片( 1 )主要性能1. 与MCS-5单片机产品兼容2. 8K字节在系统可编程Flash存储器3. 1000次擦写周期4. 全静态操作:0Hz33Hz5. 三级加密程序存储器6. 32个可编程I/O 口线7. 三个16位定时器 /计数器8. 八个中断源9. 全双工UAR串行通道10. 低功耗空闲和掉电模式11. 掉电后中断可唤醒12. 看门狗定时器13. 双数据指针14. 掉电

7、标识符(2) 功能特性描述AT89S5是一种低功耗、高性能CMOS位微控制器,具有8K在系统可编程Flash存储 器。使用 Atmel 公司高密度非易失性存储器技术制造,与工业 80C51 产品指令和引脚完全 兼容。片上 Flash 允许程序存储器在系统可编程,亦适于常规编程器。在单芯片上,拥有 灵巧的8位CPU和在系统可编程Flash,使得AT89S5为众多嵌入式控制应用系统提供高灵 活、超有效的解决方案。AT89S52具有以下标准功能:8k字节Flash,256字节RAM 32位I/O 口线,看狗定时 器,2 个数据指针,三个 16 位定时器 / 计数器,一个 6向量2级中断结构,全双工串

8、行口, 片内晶振及时钟电路。另外,AT89S52可降至0Hz静态逻辑操作支持2种软件可选择节电 模式。空闲模式下,CPU?止工作,允许RAM定时器/计数器、串口、中断继续工作。掉 电保护方式下,RA内容被保存,振荡器被冻结, 单片机一切工作停止,直到下一个中断或硬件复位为止。CD4052芯片(1) 简要说明 :CC4052 是一个差分 4 通道数字控制模拟开关,有 A0、 A1 两个二进制控制输入端和INH输入,具有低导通阻抗和很低的截止漏电流。幅值为 4.520V的数字信号可 控制峰峰值至20V的模拟信号。例如,若VDD = + 5V,VSS= 0, VEE = 13.5V,则0 5V的数字

9、信号可控制13.54.5V的模拟信号。这些开关电路在整个VDD VSS和VDD VEE电源范围内具有极低的静态功耗,与控制信号的逻辑状态无关。当INH输入端=“1”时,所有的通道截止。二位二进制信号选通 4通道中的一通道,可连接该输入端至输 出。CC4052提供了 16引线多层陶瓷双列直插(D)、熔封陶瓷双列直插(J)、塑 料双列直插(P)和陶瓷片状载体(C) 4种封装形式。(2) 推荐工作条件 :电源电压范围3V15V输入电压范围0VVdd(3) 工作温度范围M 类55T 125CE 类40r 85C(4) 极限值:电源电压一0.5V18V输入电压 0.5VVdd+0.5V输入电流 . 10

10、mA储存温度 65r150r(5) 引出端符号 :A0A1 地址端1I0/O01I3/O3 输入输出端2I0/O02I3/O3 输入输出端INH 禁止端1O/I 公共输出 /输入端2O/I 公共输出 /输入端VDD 正电源VEE 模拟信号地Vss 数字信号地(6) 逻辑符号:INHEN4A】g0 MUX/DXH/O ig込Qi2120220/1PCF8563(1) .概述PCF8563是低功耗的CMOS实时时钟/日历芯片,它提供一个可编程时钟输出,一个 中断输出和掉电检测器,所有的地址和数据通过I2C总线接口串行传递。最大总线速度为 400Kbits/s,每次读写数据后,内嵌的字地址寄存器会自

11、动产生增量。(2) .特性1. 低工作电流:典型值为0.25卩A (VDD=3.0V Tamb=253时)。2. 世纪标志3. 大工作电压范围:1.05.54. 低休眠电流;典型值为0.25卩A(VDD=3.0V,Tamb=2S )5. 400KHz 的 I2C 总线接口( VDD=1.45.5V 时)。6. 可编程时钟输出频率为:32.768KHZ, 1024Hz, 32Hz, 1Hz。7. 报警和定时器。8. 掉电检测器。9. 内部集成的振荡器电容。10. 片内电源复位功能。11. I2C总线从地址:读,0A3H写,0A2H12. 开漏中断引脚。(3).应用1. 移动电话2. 便携仪器3.

12、 传真机4. 电池电源产品(4).功能描述PCF8563有16个8位寄存器:一个可自动增量的地址寄存器,一个内置32.768KHZ的 振荡器(带有一个内部集成的电容),一个分频器(用于给实时时钟RTC提供源时钟),一 个可编程时钟输出,一个定时器,一个报警器,一个掉电检测器和一个 400KHz I2C总线接 口。所有16个寄存器设计成可寻址的8位并行寄存器,但不是所有位都有用。前两个寄 存器(内存地址00H, 01H)用于控制寄存器和状态寄存器,内存地址 02HH 08H用于时钟 计数器(秒年计数器),地址09H- 0CH用于报警寄存器(定义报警条件),地址0DH控制 CLKOUT管脚的输出频

13、率,地址0EH和0FH分别用于定时器控制寄存器和定时器寄存器。 秒、分钟、小时、日、月、年、分钟报警、小时报警、日报警寄存器,编码格式为BCD星期和星期报警寄存器不以BCD格式编码。当一个RTC寄存器被读时,所有计数器的内容 被锁存,因此,在传送条件下,可以禁止对时钟/日历芯片的错读。3. 配套并口编程线一根4. 配套电源一个2.2实验板模块超声波攻膛模块iiA度测试模決LLPROM 读写模块3实验要求1. 能正常操作LED数码显示2. 能通过中断方式接收按键信息3. 能通过I2C总线方式与PCF8563芯片交换数据4. 能正确解释并显示从PCF8563芯片取出的日期和时间数据4实验原理4.1

14、 PCF8563 芯片在单片机应用系统中的实时时钟信号,一般都由专门的时钟芯片来提供,单片机只需要定期读取时钟芯片中固定地址中的时钟信息即可。本实验板采用的是PCF8563时钟芯片PCF8563芯片的引脚说明符号管引脚描述OSCI1振荡器输入OSCO2振荡器输出/INT3中断输出(开漏;低电平有效)VSS4地SDA5串行数据I/OSCL6串行时钟输入CLKOUT7时钟输出(开漏)VDD8正电源PCF8563原理图D3VDDX232J68KHzU108563Ip_-C2622234C1V+C2SCASCLGSDA8765JU 8563该芯片有16个8位寄存器:一个可自动增量的地址寄存器,一个内置

15、32.768KHZ的振荡器(带有一个内部集成的电容),一个分频器(用于给实时时钟RTC提供源时钟),个可编程时钟输出,一个定时器,一个报警器和一个掉电检测器。所有16个寄存器设计成可寻址的8位并行寄存器,但不是所有位都有用。前两个寄存器(内存地址OOH, 01H)用于控制寄存器和状态寄存器,内存地址 02H08H用于时钟计数器(秒年计数器),地 址09HOCH用于报警寄存器(定义报警条件),地址 ODH控制CLKOUT管脚的输出频率, 地址0EH和0FH分别用于定时器控制寄存器和定时器寄存器。PCF8563芯片在第一次运行时需要设置控制寄存器和状态寄存器。PCF8563控制/状态寄存器描述地址

16、位BIT符号描述007TEST1TEST1=0普通模式TEST1=1;EXT_CL!测试模式5STOPSTOP=0芯片时钟运行STOP=1 ;所有芯片分频器异步置逻辑0;芯片时钟停止运行,(CLKOUT在32.768KHZ 时可用)3TESTCTESTCE;电源复位功能失效(普通模式时置逻辑0)TESTC=1电源复位功能有效6、4、2、1、00缺省值置逻辑0010TIETI/TP=0:当TF有效时INT有效(取决于TIE的状态)TI/TP=1:INT 脉冲有效(取决于TIE的状态)注意:若AF和AIE都有效时,则INT 一直有效1AIE2TF当报警发生时,AF被置逻辑1;在定时器倒计数 结束时

17、,TF被置逻辑1,它们在被软件重写前一直保持原 有值,若定时器和报警中断都请求时,中断源由 AF和 TF决定,若要使清除一个标志位而防止另一标志位被重 写,应运用逻辑指令AND3AF4TI/TFTI/TP=0:当TF有效时INT有效(取决于TIE的状态)TI/TP=1:INT 脉冲有效(取决于TIE的状态)注意:若AF和AIE都有效时,则INT 一直有效5、6、70缺省值置逻辑0在PCF8563芯片中,秒、分钟、小时、日、月、年编码格式为 BCD星期不以BCD格 式编码。PCF8563寄存器位描述地址说明BIT符号描述02H秒NL寄存器7VLVL=O:保证准确的时钟/日历数据VL=1:不保证准

18、确的时钟/日历数据60秒代表BCD格式的当前秒数值,值为0099例如: 秒 =, 代表59秒03H分钟寄存器7一无效60分钟代表BCD格式的当前分钟数值,值为00 5904H小时寄存器76一无效50小时代表BCD格式的当前小时数值,值为00 2305H日寄存器76一无效50日代表BCD格式的当前日数值,值为 0131。当年计数器的值是闰年时, PCF8563自动给二月增加一个值,使其 成为29天06H星期寄存器73一无效20星期代表当前星期数值06,这些位也可由 用户重新分配07H月寄存器7C世纪位;C=0指定世纪数为20XX,C=1 指定世纪数为19xx,“xx” 为年 寄存器中的值。当年寄

19、存器中的值由99 变为00时,世纪位会改变。65一无用08H年寄存器70年代表BCD格式的当前年数值,值为0099实验只使用PCF8563的时间读取功能,只需对该芯片地址 02H-08H的内存进行读写 操作,其它地址的内存保持为默认值。4.2 I2C协议I2C总线用两条线(SDA和SCL在芯片和模块间传递信息。SDA为串行数据线,SCL 为串行时钟线。1 只有在总线空闲时才允许启动数据传送。2 在数据传送过程中,当时钟线为高电平时,数据线必须保持稳定状态不允许。有跳变 时钟线为高电平时,数据线的任何电平变化将被看作总线的起始或停止信号。起始信号:时钟线保持高电平期间,数据线电平从高到低的跳变作

20、为I2C总线的起始信号。停止信号:时钟线保持高电平期间,数据线电平从低到高的跳变作为I2C总线的停止信号。SDAOOTSCLSD*IN喀U ST*HD DAT Md-st*总线时序STOP coNDmcmSTAHT CONDITION写周期时序STWBTTSTOP CUT起始/停止时序器件寻址:主器件通过发送一个起始信号启动发送过程,然后发送它所要寻址的从器件的地址。8位从器件地址的高4位固定为1010。接下来的3位A2 A1 A0为器件的地址位,用来定 义哪个器件以及器件的哪个部分被主器件访问。从器件 8位地址的最低位, 作为读写控 制位。“1”表示对从器件进行读操作,“ 0”表示对从器件进

21、行写操作。在主器件发送 起始信号和从器件地址字节后,PCF8563监视总线并当其地址与发送的从地址相符时响应 一个应答信号(通过SDA线)。PCF8563再根据读写控制位(R/W的状态进行读或写操 作。应答信号:I2C总线数据传送时每成功地传送一个字节数据后,接收器都必须产生一个应答信号,应答的器件在第9个时钟周期时将SDA线拉低,表示其已收到一个8位数据。PCF8563在接收到起始信号和从器件地址之后响应一个应答信号,如果器件已选择了写操作,则在每接收一个8位字节之后响应一个应答信号。号,当PCF8563工作于读模式时,在发送一个8位数据后释放SDA线并监视一个应答信号, 一旦接收到应答信号

22、,PCF8563继续发送数据,如主器件没有发送应答信号,器件停止传 送数据并,等待一个停止信号主器件。noSEXFAOM masterDATA OUTPUT FROM ECEVERDATAFOOMTRAN7W1-ACKFQOWLEDGE应答时序图10 !10A2A1A0R/W从器件地址位其中AO、A1和A2对应24C02勺管脚1、2和3, PCF856的从地址读操作时为0A3H写 操作时为0A2H写操作:1.字节写在字节写模式下,主器件发送起始命令和从器件地址信息(R/W位置零)给从器件,在 从器件产生应答信号后,主器件发送PCF8563的字节地址,主器件在收到从器件的另一个 应答信号后,再发

23、送数据到被寻址的存储单元。PCF8563再次应答,并在主器件产生停止信号后开始内部数据的擦写,在内部擦写过程中 PCF8563不再应答主器件的任何请求。TBUSACTTVTTY: * SLAVEBYTEMASTER J ADDRESSADDRESSDATAI 舟- 一 士= * _斗SDAUNE T| I I r T I I 1 T 1 1 T 1 I T 7 1厂I I I i l 丄 1_ 丄 1 I. 丄_111.丄丄 _J_AACCKKSTOPFTACK字节写时序图2页写用页写,PCF8563可以一次写入16个字节的数据,页写操作的启动和字节写一样, 不同在于传送了一字节数据后并不产生

24、停止信号。主器件被允许发送P( PCF8563 P=15;)个额外的字节。每发送一个字节数据后 PCF8563产生一个应答位并将字节地址低位加1, 高位保持不变。如果在发送停止信号之前主器件发送超过 P+1个字节,地址计数器将自动翻转,先前 写入的数据被覆盖。接收到P+1字节数据和主器件发送的停止信号后,芯片启动内部写周期将数据写到数 据区,所有接收的数据在一个写周期内写入 PCF8563BTTtADDHESS阿DATA neusAC-rruiTY-MASTEPStJALINEDATA nUUACKACK页写时序图应答查询:可以利用内部写周期时禁止数据输入这一特性,一旦主器件发送停止位指示主器

25、件操 作结束时,PCF8563启动内部写周期,应答查询立即启动,包括发送一个起始信号和进行 写操作的从器件地址。如果PCF8563正在进行内部写操作,不会发送应答信号。如果 PCF856已经完成了内部自写周期,将发送一个应答信号,主器件可以继续进行下一次读 写操作。写保护:写保护操作特性可使用户避免由于不当操作而造成对存储区域内部数据的改写,当WP管脚接高时整个寄存器区全部被保护起来而变为只可读取。读操作:PCF856读操作的初始化方式和写操作时一样,仅把(R/W 位置为1,有三种不同的 读操作方式:立即地址读、选择读和连续读。立即地址读:PCF8563的地址计数器内容为最后操作字节的地址加

26、1。也就是说,如果上次读/写的操作地址为N,则立即读的地址从地址N+1开始。如果N=E(这里对24C02,E=255;对PCF8563E=16),则计数器将翻转到0且继续输出数。PCF8563接收到从器件地址信号后(R/W位 置1),它首先发送一个应答信号,然后发送一个 8位字节数据。主器件不需发送一个应 答信号,但要产生一个停止信号。BUS ACTTV1TY: A SLAVEMASTfA : ADORESS sdal*e FTI. n i: I I ITASTOPSGLBTHBrrQATAQUTNOCKC立即地址读时序图选择性读:操作允许主器件对寄存器的任意字节进行读操作,主器件首先通过发送

27、起始信号、从器件地址和它想读取的字节数据的地址执行一个伪写操作。在PCF8563应答之后,主器件BYTE ADDRESS阿5L*VE AOORESSSTOP重新发送起始信号和从器件地址,此时 R/W位置1,PCF8563响应并发送应答信号,然后 输出所要求的一个8位字节数据,主器件不发送应答信号但产生一个停止信号。0USACTMT:昌 SLAVEMASTER 5 ADWESST - LJ:冋sdaline ETLTLdLEACKCATAn选择读时序图连续读:连续读操作可通过立即读或选择性读操作启动。在PCF8563发送完一个8位字节数据后,主器件产生一个应答信号来响应,告知 PCF8563主器

28、件要求更多的数据,对应每个主机产生的应答信号PCF8563将发送一个8位数据字节。当主器件不发送应答信号而发送停 止位时结束此操作。从PCF8563输出的数据按顺序由N到N+1输出。读操作时地址计数器 在PCF8563整个地址内增加,这样整个寄存器区域在可在一个读操作内全部读出。当读取 的字节超过E (对于PCF8563 E=16;对24C02, E=255)计数器将翻转到零并继续输出数 据字节。SUSACTtVlTYMASTEASDA LINEATAn*2SUWCADDRESSOATArttMTAn+1u ACKDATAnM g1 I 8 i III LJNOAc连续读时序图5实验步骤5.1

29、硬件连接将并口线插在实验板与PC机的并口插座上;按图连接实验线路:CH451与CPU连接实验线路:J5_89S52P34P15P330J32_CH451LOADDCLKDIN5.2 软件设计进入 KEILC 开发环境编写程序。首先根据 2.3.5 节 I2C 协议 内容,编写 I2C 函数。 在编写 I2C 函数时,应注意代码的可重用性,方便其它函数调用。例如:编写起始信号函 数时,可以将它独立出来,VOID BEGIN()程序代码PCF8563的I2C接口最大频率是400KHZ在程序中对一个10 口操作完后,需要延时2.5毫秒(本实验板CPU晶振为11.0592MHZ一个指令周期为1.08毫

30、秒)。写好I2C读写函 数后,可对PCF8563进行操作。先将CD4052的通道选为0,这样CPU与PCF8563物理联接 起来了。第一次操作需要对PCF8563进行初始化设置。先将0X00分别写入PCF8563中地 址为0X0,0X01的寄存器中,接着将要设置的时间按:年、月、星期、日、小时、分、秒的 顺序,以BC码格式写入地址为0X08-0X02的寄存器中,具体见表2-8、表2-9。在将时间 按:年、月、星期、日、小时、分、秒读出后,按“ XX-XX-XX格式分两屏显示出来,显 示接口的应用见。6 实验成功标志按下1 号按键,显示测量得到的日期;按下 2 号按键,显示测量得到的时间;7 程

31、序说明1. send_disp_data向CH451芯片发送命令2. send_comm向CH451芯片发送命令3. disp_initialize 向 CH451 芯片发送初始化命令4. key 中断函数,获取当前按键状态5. Display_TEST 测试显示 LED 数码管6. InitMCU 初始化 MCU7. delay_1ms毫秒级延时8. chang_4052选择 4052 的通道9. PCF8563Start向时钟芯片发送开始信号10. PCF8563Stop向时钟芯片发送停止信号11. PCF8563Clock从总线接受一 BIT数据12. PCF8563Ack 向总线发送一个数据接受完成信号13. PCF8563Nack检查PCF8563芯片是否接受到一字节的数据14. PC

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论