ImageVerifierCode 换一换
格式:DOCX , 页数:25 ,大小:118.12KB ,
资源ID:20905882      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/20905882.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(自动报时设计VHDLWord文档下载推荐.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

自动报时设计VHDLWord文档下载推荐.docx

1、20H-26H从PCF8563T中读出的时间参数(秒、分、小时、日、星期、月、年)缓冲区年月日28H-2FH拆分查表所得年月日缓冲区以待显示时分秒38H-3FH拆分查表所得时分秒缓冲区以待显示键值1FH读入的键值存储单元6 系统软件中各个子程序的功能描述子程序的名称、功能,以及入口、出口参数。子程序名称入口参数出口参数功能 描述INT_RCT无时钟中断服务子程序PANDUAN20-21H判断并进行整点报时CHAIFEN20-26H28-2FH、38-3FH将时间参数拆分查表CFAR4、R3将A中数据拆违两独立的十六进制数并查表得到对应字型码ADJUST20-25H屏蔽各时间参数无关位INT_7

2、290键盘修改时间中断服务子程序RDKEY读键值子程序WR8563R7、R0、R2、R3向日历芯片写时间参数WRNBYT带有内部单元地址的多字节写操作子程序RDADDR7、R0、R2、R3、R4带有内部单元地址的多字节读操作子程序7 主程序程序流程图 N Y Y N N WAIT1 WAIT28 程序清单 SDA BIT P1.0 SCL BIT P1.1 WSLA_8563 EQU 0A2H RSLA_8563 EQU 0A3H WSLA_7290 EQU 70H RSLA_7290 EQU 71H ORG 8000H LJMP 8100H ORG 8003H LJMP INT_RCT OR

3、G 8013H LJMP INT_7290 ORG 8100HSTART: MOV SP,#60H CLR P1.7 LCALL DELAY SETB P1.7;*设定PCF8563T的时间和命令参数 MOV 10H,#00H MOV 11H,#1FH MOV 12H,#50H ;秒 MOV 13H,#59H ;分 MOV 14H,#01H ;时 MOV 15H,#09H ;日期 MOV 16H,#04H ;星期 MOV 17H,#06H ;月 MOV 18H,#11H ;年 MOV 19H,#00H MOV 1AH,#00H MOV 1BH,#00H MOV 1CH,#00H MOV 1DH

4、,#83H* MOV R7,#0EH MOV R0,#10H MOV R2,#00H MOV R3,#WSLA_8563 LCALL WRNBYT MOV IP,02H SETB EA SETB EX0 SETB EX1 SETB IT0 SETB IT1 SJMP $INT_RCT:MOV R7,#07H MOV R0,#20H MOV R2,#02H MOV R4,#RSLA_8563 LCALL RDADD LCALL ADJUST LCALL PANDUAN LCALL CHAIFEN MOV R7,#08H MOV R2,#10H MOV R3,#WSLA_7290 JNB P1.2

5、,YEARS MOV R0,#38H SJMP DISPYEARS: MOV R0,#28HDISP: JNB P3.2,$ RETI整点报时子程序PANDUAN: MOV A,21H CJNE A,#59H,PDFEN MOV A,20H CJNE A,#56H,PD57 LCALL BAOSHI1 AJMP EXITPD57: CJNE A,#57H,PD58PD58: CJNE A,#58H,PD59PD59: CJNE A,#59H,EXITPDFEN: CJNE A,#00H,EXIT LCALL BAOSHI2EXIT: RET*低音1S报时BAOSHI1:PUSH PSW PUS

6、H 00H MOV R0,#0FFH MOV TMOD,#10H MOV TL1,#00H MOV TH1,#0FEH SETB TR1WORK1: JNB TF1,$ CLR TF1 CPL P1.4 DJNZ R0,WORK1 POP 00H POP PSW高音1S报时BAOSHI2: PUSH 01H MOV R0,#04HWORK2: MOV R1,#00H MOV TH1,#0FFHWORK3: DJNZ R1,WORK3 DJNZ R0,WORK2 POP 01H各子程序 ORG 8300HCHAIFEN: PUSH ACC PUSH 03H PUSH 04H MOV A,20H

7、;取秒参数 LCALL CF MOV 38H,R3 MOV 39H,R4 MOV 3AH,#02H MOV A,21H ;取分参数 MOV 3BH,R3 MOV 3CH,R4 MOV 3DH,#02H MOV A,22H ;取小时参数 MOV 3EH,R3 MOV 3FH,R4 MOV A,23H ;取日期参数 MOV A,R3 MOV R3,A MOV 28H,R3 MOV 29H,R4 MOV A,25H ;取月参数 ORL A,#01H MOV 2AH,R3 MOV 2BH,R4 MOV A,26H ;取年参数 MOV 2CH,R3 MOV 2DH,R4 MOV 2EH,#0FCH MO

8、V 2FH,#0DAH POP 04H POP 03H POP ACC*将A中数据拆分为两独立的十六进制数并查表CF: PUSH 02H PUSH DPH PUSH DPL MOV DPTR,#LEDSEG MOV R2,A ANL A,#0FH MOVC A,A+DPTR MOV A,R2 SWAP A MOV R4,A POP DPL POP DPH POP 02HLEDSEG: DB 0FCH,60H,0DAH,0F2H,66H,0B6H,0BEH,0E4H DB 0FEH,0F6H,0EEH,3EH,9CH,7AH,9EH,8EH屏蔽读出的7个字节参数无关位ADJUST: ANL A,

9、#7FH MOV 20H,A MOV 21H,A MOV A,22H ANL A,#3FH MOV 22H,A MOV A,23H MOV 23H,A MOV A,24H ANL A,#07H MOV 24H,A MOV A,25H ANL A,#1FH MOV 25H,A延时子程序*DELAY: MOV R0,#00HDELAY1: DJNZ R1,$ DJNZ R0,DELAY1INT_7290: PUSH 07H PUSH PSW LCALL RDKEY*修改小时AKEY: CJNE A,#0AH,BKEY JB P3.3,$ ANL 14H,#0FH ORL 14H,A ANL 14H

10、,#0F0H MOV R7,#01H MOV R0,#14H MOV R2,#04H LCALL FLASH LJMP DOWN*修改分BKEY: CJNE A,#0BH,CKEY ANL 13H,#0FH ORL 13H,A ANL 13H,#0F0H MOV R0,#13H MOV R2,#03H修改秒CKEY: CJNE A,#0CH,DOWN ANL 12H,#0FH ORL 12H,A ANL 12H,#0F0H MOV R0,#12H LJMP DOWN *中断返回退出DOWN: CLR IE0 POP 07HRDKEY: MOV R0,#1FH MOV R2,#01H MOV R

11、4,#RSLA_7290 MOV A,1FH DEC A向日历芯片中写入时间参数子程序WR8536: MOV R7,#07H*相关I2C子程序带有内部单元地址的多字节写操作子程序 WRNBYT通用的I2C通讯子程序(多字节写操作)入口参数R7字节数,R0:源数据块首地址R0原数据块首地址;R2从器件内部子地址;R3:外围器件地址(写)相关子程序 WRBYT、STOP、CACK、STAWRNBYT: PUSH PSW PUSH ACC WRADD: MOV A,R3 ;取外围器件地地址(包含r/w=0) LCALL STA ;发送起始信号S LCALL WRBYT ;发送外围地址 LCALL C

12、ACK ;检测外围器件的应答信号 JB F0,WRADD;如果应发送内部寄存器首地址如果应答不正确返回重来 WRDA: MOV A,R0如果应答不正确返回重来 INC R0 DJNZ R7,WRDA LCALL STOP RET *带有内部单元地址的多字节读操作子程序 RDADD 入口参数R7字节数;R0目标数据块首地址;R2从器件内部子地址;R3器件地址(写);R4器件地址(读)相关子程序 WRBYT、STOP、CACK、STA、MACK、MNACK RDADD: PUSH PSW ;从PCF8563的02H单元读入7个参数 PUSH ACC ;存放于20H-26H单元 RDADD1: LC

13、ALL STA 取器件地址(写) JB F0,RDADD1; MOV A,R2 ;取内部地址 如果应答不正确返回重来 LCALL STA MOV A,R4 ;取器件地址(读)RDN: LCALL RDBYT MOV R0,A DJNZ R7,ACK LCALL MNACK LCALL STOP ACK: LCALL MACK SJMP RDN启动信号子程序S STA: SETB SDA ;启动信号S SETB SCL NOP ;产生4.7US延时 NOP NOP CLR SDA NOP CLR SCL RET *停止信号子程序P STOP: CLR SDA ;停止信号P SETB SDA*应答

14、信号子程序 MACKMACK: CLR SDA ;发送应答信号ACK非应答法信号子程序MNACKMNACK:发送非应答信号NACK*应答检测子程序CACKCACK:应答位检测子程序 SETB SCL CLR F0 MOV C,SDA ;采样SDA JNC CEND ;应答正确时转CEND SETB F0 ;应答错误时F0置一CEND: RET发送一个字节子程序WRBYTWRBYT: PUSH 06H MOV R6,#08H ;发送一个字节子程序 WLP: RLC A ;(入口参数A) MOV SDA,C DJNZ R6,WLP POP 06H*接收一个字节子程序RDBYT RDBYT: PUSH 06H接收一个字节子程序RLP:产生大于15微秒的延时! NOP ;注意这是专门为ZLG7290添加的20微秒延时部分 MOV C,SDA RLC A DJNZ R6,RLP ;(出口参数R2)

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1