文档详情

51单片机实验报告.doc

发布:2017-01-04约3.22万字共64页下载文档
文本预览下载声明
1 实验要求 在实验板上编程实现2012年日历和实时时钟: 1.时-分-秒(2位-2位-2位)显示 可通过键盘置入时间值(参照电子表设置时间工作模式)。 2.可通过按键控制在LED上从右向左滚动显示年_月_日3次,如: 2012_01_20空空2012_01_20 3.实现每日闹铃提醒功能,闹铃时间可用按键设置。闹铃采用提示音表示。 4.实现秒表功能。 5.实现定时器功能(预置定时时间,按键启动,倒计时,计到0响提示音。 6.设计实现音乐提示音。 7.设计串行通信程序,使两台实验系统同步显示。 2.硬件环境与工作原理 2.1硬件环境: 2.1.1单片机: SST 89E564RD 图2.1 2.1.2 外部设备: 1. 八位8段数码管 图2.2 2. 一个4x4非编码键盘 图2.3 2.2工作原理: 2.2.1引入选通信号的原因: 由于AT89C51单片机的引脚数目有限,需要采用引脚时分复用技术,因此引入AJ00~AJ07作为选通信号,用于选择当前的输入/输出设备。其中,AJ00~AJ07是A12~A14经过74138译码器后的输出信号(A15为译码器的使能信号)。 2.2.2 选通信号产生电路图: 图2.4 2.2.3 数码管位选择原理: 输出位选信号指令: MOV A,#SELECT ;SELECT为位选信号对应的数值 MOV DPTR,#8000H MOV @DPTR,A 电路实现原理: 在指令“MOV DPTR,#8000H”中,8000H代表外部存 储器的地址,对应于A15=1,Ai=0(i=0~14)。由图2.4可知,此时 74138译码器有效,由A=B=C=0,得:AJ00=0,AJ0i=1 (i=1~7)。有由于执行指令“MOV @DPTR,A”时,/WR=0, 因 此,由图2.2可知74HC573有效,它将D0~D7信号保 持并输入 ULN2803,信号经过放大后,作为位选信号驱 动8位数码管。 2.2.4 数码管段选择原理: 输出段选信号指令: MOV A,#SELECT ;SELECT为段选信号对应的数值 MOV DPTR,#9000H MOV @DPTR,A 电路实现原理: 在指令“MOV DPTR,#9000H”中,9000H代表外部存储器的地址, 对应于A15=1,A12=1,Ai=0(i=0~11,13,14)。由图2.4可知,此 时74138译码器有效,由 A=C=0,B=1,得:AJ01=0,AJ0i=1 (i=0,2~7)。有 由于执行指令“MOV @DPTR,A”时,/WR=0, 因此,由图2.2 可知74HC573有效,它将D0~D7信号保持并作 为位选信号输入8位数码管。 2.2.5 4x4键盘控制原理: 由图2.3可知,AJ00=0时,可通过P00~P03向键盘发出扫描信号 或读取键盘信号。具体原理见后续代码。 3. 资源使用 3.1 RAM的使用情况 ALARM EQU 20H.0 ;闹钟设置标志 TIME_UP EQU 20H.1 ;倒计时时间到标志 SOUND_ON EQU 20H.2 ;声音开关标志 UART_EN EQU 20H.3 ;处于串口通信状态标志 IS_HOST EQU 20H.4 ;是否作为串口通信的主机 标志 HOUR_TP EQU 2AH MIN_TP EQU 2BH SEC_TP EQU 2CH MUSIC_SELECT EQU 2DH TIME_BUF EQU 2EH ;30~35H连续存放led显示数据 HOUR EQU 36H ;小时 MIN EQU 37H ;分钟 SEC EQU 38H ;秒 COUNT EQU 39H ;每0.05s 加 1 HOUR_ALARM EQU 3AH MIN_ALARM EQU 3BH SEC_ALARM EQU 4BH SEC_OLD EQU 3CH ;存放旧的秒数 HOUR_DOWN EQU 3DH MIN_DOWN EQU 3EH ;倒数时分钟数 SEC_DOWN EQU 3FH ;倒数时间秒钟数 VAR_HOUR EQU 40H VAR_MIN EQU 41H VAR_SEC EQU 42H MS EQU 43H ;作用同SEC_OLD YEAR0 EQU 44H YEAR1 E
显示全部
相似文档