《单片机接口设计》
课程设计报告。
专业: 电气工程及其自动化
班级。学号。
姓名。指导教师。
时间: 2015.7.6—2015.7.17
一。课程设计目的。
1.加强对所学理论知识的理解,提高综合应用、分析能力。
2.学习并掌握proteus软件的**功能,加深对单片机最小系统的理解。
3.掌握89c51系列单片机开发系统的使用,提高对单片机接口设计的能力。
4.提高汇编程序的设计和调试能力,对实际问题的解决能力。
二。课程设计主要内容。
课程设计题目:时钟,具体要求如下:
1)通过键设置当前时间(时分秒)
2)若是四位显示可通过键切换显示当前时间:时分或分秒。
3)可设定闹钟,到时报警,一个发光管闪烁(1次/秒),有复位键停止报警。
4)可切换显示闹钟时间和当前时间。
5)本机地址为02h,当接到上位机发的02h时,则回发02h
当接到上位机发的aah时,则将当前时间发给上位机。
当收到上位机发的55h时,则修改当前时间(时分秒)
三。硬件电路设计。
1.利用现有的硬件实现时钟功能,画出原理图。
2.在proreus中添加用到的元器件,如下所示。
3.选中器件,单击放到页面;鼠标移到器件连接处即可连线;选中原理图中的器件可以调整方向,右击设置相关属性。
4.原理图。
四。软件流程和程序清单。
1.软件流程。
1)主程序流程图。
2)中断服务程序流程图。
3)显示时间、闹钟子程序流程图。
2.程序清单。
org 0000h
ljmp main
org 000bh
ljmp t0
org 0023h
ljmp rxd
org 0030h
main:clr a
setb ea
setb es
setb et0
mov tmod,#21h
mov th1,#0f3h
mov tl1,#0f3h波特率2400
mov th0,#3ch
mov tl0,#0b0h
mov pcon,a
mov scon,#50h ;串行口方式一,允许串行接收。
setb tr0
setb tr1
clr 20h清除闹钟标志位。
setb p1.7
mov p2,a
mov r2,#05h
mov r5,a
mov r6,#0ah
mov r7,a
mov 30h,a
mov 31h,a
mov 32h,a
mov 40h,a
mov 41h,a
mov 42h,a
noploop:lcall time
lcall time
lcall time键盘扫描周期约135ms
lcall pff
mov a,p1
jb acc.0,cha1
lcall qudou
lcall pff
mov a,p1
jnb acc.0,sttm
cha1:jb acc.1,cha2
lcall qudou
lcall pff
mov a,p1
jnb acc.1,stcl1
cha2:jb acc.2,cha3
lcall qudou
lcall pff
mov a,p1
jnb acc.2,exch1
cha3:jb acc.3,loop
lcall qudou
lcall pff
mov a,p1
jnb acc.3,stop1
ljmp loop
stcl1:ljmp stcl
exch1:ljmp exch
stop1:ljmp stop
sttm:clr tr0设置时间。
lcall time
lcall time
lcall time键盘扫描周期约135ms
lcall pff
mov a,p1
jb acc.0,scha1
lcall qudou
lcall pff
mov a,p1
jb acc.0,scha1
setb tr0
ljmp loop
scha1:jb acc.1,scha2
lcall qudou
lcall pff
mov a,p1
jb acc.1,scha2
inc 32h
mov a,32h
cjne a,#18h,sttm
mov 32h,#00h
ljmp sttm
scha2:jb acc.2,scha3
lcall qudou
lcall pff
mov a,p1
jb acc.2,scha3
inc 31h
mov a,31h
cjne a,#3ch,sttm
mov 31h,#00h
ljmp sttm
scha3:jb acc.3,sttm
lcall qudou
lcall pff
mov a,p1
jb acc.3,sttm
inc 30h
mov a,30h
cjne a,#3ch,sttm
mov 30h,#00h
ljmp sttm
stcl:lcall clock设置闹钟。
lcall clock
lcall clock键盘扫描周期约135ms
lcall pff
mov a,p1
jb acc.0,stcha1
lcall qudou
lcall pff
mov a,p1
jb acc.0,stcha1
ljmp loop
stcha1:jb acc.1,stcha2
lcall qudou
lcall pff
mov a,p1
jb acc.1,stcha2
inc 42h
mov a,42h
cjne a,#18h,stcl
mov 42h,#00h
ljmp stcl
stcha2:jb acc.2,stcha3
lcall qudou
lcall pff
mov a,p1
jb acc.2,stcha3
inc 41h
mov a,41h
cjne a,#3ch,stcl
mov 41h,#00h
ljmp stcl
stcha3:jb acc.3,stcl
lcall qudou
lcall pff
mov a,p1
jb acc.3,stcl
inc 40h
mov a,40h
cjne a,#3ch,stcl
mov 40h,#00h
ljmp stcl
exch:lcall clock ;显示闹钟时间。
lcall clock
lcall clock键盘扫描周期约135ms
lcall pff
mov a,p1
jb acc.2,exch
lcall qudou
lcall pff
mov a,p1
jb acc.2,exch
ljmp loop
stop:setb p1.7闹钟停止。
clr 20h
ljmp loop
t0:mov th0,#3ch定时t0中断服务程序。
mov tl0,#0b0h
inc r5
cjne r5,#14h,tlp
mov r5,#00h
jnb 20h,aaa
cpl p1.7
aaa:inc 30h
mov a,30h
cjne a,#3ch,tlp0
mov 30h,#00h
inc 31h
mov a,31h
cjne a,#3ch,tlp0
mov 31h,#00h
inc 32h
mov a,32h
cjne a,#18h,tlp0
mov 32h,#00h
tlp0:mov a,32h判断闹钟是否到点。
cjne a,42h,tlp
mov a,31h
cjne a,41h,tlp
mov a,30h
cjne a,40h,tlp
clr p1.7
setb 20h
tlp:reti
rxd:mov a,sbuf串行口中断服务程序。
clr ri
cjne a,#02h,rlast
mov sbuf,a
jnb ti,$
clr ti
jnb ri,$
mov a,sbuf
clr ri
cjne a,#0aah,rlast
单片机课程设计设计报告
电子时钟设计。班级 学号 姓名 目录。一 设计目的 3 二 设计过程 3 1.设计原理 4 2.用到的器件 4 3.创新点 5 三 硬件原理设计图 4 接口 43.蜂鸣器 5 4.用户按键 5 四 程序 6 五 参考文献 8 六 设计心得体会 8 1 通过单片机课程设计,熟练掌握c语言的编程方法,将...
单片机课程设计设计报告
设计摘要。在过去,通常情况下实验室是采用指针式万用表测量小幅度直流电压,但是由于指针式的万用表或者电压表用肉眼很难较准确的看出所测量的电压值,导致测量的结果不精确,所以,继续使用指针式电压表已经显得不太方便。而且,随着长时间的使用可能会造成欧姆调零以及机械调零的磨损,这会对数据的准确测量造成很多困难...
单片机课程设计报告
单片机系统课程设计报告。专业 电气技术。学生姓名 朱海李威张杰。学号。指导教师 陈高燕。完成日期 2014 年 7 月 5 日。目录。1 设计任务和性能指标 1 1.1设计任务 1 2 设计方案 1 2.1方案论证 2 2.2总体设计框图 2 3 系统硬件设计 4 3.1红外线解码电路设计 4 3....