单片机课程设计

发布 2022-10-04 21:43:28 阅读 8206

文件名: ds12c887时钟读、写控制程序clock for 51mcu

功能: 时钟读、写控制。

接线: 用导线对应连接时钟模块的cs_887、int887到cpu模块的h、p32。

定义 ds12887 的地址。

second equ 8000h ; 秒寄存器。

second_alarm equ 8001h ; 秒闹钟寄存器。

minute equ 8002h ; 分寄存器。

minute_alarm equ 8003h ; 分闹钟寄存器。

hour equ 8004h ; 时寄存器。

hour_alarm equ 8005h ; 时闹钟寄存器。

week equ 8006h ; 星期寄存器。

date equ 8007h ; 日寄存器。

month equ 8008h ; 月寄存器。

year equ 8009h ; 年寄存器。

reg_a equ 800ah ; 寄存器a

reg_b equ 800bh ; 寄存器b

reg_c equ 800ch ; 寄存器c

reg_d equ 800dh ; 寄存器d

century equ 8032h ; 世纪寄存器。

week_buffer equ 50h ;星期缓冲区。

second_buffer equ 51h ;秒缓冲区。

minute_buffer equ 52h ;分缓冲区。

hour_buffer equ 53h ;时缓冲区。

date_buffer equ 54h ;日缓冲区。

month_buffer equ 55h ;月缓冲区。

year_buffer equ 56h ;年缓冲区。

century_buffer equ 57h ;世纪缓冲区。

z8279 equ 8701h ;8279 状态/命令口地址。

d8279 equ 8700h ;8279 数据口地址。

ledmod equ 00h ;左边输入八位字符显示。

外部译码键扫描方式,双键互锁。

ledfeq equ 2fh ;扫描速率。

ledcls equ 0c1h ;清除显示ram

ledwr0 equ 80h ;设定的将要写入的显示ram地址。

主程序。org 0000h

ljmp start

org 0100h

start:

mov 51h,#00h ;秒。

mov 52h,#00h ;分。

mov 53h,#00h ;时。

mov 54h,#00h ;日。

mov 55h,#00h ;月。

mov sp,#60h

lcall init8279 ;初始化。

lcall writetime ;调用时钟写。

mloop:

lcall readtime ;调用时钟读。

lcall display

lcall delay

ajmp mloop

init82798279初始化子程序。

push dph保存现场。

push dpl

push acc

mov dptr ,#z8279

mov a,#ledmod ;置工作方式。

movx @dptr,a

mov a,#ledfeq ;置键盘扫描速率。

movx @dptr,a

mov a,#ledcls ;清除led 显示。

movx @dptr,a

pop acc恢复现场。

pop dpl

pop dph

ret显示字符子程序。

输入: r4,位置r5,值。

disled: push dph保存现场。

push dpl

push acc

mov a,#ledwr0 ;置显示起始地址。

add a,r4加位置偏移量。

mov dptr,#z8279

movx @dptr,a设定显示位置。

mov dptr,#ledseg ;置显示常数表起始位置。

mov a,r5

movc a,@a+dptr ;查表。

mov dptr,#d8279

movx @dptr,a显示数据。

pop acc恢复现场。

pop dpl

pop dph

retdisplay:

mov a,second_buffer

anl a,#0fh

mov r5,a

mov r4,#

lcall disled显示秒低位。

mov a,second_buffer

swap a

anl a,#0fh

mov r5,a

mov r4,#

lcall disled显示秒高位。

mov r5,#

mov r4,#

lcall disled显示"-"

mov a,minute_buffer

anl a,#0fh

mov r5,a

mov r4,#

lcall disled显示分钟低位。

mov a,minute_buffer

swap a

anl a,#0fh

mov r5,a

mov r4,#

lcall disled显示分钟高位

mov r5,#

mov r4,#

lcall disled显示。

mov a,hour_buffer

anl a,#0fh

mov r5,a

mov r4,#

lcall disled显示小时低位。

mov a,hour_buffer

swap a

anl a,#0fh

mov r5,a

mov r4,#

lcall disled显示小时高位

retledseg: db 3fh,06h,5bh,4fh,66h,6dh,7dh,07h ;'0,1,2,3,4,5,6,7'

db 7fh,6fh,77h,7ch,39h,5eh,79h,71h ;'8,9,a,b,c,d,e,f'

db 40h,00h

单片机课程设计

可变程序控制器是集微机技术 自动化技术 通讯技术于一体的通用工业控制装置。它可靠性强 性能 比高 使用方便,已在工业控制的各个领域里得到了极为广泛的应用,成为实现工业自动化的一种强有力的工具 1 plc的定义有许多种。国际电工委员会 iec 对plc的定义是 可编程控制器是一种数字运算操作的电子系统...

单片机课程设计

目录。内容提要2 关键词2引言3 一 硬件电路设计3 一 电路板原理3 二 电路元器件3 二 软件设计3 一 秒钟设计方案3 二 时钟设计方案4 结语7单片机时钟设计。内容摘要 一 在实验板上用动态扫描显示00 59秒钟,具体要求如下 一 6m晶振 二 l9 l10显示00 59十进制数并循环,间隔...

单片机课程设计

1 选题背景。1.1 家庭智能防盗报警系统设计的背景及目的。随着经济的发展,人们对防盗 防劫 防火保安设备的需求量大大增加。针对偷盗 抢劫 火灾 煤气泄漏等事故进行检测和报警的系统,其需求也越来越高。家居智能是以家为平台,兼备建筑 自动化,智能化于一体的高效 舒适 安全 便利的家居环境。自动化的家居...