《单片机接口设计》课程设计报告

发布 2022-10-06 09:08:28 阅读 9397

《单片机接口设计》

课程设计报告。

专业: 电气工程及其自动化

班级。学号。

姓名。指导教师。

时间: 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....