- 1、本文档共26页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单片机综合设计.
基于ZLG7290B、PCF8563的时钟系统设计1 设计要求由PCF8563提供时间参数并由ZLG7290进行显示;能够利用键盘实现时间参数的修改,修改过程可加入“回显”、闪烁功能;利用蜂鸣器实现时钟系统的“整点报时”功能;要求程序中有中断环节。附加功能:显示年、月、日;显示当前温度;当温度超过设定的上限值时蜂鸣器报警。2 设计分析及系统方案设计时钟显示程序通过外部中断INT1控制每秒钟时间的刷新,即每秒从PCF8563T中读取时间参数并送到ZLG7290B中数码管显示;通过外部中断INT0进行时间参数的修改和温度显示,程序为分支结构,通过按键值判断要修改的位和年月日、温度的显示。地址分配:1)单片机: 10H~1DH:向PCF8563T输入的相关参数(有时间参数、控制字等)的数据块; 1FH:存放从ZLG7290B中读取的键值; 20H~26H:从PCF8563T中读出的时间参数(秒、分、小时、日、星期、月、年);通过CHAIFEN(拆分)子程序将20H~26H中获取到的时间参数拆分查表并送入下列缓冲区: 28H~2FH:年(四个单元)、月(两个单元)、日(两个单元)的显示缓冲区(字形码); 38H~3FH:小时、分钟和秒(各占两单元)的显示缓冲区(字形码)。2)PCF8563T: 02H~08H:依次存放秒、分、时、日、月、年。(单片机的10H~1DH00H~0DH)3)ZLG7290B: 07H、08H:控制数码管闪烁; 10H、11H:秒的个位、十位; 13H、14H:分的个位、十位; 16H、17H:时的个位、十位。温度显示程序温度显示程序设置在INT0的中断服务程序中,当按键值为E时显示当前温度,超过设定的上限值时实现蜂鸣器报警。采用查询方式判断是否退出中断。地址分配:35H:温度值高4位;36H:温度值低8位;3 系统电路图4 外围接口模块硬件电路功能描述PCF8563T:实时时钟芯片,提供时、分、秒、年、月、日、星期。 ZLG7290B:有键盘输入和数码管显示功能,通过按键修改时间,通过数码管显示时间和温度。 DS18B20:采集温度功能,将温度数据读取到单片机内再通过数码管显示出来。 蜂鸣器:用作整点报时和温度报警。5 主程序中主要变量定义变量名称RAM单元/寄存器功能WSLA_85630A2HPCF8563T口地址(写)RSLA_85630A3HPCF8563T口地址(读)WSLA_729070HZLG7290B口地址(写)RSLA_729071HZLG7290B口地址(读)WSLA70HDS18B20口地址(写)RSLA71HDS18B20口地址(读)TEMPER_L36H存放读出温度低位数据TEMPER_H35H存放读出温度高位数据TEMPER34H存放转换后的8位温度值TEMPER_NUM60H缓冲单元TEMPER337H存放温度整数值百位部分TEMPER238H存放温度整数值十位部分TEMPER139H存放温度整数值个位部分TEMPER03AH存放温度整数值小数部分TEM54H存放设置温度上限值DATA_140H小数部分首地址6系统软件中各个子程序的功能描述子程序名称入口参数出口参数功能 描述INT_RCTPCF8563T的00H~0DH;单片机38H~3FH单片机10H~1DH,20H~26H;ZLG7290B的10H~17H时钟中断服务子程序。每秒将8563中的当前时间读入单片机的10H~1DH中;将8563的02H~08H读入单片机内部的20H~26H;将单片机内部的38H~3FH写到7290的10H~17H;整点报时INT_7290累加器A修改时间和显示温度中断服务子程序。通过功能键A、B、C、D、E进行时间修改、时间显示、温度显示RDKEYZLG7290B的01H累加器A读键值子程序WR8563RAM的10H~1DHPCF8563T的00H~0DH向日历芯片写入时间参数。将RAM的10H~1DH中的时间参数(含控制字)写入芯片的00H~0DH单元DISPLAYPCF8563T02H~08H;单片机38H~3FH单片机20H~26H;ZLG7290的10H~17H显示当前时间子程序LIGHT累加器AZLG7290的07H、08H闪烁子程序RING、RING1——蜂鸣器响程序CHAIFEN单片机20H~26H单片机28H~2FH,38H~3FH对20H~26H单元的参数拆分并在查表后送28H~2FH和38H~3FHCF累加器AR3、R4将A中数据拆分为两独立的十六进制数并查表ADJUST20H~26H20H~26H屏蔽读出的7个字节参数无关位DELAY——延时子程序延时256msDELAY2——延时子程
文档评论(0)