单片机课程总结报告

2022-08-07

总结对于个人的成长而言,是我们反思自身、了解自身、明确目标的重要方式,通过编写的总结报告,我们可以在工作回顾中,寻找出自身的工作难点,掌握自身的工作优势,更加明确自身的发展方向。今天小编给大家找来了《单片机课程总结报告》,供大家参考,更多范文可通过本站顶部搜索您需要的内容。

第一篇:单片机课程总结报告

单片机课程设计报告

《单片机原理与接口技术》

课程设计报告

设计题目: 基于80C51单片机系统实验板的制作

与程序设计

业:应用电子专业

级: 11应电班

名: 丁文俊

指导教师: 余静老师

2013 年 5 月20 日

1 前 言………………………………………………………………… 2 课程设计的目的及要求…………………………………………… 3 硬件电路设计……………………………………………………… 4 软件程序设计…………………………………………………… 5 小结………………………………………………………………

参考文献 附录A 电路总图 附录B 程序清单

基于80C51单片机系统实验板的制作与程序设计

1. 前言

2、课程设计的目的及要求 2.1课程设计目的

2.2课程设计要求

3、系统主要硬件电路设计

3.1 STC89C51单片机简介

MCS-51是美国Intel公司生产的一系列单片机的总称,包括多个品种,如80

31、80

51、87

51、80

32、80C

52、8752等。其中8051是最典型的产品,其他单片机都是在其基础上进行功能增减而来的,所以人们习惯于用8051来称呼MCS-51系列单片机。Intel公司将MCS-51的核心技术授权给了多家公司,这些厂家生产的单片机在功能上或多或少有些改变,以满足不同的需求,其中美国的ATMEL公司生产的AT89C51是曾经在我国非常流行的51单片机。当前AT89C51/52已经停产,其替代产品为AT89S51/52。深圳宏晶公司出品的STC89C51可以直接代替传统的AT89S51和AT89C51芯片,也可以代替菲利普、华帮等其他公司的89C51,由于时代的发展,工艺的进步,STC89C51功能更强,寿命更长(4K字节Flash存储器、128字节片内RAM、支持ISP下载编程)

图2.1 STC89c51单片机

单片机的时钟信号用来提供单片机片内各种微操作的时间基准,时钟信号通常用两种电路形式得到:内部振荡和外部振荡。MCS-51单片机内部有一个用于构成振荡器的高增益反向放大器,引脚XTALl和XTAL2分别是此放大电器的输入端和输出端,由于采用内部方式时,电路简单,所得的时钟信号比较稳定,实际使用中常采用这种方式,如图2-2所示在其外接晶体振荡器(简称晶振)或陶瓷谐振器就构成了内部振荡方式,片内高增益反向放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起可构成一个自激振荡器并产生振荡时钟脉冲。

图2-2中外接晶体以及电容C2和C1构成并联谐振电路,它们起稳定振荡频率、快速起振的作用,其值均为30P左右,晶振频率选11.0592MHz。

为了初始化单片机内部的某些特殊功能寄存器,必须采用复位的方式,复位后可使CPU及系统各部件处于确定的初始状态,并从初始状态开始正常工作。单片机的复位是靠外电路来实现的,在正常运行情况下,只要RST引脚上出现两个机器周期时间以上的高电平,即可引起系统复位,但如果RST引脚上持续为高电平,单片机就处于循环复位状态。复位后系统将输入/输出(1/0)端口寄存器置为FFH,堆栈指针SP置为07H, SBUF内置为不定值,其余的寄存器全部清0,内部RAM的状态不受复位的影响,在系统上电时RAM的内容是不定的。复位操作有两种情况,即上电复位和手动(开关)复位。本系统采用上电复位方式。图2-2中R9和Cl组成上电复位电路,其值R取为10K, C取为10μF. 4

图2.2 最小系统结构图

3.2 电平转换电路 3.3

4、软件程序设计

5、小结

参考文献

[1] 张伟,《单片机原理及应用》,机械工业出版社,2005(这是格式)

附录

江西工业职业技术学院电子与信息工程系

课程设计指导教师评语

班级:

学生姓名:

学号:

指导教师评语(包括工作态度,遵守纪律;基本理论、知识、技能;独立工作能力和分析解决问题的能力;完成任务情况及水平):

学生成绩(五级分制):

指导教师签名:

第二篇:单片机课程设计报告

 课程名称:单片机原理及接口课程设计

 题目:基于

 学院:电气信息学院

 专业班级:测控技术与仪器

 姓名:江让

 学号:

 指导老师:刘升老师

 时间:

C51单片机的ADC0809数模转换103班1090640772013/1/16

第三篇:单片机课程设计报告

专业:电气工程及其自动化 班级:电0901-4班 姓名:代红新 学号:20092444 指导老师:石彦辉

电气与电子工程学院

2012/6/22

一、 设计题目:电子时钟

二、 设计要求:

1.通过键设置当前时间(时分秒) 2.可切换显示年月日

3.可设定闹钟,到时报警,一个发光管闪烁(1次/秒),有复位键停止报警 4.可切换显示闹钟时间和当前时间

5.本机地址为02H,当接到上位机发的02H时,则回发02H 当接到上位机发的AAH时,则将当前时间发给上位机 当收到上位机发的55H时,则修改当前时间(时分秒)

三、 设计思路

经过思考,该电子时钟试验须有六个八段数码管,分别指示时分秒,切换指示年月日,由指示灯指示闹钟提醒,以及上位机对下位机的控制,更改时间。

硬件设计思路:下位机显示时间和日期,以及闹钟指示灯,时间日期的更改由两个中断实现,一个位选,一个加一。上位机显示发送的数据和接受显示,仅由一个外部中断来切换方式。

软件设计思路:通过之前的单片机实验的练习,加上对本实验的理解,知道该由数码管显示时间,日期,进位转换,定时器计数器的应用,将数字转换为24进制,60进制,30进制以及365进制,并通过位选和片选实现显示。

四、 硬件设计

五、 软件设计

(一) 上位机编程设计

SOK EQU 24H ;fasongdezhonglei HOUR EQU 25H ;xiangcongjifade hour MIN EQU 26H

;xiangcongjifade min SOK1 EQU 27H

;weixuanze HOUR1 EQU 28H

;zhujijieshoude hour MIN1 EQU 29H

;zhujijieshoude min ORG 0000H AJMP MAIN ORG 0003H AJMP X0IN ;zhongleigaibian ORG 000BH AJMP T0IN

; zhujixiugaicongji ORG 0013H AJMP X1IN

;weixuanze

ORG 0030H MAIN:MOV SOK,#01H

MOV HOUR,#00H

MOV MIN,#00H

MOV SOK1,#01H

MOV HOUR1,#00H

MOV MIN1,#00H

MOV 21H,#02H

MOV 22H,#0AAH

MOV 23H,#55H

MOV TMOD,#26H

MOV TH1,#0FAH

MOV TL1,#0FAH

MOV TH0,#0FFH

MOV TL0,#0FFH

MOV PCON,#00H

MOV SCON,#50H

SETB PX0

CLR PS

CLR PT1

CLR PT0

CLR PX1

CLR ET1

SETB TR1

CLR ES

CLR TI

SETB IT0

SETB IT1

SETB EX0

SETB EX1

SETB ET0

SETB TR0

SETB EA ccc:MOV A,SOK

CJNE A,#1,aaa

LCALL DISP1

SJMP ccc aaa:MOV A,SOK

CJNE A,#2,eee

LCALL DISP2

SJMP ccc

eee:MOV DPTR,#8004H

MOV A,#6DH

MOVX @DPTR,A

MOV A,#02H

MOV DPTR,#8002H

MOVX @DPTR,A

LCALL DEL

MOV DPTR,#8004H

MOV A,#6DH

MOVX @DPTR,A

MOV A,#01H

MOV DPTR,#8002H

MOVX @DPTR,A

LCALL DEL

LJMP ccc

;XIANSHI ;WAIT3:JNB TI,WAIT3

; CLR TI

;cc:MOV A,SOK

; CJNE A,#03H ,aa

; MOV A,23H

; MOV SBUF,A

;WAIT13:JNB TI,WAIT13

; CLR TI

X0IN:INC SOK

MOV A,SOK

CJNE A,#04H,dd

MOV SOK,#01H

SJMP ddd

dd:MOV A,SOK

CJNE A,#02H,qqq

MOV A,#0AAH

MOV SBUF,A WAITa:JNB TI,WAITa

CLR TI

WAIT4:JNB RI,WAIT4

CLR RI

MOV A,SBUF

MOV MIN1,A WAIT5:JNB RI,WAIT5

CLR RI

MOV A,SBUF

MOV HOUR1,A ddd: RETI qqq:MOV A,#55H

MOV SBUF,A WAITB:JNB TI,WAITB

CLR TI

RETI X1IN:INC SOK1

MOV A,SOK1

CJNE A,#03H,ee

MOV SOK1,#01H

ee:RETI T0IN:MOV A,SOK1

CJNE A,#1,ff

MOV A,SOK1

MOV SBUF,A WAIT6:JNB TI,WAIT6

CLR TI

MOV A,HOUR

CJNE A,#23,hh

MOV HOUR,#00H

MOV A,HOUR

MOV SBUF,A WAIT7:JNB TI,WAIT7

CLR TI

RETI

hh:INC HOUR

MOV A,HOUR

MOV SBUF,A WAIT8:JNB TI,WAIT8

CLR TI

RETI

ff: MOV A,SOK1

MOV SBUF,A WAIT9:JNB TI,WAIT9

CLR TI

MOV A,MIN

CJNE A,#59,ii

MOV MIN,#00H

MOV A,MIN

MOV SBUF,A WAIT10:JNB TI,WAIT10

CLR TI

RETI

ii:INC MIN

MOV A,MIN

MOV SBUF,A WAIT11:JNB TI,WAIT11

CLR TI

RETI DISP1:MOV DPTR,#8004H

MOV A,#3FH

MOVX @DPTR,A

MOV A,#04H

MOV DPTR,#8002H

MOVX @DPTR,A

LCALL DEL

MOV DPTR,#8004H

MOV A,#5BH

MOVX @DPTR,A

MOV A,#02H

MOV DPTR,#8002H

MOVX @DPTR,A

LCALL DEL

MOV DPTR,#8004H

MOV A,#76H

MOVX @DPTR,A

MOV A,#01H

MOV DPTR,#8002H

MOVX @DPTR,A

LCALL DEL

MOV DPTR,#8004H

MOV A,#3FH

MOVX @DPTR,A

MOV A,#20H

MOV DPTR,#8002H

MOVX @DPTR,A

LCALL DEL

MOV DPTR,#8004H

MOV A,#5BH

MOVX @DPTR,A

MOV A,#10H

MOV DPTR,#8002H

MOVX @DPTR,A

LCALL DEL

MOV DPTR,#8004H

MOV A,#76H

MOVX @DPTR,A

MOV A,#08H

MOV DPTR,#8002H

MOVX @DPTR,A

LCALL DEL

RET

DISP2:MOV DPTR,#8004H

MOV A,#77H

MOVX @DPTR,A

MOV A,#02H

MOV DPTR,#8002H

MOVX @DPTR,A

LCALL DEL

MOV DPTR,#8004H

MOV A,#77H

MOVX @DPTR,A

MOV A,#01H

MOV DPTR,#8002H

MOVX @DPTR,A

LCALL DEL

MOV DPTR,#TAB

MOV A,HOUR1

MOV B,#10

DIV AB

MOVC A,@A+DPTR

MOV 40H,A

MOV A,B

MOVC A,@A+DPTR

MOV 41H,A

MOV A,MIN1

MOV B,#10

DIV AB

MOVC A,@A+DPTR

MOV 42H,A

MOV A,B

MOVC A,@A+DPTR

MOV 43H,A

MOV DPTR,#8004H

MOV A,40H

MOVX @DPTR,A

MOV A,#20H

MOV DPTR,#8002H

MOVX @DPTR,A

LCALL DEL

MOV DPTR,#8004H

MOV A,41H

MOVX @DPTR,A

MOV A,#10H

MOV DPTR,#8002H

MOVX @DPTR,A (二) 下位机编程设计

SOK2 BIT 20H.0 ;秒标志位 SOK5 BIT 20H ;秒标志位

SEC EQU 30H

;秒

MIN EQU 31H

;分

HOUR EQU 32H

;时

DAY EQU 33H

;天

MON EQU 34H

;月

YEAR EQU 35H

;年

SEC1 EQU 36H

;闹钟的秒

MIN1 EQU 37H

;闹钟的分

HOUR1 EQU 38H ;闹钟的时

SOK1 EQU 57H

;模式切换

SOK3 EQU 58H ; 位选择标志

SOK4 EQU 59H ;模式表示

ORG 0000H

SJMP MAIN

ORG 0003H

LJMP X0IN

ORG 000BH

LJMP T0IN

ORG 0013H

LCALL DEL

MOV DPTR,#8004H

MOV A,42H

MOVX @DPTR,A

MOV A,#08H

MOV DPTR,#8002H

MOVX @DPTR,A

LCALL DEL

MOV DPTR,#8004H

MOV A,43H

MOVX @DPTR,A

MOV A,#04H

MOV DPTR,#8002H

MOVX @DPTR,A

LCALL DEL

RET

;XIANSHI

DEL:MOV R1,#750

zzz:DJNZ R1,zzz

RET

TAB:DB 3FH 06H 5BH 4FH 66H 6DH 7DH 07H 7FH 6FH 77H 7CH

END

LJMP X1IN

ORG 0023H

LJMP ESIN

ORG 0070H MAIN:MOV SOK1,#00H

MOV SOK3,#01H

MOV SEC,#00H

MOV MIN,#11

MOV HOUR,#11

MOV DAY,#21

MOV MON,#06

MOV YEAR,#12

MOV SEC1,#00H

MOV MIN1,#00H

MOV HOUR1,#00H

MOV R0,#10

MOV TMOD,#21H

MOV TL1,#0FAH

MOV TH1,#0FAH

MOV TH0,#3CH

MOV TL0,#0B0H

MOV PCON,#00H

MOV SCON,#50H

CLR TI

SETB ES

SETB PS

CLR PT1

CLR PX1

CLR PT0

CLR PT1

SETB P1.1

SETB EX0

SETB EX1

SETB IT0

SETB IT1

SETB ET0

CLR ET1

SETB TR0

SETB TR1

SETB EA

aa:JNB SOK2,ff

CLR SOK2

MOV A,SEC

CJNE A,#59,gg

MOV SEC,#00H

MOV A,MIN

CJNE A,#59,hh

MOV MIN,#00H

MOV A,HOUR

CJNE A,#23,ii

MOV HOUR,#00H

MOV A,DAY

CJNE A,#30,jj

MOV DAY,#01

MOV A,MON

CJNE A,#12,kk

MOV MON,#01

INC YEAR

gg:INC SEC

AJMP ff

hh:INC MIN

AJMP ff

ii:INC HOUR

AJMP ff

jj:INC DAY

AJMP ff

kk:INC MON

AJMP ff

ff:MOV A,HOUR

CJNE A,HOUR1,zz

MOV A,MIN

CJNE A,MIN1,zz

JNB SOK5,xx

CLR SOK5

SETB P1.0

LJMP zz

xx:CLR P1.0

zz:MOV A,SOK1

CJNE A,#00H,bb

AJMP DISP1

bb:CJNE A,#01,cc

AJMP DISP2

cc:AJMP DISP3

DISP1:MOV SOK4,#01H

MOV DPTR,#TAB

MOV A,DAY

MOV B,#10

DIV AB

MOVC A,@A+DPTR

MOV 45H,A

MOV A,B

MOVC A,@A+DPTR

MOV 46H,A

MOV A,MON

MOV B,#10

DIV AB

MOVC A,@A+DPTR

MOV 47H,A

MOV A,B

MOVC A,@A+DPTR

MOV 48H,A

MOV A,YEAR

MOV B,#10

DIV AB

MOVC A,@A+DPTR

MOV 49H,A

MOV A,B

MOVC A,@A+DPTR

MOV 50H,A

MOV DPTR,#8004H

MOV A,49H

MOVX @DPTR,A

MOV A,#20H

MOV DPTR,#8002H

MOVX @DPTR,A

LCALL DEL

LJMP aa

DISP2:MOV SOK4,#02

MOV DPTR,#TAB

MOV A,HOUR

MOV B,#10

DIV AB

MOVC A,@A+DPTR

MOV 43H,A

LCALL DEL

MOV DPTR,#8004H

MOV A,50H

MOVX @DPTR,A

MOV A,#10H

MOV DPTR,#8002H

MOVX @DPTR,A

LCALL DEL

MOV DPTR,#8004H

MOV A,47H

MOVX @DPTR,A

MOV A,#08H

MOV DPTR,#8002H

MOVX @DPTR,A

LCALL DEL

MOV DPTR,#8004H

MOV A,48H

MOVX @DPTR,A

MOV A,#04H

MOV DPTR,#8002H

MOVX @DPTR,A

LCALL DEL

MOV DPTR,#8004H

MOV A,45H

MOVX @DPTR,A

MOV A,#02H

MOV DPTR,#8002H

MOVX @DPTR,A

LCALL DEL

MOV DPTR,#8004H

MOV A,46H

MOVX @DPTR,A

MOV A,#01H

MOV DPTR,#8002H

MOVX @DPTR,A

MOV A,B

MOVC A,@A+DPTR MOV 44H,A MOV A,MIN MOV B,#10 DIV AB

MOVC A,@A+DPTR MOV 41H,A MOV A,B

MOVC A,@A+DPTR MOV 42H,A MOV A,SEC MOV B,#10 DIV AB

MOVC A,@A+DPTR MOV 39H,A MOV A,B

MOVC A,@A+DPTR MOV 40H,A MOV DPTR,#8004H MOV A,43H MOVX @DPTR,A MOV A,#20H MOV DPTR,#8002H MOVX @DPTR,A LCALL DEL MOV DPTR,#8004H MOV A,44H MOVX @DPTR,A MOV A,#10H MOV DPTR,#8002H MOVX @DPTR,A LCALL DEL MOV DPTR,#8004H MOV A,41H

MOVX @DPTR,A

MOV A,#08H

MOV DPTR,#8002H

MOVX @DPTR,A

LCALL DEL

MOV DPTR,#8004H

MOV A,42H

MOVX @DPTR,A

MOV A,#04H

MOV 54H,A

MOV A,SEC1

MOV B,#10

DIV AB

MOVC A,@A+DPTR

MOV 51H,A

MOV A,B

MOVC A,@A+DPTR

MOV 52H,A

MOV DPTR,#8002H

MOVX @DPTR,A

LCALL DEL

MOV DPTR,#8004H

MOV A,39H

MOVX @DPTR,A

MOV A,#02H

MOV DPTR,#8002H

MOVX @DPTR,A

LCALL DEL

MOV DPTR,#8004H

MOV A,40H

MOVX @DPTR,A

MOV A,#01H

MOV DPTR,#8002H

MOVX @DPTR,A

LCALL DEL

LJMP aa

DISP3:MOV SOK4,#03

MOV DPTR,#TAB

MOV A,HOUR1

MOV B,#10

DIV AB

MOVC A,@A+DPTR

MOV 55H,A

MOV A,B

MOVC A,@A+DPTR

MOV 56H,A

MOV A,MIN1

MOV B,#10

DIV AB

MOVC A,@A+DPTR

MOV 53H,A

MOV A,B

MOVC A,@A+DPTR

MOV DPTR,#8004H MOV A,55H MOVX @DPTR,A MOV A,#20H MOV DPTR,#8002H MOVX @DPTR,A LCALL DEL MOV DPTR,#8004H MOV A,56H MOVX @DPTR,A MOV A,#10H MOV DPTR,#8002H MOVX @DPTR,A LCALL DEL MOV DPTR,#8004H MOV A,53H MOVX @DPTR,A MOV A,#08H MOV DPTR,#8002H MOVX @DPTR,A LCALL DEL MOV DPTR,#8004H MOV A,54H MOVX @DPTR,A MOV A,#04H MOV DPTR,#8002H MOVX @DPTR,A LCALL DEL MOV DPTR,#8004H MOV A,51H MOVX @DPTR,A MOV A,#02H MOV DPTR,#8002H MOVX @DPTR,A LCALL DEL

MOV DPTR,#8004H

MOV A,52H

MOVX @DPTR,A

MOV A,#01H

MOV DPTR,#8002H

MOVX @DPTR,A

LCALL DEL

LJMP aa

X0IN:INC SOK1

CJNE A,#12,uu

MOV MON,#1

RETI

uu:INC MON

RETI

tt:INC YEAR

RETI

vv:MOV A,SOK4

CJNE A,#02H,ww

MOV A,SOK1

CJNE A,#3,dd

MOV SOK1,#00H

dd:RETI

T0IN:MOV TH0,#3CH

MOV TL0,#0B0H

DJNZ R0,ee

SETB SOK2

SETB SOK5

MOV R0,#10

ee:RETI

X1IN:JNB P1.1,kkk

MOV A,HOUR

CJNE A,HOUR1,aaa

MOV A,MIN

CJNE A,MIN1,aaa

INC MIN

aaa:INC SOK3

MOV A,SOK3

CJNE A,#4,ll

MOV SOK3,#01H

ll:RETI

kkk:MOV A,SOK4

CJNE A,#01H,vv

MOV A,SOK3

CJNE A,#01H,www

MOV A,DAY

CJNE A,#30,ss

MOV DAY,#1

RETI

ss:INC DAY

RETI

www:MOV A,SOK3

CJNE A,#2,tt

MOV A,MON

MOV A,SOK3

CJNE A,#1,nn

MOV A,SEC

CJNE A,#59,mm

MOV SEC,#00H

RETI mm:INC SEC

RETI nn:MOV A,SOK3

CJNE A,#2,pp

MOV A,MIN

CJNE A,#59,oo

MOV MIN,#00H

RETI oo:INC MIN

RETI pp:MOV A,HOUR

CJNE A,#23,qq

MOV HOUR,#00H

RETI qq:INC HOUR

RETI ww:MOV A,SOK4

CJNE A,#03H,bbb

MOV A,SOK3

CJNE A,#1,ccc

MOV A,SEC1

CJNE A,#59,ddd

MOV SEC1,#00H

RETI ddd:INC SEC1

RETI ccc:MOV A,SOK3

CJNE A,#2,eee

MOV A,MIN1

CJNE A,#59,ggg

MOV MIN1,#00H

RETI

ggg:INC MIN1

RETI

eee:MOV A,HOUR1

CJNE A,#23,fff

MOV HOUR1,#00H

RETI

fff:INC HOUR1

bbb:RETI

ESIN: CLR RI ;很容易被忽略

MOV A,SBUF

CJNE A,#02H,aaaa

MOV A,#02H

MOV SBUF,A WAIT1:JNB TI,WAIT1

CLR TI

RETI aaaa:

CJNE A,#0AAH,bbbb

MOV A,MIN

MOV SBUF,A

WAIT2:JNB TI,WAIT2

CLR TI

MOV A,HOUR

MOV SBUF,A

WAIT3:JNB TI,WAIT3

CLR TI

RETI

bbbb: CPL P1.7

;WAIT7:JNB RI,WAIT7

;

CLR RI

;

MOV A,SBUF

;

CJNE A,#01H,cccc

;WAIT4:JNB RI,WAIT4

;

CLR RI

;

MOV A,SBUF

;

MOV HOUR,A

;cccc: NOP

; WAIT5:JNB RI,WAIT5

;

CLR RI

;

MOV A,SBUF

; MOV MIN,A

RETI

DEL:MOV R1,#750

zzz:DJNZ R1,zzz

RET

TAB:DB 3FH 06H 5BH 4FH 66H 6DH 7DH 07H 7FH 6FH 77H 7CH

END

六、 设计总结。

单片机已渗透到我们生活的各个领域,几乎很难找到没有单片机足迹的领域。导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说全自动控制领域的机器人、智能仪表、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的工程师和科学家。科技越发达,智能化的东西就越多。因此学习单片机是社会发展的必然需求。

为期十天的单片机课程设计结束了,回想起这十天的设计过程,有紧张激烈的构思讨论过程,有忙碌甚至绞尽脑汁的编程调试阶段。有久久实现不了的无奈,也有灵机一动的兴奋,更有老师的肯定和鼓励。

几天的单片机课程设计,较之前的实验上机实现了更多的功能,使得单片机实力有更充分的发挥,硬件设计还算简单,但是其编程技巧有了更深更高的要求,软件编程是本课程设计的难点和重点,通过对题目要求的仔细研究,外加之前实验的经验,加上老师的悉心指点,并提出了宝贵的意见,我们的“时钟“功能得以实现。在这里,我必须要感谢老师的悉心指导,同学们的互相帮助,谢谢你们!

第四篇:51单片机课程设计报告

学院:

专业班级:姓名:

指导教师:

设计时间:

51单片机课程设计

一、设计任务与要求

1. 任务:制作并调试51单片机学习板 2. 要求:

(1) 了解并能识别学习板上的各种元器件,会读元器件标示; (2) 会看电路原理图;

(3) 制作51单片机学习板;

(4) 学会使用Keil C软件下载调试程序;

用调试程序将51单片机学习板调试成功。

二、总原理图及元器件清单

1.总原理图

要求:用铅笔在A4纸整页绘制

2.元件清单

三、模块电路分析

1. 最小系统:

单片机最小系统电路分为振荡电路和复位电路,

振荡电路选用 12MHz 高精度晶振, 振荡电容选用 22p和30p 独石电容;

图 1图

2复位电路使用 RC 电路,使用普通的电解电容与金属膜电阻即可;

3当单片机上电瞬间由于电容电压不能突变会使电容两边的电位相同,此时RST为高电平,之后随着时间推移电源负极通过电阻对电容放电,放完电时RST为低电平。正常工作为低电平,高电平复位。 (分析振荡电路:测振荡频率; 分析复位电路:高或低电平复位?)

2. 显示模块:

分析发光二极管显示电路:

4???

分析数码管显示电路

5???

要求:铅笔绘制模块电路,并分析电路。请自己查询相关电路相关知识,再对应本学

习板分析。

四、硬件调试

1、是否短路

用万用表检查P2两端是短路。电阻为0,则短路,电阻为一适值,电路正常。

2、焊接顺序

焊接的顺序很重要,按功能划分的器件进行焊接,顺序是功能部件的焊接--调试--另一功能部件的焊接,这样容易找到问题的所在。

3、器件功能

1)检查原理图连接是否正确

2)检查原理图与PCB图是否一致

3)检查原理图与器件的DATASHEET上引脚是否一致 4)用万用表检查是否有虚焊,引脚短路现象

5)查询器件的DATASHEET,分析一下时序是否一致,同时分析一下命令字是否正确

6)通过示波器对芯片各个引脚进行检查,检查地址线是否有信号的

7)飞线。用别的的口线进行控制,看看能不能对其进行正常操作,多试验,才能找到问题出现在什么地方。

1、详细描述硬件安装过程中出现的故障现象,并作故障分析,及解决方法。

六、软件调试

1、设置硬件仿真环境

单片机应用系统程序的编译和仿真在KeilμVision环境下进行,在调试程序之前,需要对工程进行Debug设置,选择软件仿真或硬件仿真。软件仿真使用计算机来模拟程序的运行,不需要建立硬件平台就可以快速得到某些运行结果;硬件仿真是最准确的仿真方法,必须建立硬件平台,通过PC机→硬件仿真器→用户目标系统进行系统调试。采用硬件仿真的方法,硬件平台即为带有图1所示接口电路的单片机应用系统,设置硬件仿真环境的具体操作步骤如下:

首先,点击所建工程:Project菜单中的Options for Target„Targer 1‟,出现工程的配置窗口,点击Debug设置,选择KeilMcmitor-51 Driver,具体参数设置如图6所示。

图 6

然后,设置仿真器参数。建议波特率设置范围300~38 400。为避免程序中的中断和Keil硬件仿真环境中的中断互相冲突,不选择“Stop ProgramExecution with SerialInterrupt”。仿真器参数的设置如图7所示。

图7

完成51单片机在Keil μVision环境中的硬件仿真环境设置后,可以进行程序的调试仿真。

2、调试仿真

1) 导入测试代码:文件→打开→key and display.Uv2 2) 重建全部工程:工程→重建全部目标文件

重建结果为,“DA_5615” – 0 Error(s), 0 Warning(s). 3) 调试:调试→Start/Stop Debug session(Ctrl + F5)

调试结果为:Connected to Monitor_51 V3.

4Load “C:......DA_56

511、详细描述软件调试步骤。及各模块调试结果。

2、详细描述调试过程中出现的故障现象,并作故障分析,及解决方法

七、心得

自己写啦~~

第五篇:单片机课程实习报告

单片机控制的循环彩灯控制系统的设计

一、实习目的 《单片机原理与接口技术》课程实习安排在该课程理论教学结束后进行。其目的是通过实习,使学生进一步弄懂所学到的课本知识,巩固和深化对单片机的结构、指令系统、中断系统、键盘/显示系统、接口技术、系统扩展、定时/计数控制、程序设计、应用开发等基本理论知识的理解,提高单片机应用技术的实践操作技能,掌握单片机应用系统设计、研制方面的一般方法,培养利用单片机进行科技革新、开发和创新的基本能力、为毕业后从事和单片机相关的工作打下一定的基础。

二、实习内容要求 要求能输出4种花型,并能由人工进行花型的切换。可以使用按键,也可以使用波动1)开关来实现切换,方法不限。 参考花型: (1) 使彩灯从右到左逐一循环点亮。 (2) 使彩灯交替闪烁。 (3) 使彩灯从左到右逐一点亮,当全部点亮后同时闪烁一次。 (4) 使彩灯从两边到中间顺序点亮,直至全部点亮;再将彩灯从中间到两边熄灭,直至全部熄灭。 2)循环彩灯的循环速度可调。 按键要求: (1)启动/暂停。按动一次启动,再按一次暂停。是一个双态转换键。 (2)花型变化。按一次,立即停止当前花型的显示,转换为下一种花型。4种花型可以循环切换。 (3)速度+。按键一次,速度略加快一点。 (4)速度-。按键一次,速度略减慢一点。 (5)在LED显示器上显示相应的花型号。 利用TDN86/51二合一微机实验教学系统设计一个用8051单片机控制的循环彩灯控制系统。

三、程序设计

1、程序分模块设计 1) 基本程序模块:延时程序、设置按键处理程序、主程序初始化及初值设定 2)LED控制程序

3)取消按键抖动程序 4)控制程序

2、设计流程图

开始

字型码赋值 8155初始化字位码初始值 总控制开关 字位码 C口 花型控制开关 显示数据

查表字形码

C口 花型 显示字形 显示 选择花型 结束

调速 P3.4=0? 否 P3.2=1? 是 否 是 P3.3=1? 加速 P3.1=0? P3.0=0? 是 否 是 否 减速 00 01 10 11 花型1 花型2 花型3 花型4

3、总体设计

充分利用TDN86/51二合一微机实验教学系统的硬件资源来实现循环灯的功能,因此: (1) 利用8051的P1端口接发光二极管,以模拟彩灯控制。 (2)利用8051的P3端口接拨动开关;利用拨动开关提供逻辑0和逻辑1,模拟按键操作,以实现4种花型之间的切换、加快循环速度、减慢循环速度以及暂停循环灯循环等操作,具体定义如表1.1和表1.2所示。 表1.1 拨动开关与对应的花型

K1 K2 花型 0 0 花型1 0 1 花型2 1 0 花型3 1 1 花型4 表1.2 拨动开关功能表 K3 K4 K5 功能 功能 功能 0 0 0 加速无效 减速无效 暂停 1 1 1 加速 减速 启动 (3)8051通过8155对LED显示器控制显示相应的花型编号。 (4)利用软件子程序或单片机内部的定时/计数器实现定时功能,以模拟循环速度的基准值。

4、设计程序如下: ORG 0000H SETB ET0 LJMP MAIN SETB EX0 ORG 0003H SETB ET1 LJMP JIAN SETB EX1 ORG 0013H SETB EA LJMP JIA LOOP:LCALL KEY ORG 1000H LJMP

LOOP MAIN: MOV

SP, #60H JIAN:JNB P3.2,$ MOV 20H,#8 INC 20H MOV P1,#0FFH INC 20H

MOV

A,20H JIA: JNB

P3.3,$

CJNE A,#14,YY DEC 20H MOV A,#14 DEC 20H YY: MOV 20H,A MOV A,20H RETI JNZ YY MOV A,#02 MOV DPTR, #SEGTAB MOV 20H,A MOVC

A, @A+DPTR

RETI MOV

DPTR, #8002H KEY:MOV A,P3 MOVX @DPTR, A ANL A,#03H MOV A, R2 MOV 19H,A MOV DPTR, #8001H CJNE A,#00H,L1 MOVX @DPTR, A LJMP LP0 MOV R3, #00H L1: CJNE A,#01H,L2 DISP3: DJNZ R3, DISP3 LJMP LP1 INC R0 L2: CJNE A,#02H,L3 RR A LJMP LP2 MOV R2, A L3: LJMP LP3 JB ACC.7, DISP1 DISP: MOV A,#03H RET MOV DPTR,#8000H PUTT: MOV R1,A MOVX @DPTR,A ANL A, #0FH MOV R0,#4FH MOV @R0, A MOV A,27H RET ACALL PUTT LP0: MOV 27H, #01H MOV R0,#4FH LCALL DISP MOV R2,#0FEH MOV DPTR, #TABLE DISP1: MOV DPTR,#8002H MOV R4, #09 MOV A,#00H L6:MOV A, #09 MOVX @DPTR,A SUBB A, R4 MOV A,@R0 LCALL XX

DJNZ R4, L6 MOV A, #09H RET LCALL XX LP1: MOV 27H, #02H MOV A,#10 LCALL DISP LCALL XX MOV DPTR, #TABLE RET LP2: MOV 27H, #03H CJNE A , 19H, PP LCALL DISP MOV R2, 20H MOV DPTR, #TABLE D1:MOV R3, #30 MOV R5, #11 D2:MOV R1, #120 L7: MOV A, #22 DJNZ R1, $ SUBB A, R5 DJNZ R3, D2 LCALL XX DJNZ R2, D1 DJNZ R5, L7 RET RET PP:LJMP LOOP LP3:MOV 27H, #04H SEGTAB:

LCALL

DISP DB 3FH,06H,5BH,4FH,66H

MOV DPTR, #TABLE TABLE: MOV R6, #09 DB 0FFH L8:MOV A, #30 DB 0FEH ,0FDH ,0FBH ,0F7H ,0EFH ,0DFH ,0B SUBB A, R6 FH ,07FH

LCALL

XX

DB 0AAH,55H DJNZ

R6, L8

DB

RET 7FH,3FH,1FH,0FH,07H,03H,01H,00H,0FFH, 00H XX: MOVC A, @A+DPTR

DB

MOV

P1, A 7EH,3CH,18H,00H,18H,3CH,7EH,0FFH LCALL DEL1S DB 00H RET END DEL1S: JNB P3.4, $ MOV A, P3 ANL A, #03H

四、软、硬件调试 将程序装载进MD51,用U命令调试检查有没有错误,生成HEX文件,装载进8031内,装载成功后,输入G=0000按回车运行,看LED数码显示器显示花形号,二极管按花型的设计亮起。没有装载成功按复位键重装。

五、设计仿真图

六、实习总结与心得 通过这次的实习设计使我认识到我对单片机方面的知识学习得不够透彻,对书本上的很多知识还不能灵活的运用,有很多我们必须的知识没有掌握,还需要在以后的学习中弥补所缺失的知识。了解和掌握了一些编程思想和对I/O口的使用。 本次实习的设计是以单片机8051为核心,结合相关的元器件(共阴极LED数码显示器、通用I/O接口芯片8155等),再加上装载设计的汇编程序,以达到LED二极管实现多种花样彩灯的功能及实习设计要求的功能。在实习准备前期,对编程设计不懂,就查阅了很多有关资料,最后还是没能解决实习要求控制彩灯“加减速”的功能,仿真图及程序见附页。 实习的时候,“加减速”程序不符合要求,就拿其他程序进行调试,在实习调试的过程

中,遇到很多困难,插线没插好,导致“加减速”按键没能正常工作,还有就是数码管没能正常显示相应花样样式以及运行一段时间后会卡机;最后卡机问题还是没能解决。 最后就是觉得自己对本次实习的态度不够认真。 附页:

1、设计准备阶段仿真图:

2、设计程序: ORG 0030H JNB P3.2,STAR3 MOV A,#03H LJMP STAR4 MOV DPTR,#8000H STAR0:JNB P3.2,STAR1

MOVX @DPTR,A

SJMP STAR2 MOV R5,#7FH STAR1:MOV R0,A MOV R3,#00H MOV A,#00H MOV R2,#0FEH MOV DPTR,#TAB MOV A,#0FEH MOVC A,@A+DPTR LOOP:JNB P3.1,STAR0 MOV DPTR,#8002H

MOVX @DPTR,A MOVX @DPTR,A MOV R2,#0FEH MOV A,R0 MOV A,R2 MOV P1,A MOV DPTR,#8001H JB P3.5,$ JNB P3.3,NEXT0 RR A LCALL DELAY SWAP A RL A

SJMP LOOP

SJMP LOOP NEXT2:JNB P3.4,NEXT3 NEXT0:JNB P3.4,NEXT1 LCALL DELAY LCALL DELAY1 LCALL DELAY1 RL A RR A SJMP LOOP SWAP A NEXT1:LCALL DELAY SJMP LOOP LCALL DELAY NEXT3:LCALL DELAY RL A LCALL DELAY SJMP LOOP RR A STAR2:MOV R0,A SWAP A MOV A,#01H

LJMP LOOP

MOV DPTR,#TAB STAR3:MOV A,#02H MOVC A,@A+DPTR MOV DPTR,#TAB MOV DPTR,#8002H MOVC A,@A+DPTR MOVX @DPTR,A MOV DPTR,#8002H

MOV A,R2

MOVX @DPTR,A

MOV DPTR,#8001H

MOV A,R2

MOVX @DPTR,A

MOV DPTR,#8001H MOV A,R0 MOVX @DPTR,A MOV P1,A MOV A,R5 JB P3.5,$ MOV P1,A JNB P3.3,NEXT2 JB P3.5,$ LCALL DELAY JNB P3.3,NEXT4

LCALL DELAY MOV R1,A LCALL DELAY1 CJNE R1,#0FFH,TWO

INC A

MOV P1,#00H

LCALL DELAY LJMP LOOP TWO: MOV A,R5 STAR4:MOV A,#03H RR A MOV DPTR,#TAB MOV R5,A MOVC A,@A+DPTR LJMP LOOP MOV DPTR,#8002H NEXT4:JNB P3.4,NEXT5

MOVX @DPTR,A LCALL DELAY1

MOV A,R2

LCALL DELAY1

MOV DPTR,#8001H LCALL DELAY1 MOVX @DPTR,A INC A MOV A,R3

MOV R1,A

MOV DPTR,#TAC

CJNE R1,#0FFH,TWO MOVC A,@A+DPTR MOV P1,#00H MOV P1,A

LCALL DELAY

JB P3.5,$

MOV A,R5

JNB P3.3,NEXT6 RR A LCALL DELAY ;加速 MOV R5,A MOV A,R3 LJMP LOOP INC A NEXT5:LCALL DELAY CJNE A,#08H,ZOU LCALL DELAY MOV A,#00H INC A ZOU:MOV R3,A

MOV R1,A

LJMP LOOP

CJNE R1,#0FFH,TWO NEXT6:JNB P3.4,NEXT7 MOV P1,#00H LCALL DELAY ;减速 MOV A,R5 LCALL DELAY RR A LCALL DELAY MOV R5,A MOV A,R3 INC A

MOV R3,A

CJNE A,#08H,ZOU LJMP LOOP MOV A,#00H NEXT7:LCALL DELAY ;正常 LCALL DELAY MOV A,R3 INC A CJNE A,#08H,ZOU MOV A,#00H MOV R3,A LJMP LOOP DELAY:MOV R7,#02H D1: MOV R6,#0FFH D2: DJNZ R6,D2

DJNZ R7,D1

RET DELAY1:MOV R7,#04H

D3:MOV R6,#0FFH

D4:DJNZ R6,D2 DJNZ R7,D1 RET TAB:DB 06H,5BH,4FH,66H TAC:DB 7EH,0BDH,0DBH,0E7H,18H,24H,42H,81H END

上一篇:电气类毕业实习日志下一篇:电脑培训哪个学校好

本站热搜