单片机课程设计(实习)大纲

时间:2019-05-13 01:12:38下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《单片机课程设计(实习)大纲》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《单片机课程设计(实习)大纲》。

第一篇:单片机课程设计(实习)大纲

单片机及应用

课程设计(实习)大纲

一、单片机课程设计(实习)目的和任务

 单片机课程设计(实习)主要达到以下目的:

(1)使学生增进对MCS51单片机电路的感性认识,加深对理论方面的理解。

(2)使学生掌握软硬件的有关知识等。

(3)使学生了解和掌握软硬件设计过程、方法及实现,为以后设计和实现应用系统打下良好基础。

(4)通过简单课题的设计练习,可使学生了解必须提交的各项工程文件,也达到巩固、充实和综合运用所学知识解决实际问题的目的。

 单片机课程设计(实习)应能加强学生如下能力的培养:

(1)独立工作能力和创造力;

(2)综合运用专业及基础知识,解决实际工程技术问题的能力。

(3)查阅图书资料、产品手册和各种工具书的能力;

(4)工程绘图的能力;

(5)写技术报告和编制技术资料的能力。

二、单片机课程设计(实习)内容及要求

(1)初步了解电路图设计方法

(2)分析给定电路图

(3)电路焊接

(4)设计简单程序

三.单片机课程设计(实习)步骤

1、明确任务和查阅资料;

2.电路分析;

3、画出电路硬件原理图(用PROTEL);

4、电路焊接;

5、编写源程序文件;

6、上机调试软件;

7、编写实习报告;

8、答辩;

四、成绩评定方法

根据完成文件的份量与质量,体现的水平及设计时教师通过检查、指导对学生独立能力的了解,结合答辩情况,综合后给每一位学生的课程设计(实习)评定一个成绩。

成绩分为优、良、中、及格、不及格。

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

单片机课程设计实习报告

本文由xiexiebang.comwww.xiexiebang.com小编推荐给大家参考阅读!

实训任务:

做单一灯的左移右移,八个发光二极管l1-l8分别接在单片机的p1.0→p1.2→p1.3┅→p1.7→p1.6→┅→p1.0亮,重复循环3次。然后左移2次,右移2次,闪烁2次(延时的时间0.2秒)。

一、实训目的和要求:

(1)熟练掌握keil c51集成开发环境的使用方法

(2)熟悉keil c51集成开发环境调试功能的使用和dp?51pro.net单片机仿真器、编程器、实验仪三合一综合开发平台的使用。

(3)利用单片机的p1口作io口,学会利用p1口作为输入和输出口。

(4)了解掌握单片机芯片的烧写方法与步骤。

(5)学会用单片机汇编语言编写程序,熟悉掌握常用指令的功能运用。

(6)掌握利用protel 99 se绘制电路原理图及pcb图。

(7)了解pcb板的制作腐蚀过程。

二、实训器材:

pc机(一台)http://shixi.xiexiebang.com/

pcb板(一块)

520ω电阻(八只)

10k电阻(一只)

led发光二极管(八只)

25v 10μf电容(一只)

单片机ic座(一块)

at89c51单片机芯片(一块)

热转印机(一台)

dp?51pro.net单片机仿真器、编程器、实验仪三合一综合开发平台(一台)

三、实训步骤:

(1)根据原理图(下图所示),用导线把单片机综合开发平台a2区的j61接口与d1区的j52接口相连。

(2)将流水灯程序编写完整并使用tkstudy ice调试运行。

(3)使用导线把a2区j61接口的p1口7个口分别与j52接口的八个led相连。

(4)打开电源,将编写好的程序运用tkstudy ice进行全速运行,看能否实现任务要求。

(5)观察运行结果,若能实现功能,则将正确编译过的hex文件通过easypro51编程器写入mcu片内存储器,然后将烧写的芯片a2区的圆孔ic座进行最终实验结果的演示。

(6)制板。首先利用protel 99 se画好原理图,根据原理图绘制pcb图,然后将绘制好的pcb布线图打印出来,经热转印机转印,将整个布线图印至pcb板上,最后将印有布线图的pcb板投入装有三氯化铁溶液的容器内进行腐蚀,待pcb板上布线图外的铜全部后,将其取出,清洗干净。

(7)焊接。将所给元器件根据原理图一一焊至pcb板相应位置。

(8)调试。先把at89c51芯片插入ic座,再将+5v电源加到制作好的功能板电源接口上,观察功能演示的整个过程(看能否实现任务功能)。

(流水灯控制器原理图)

四、流水灯控制器程序的主程序:

org 0000h

sjmp start

org 0030h

start: mov a,#0ffh

mov r0,#1ch

mov r1,#12h

mov r2,#12h

clr c

loop1: acall delay

djnz r0,loop

2sjmp loop

4loop2: mov p1,ahttp://shixi.xiexiebang.com/

rlc a

jnc loop

3sjmp loop

1loop3: acall delay

mov p1,a

rrc a

jnc loop1

sjmp loop3

loop4: acall delay

djnz r1,loop

5sjmp loop6

loop5: mov p1,a

rrc ajnc loop4

sjmp loop4

loop6: acall delay

djnz r2,loop7

sjmp zy

loop7: mov p1,a

rlc a

jnc loop6

sjmp loop6

zy: acall delay

mov a,#00h

mov p1,a

acall delay

mov a,#0ffh

mov p1,a

acall delay

mov a,#00h

mov p1,a

acall delay

mov a,#0ffh

mov p1,a

sjmp start

delay: mov r3,#20

dly1: mov r4,#20

dly2: mov r5,#248

djnz r5,$http://shixi.xiexiebang.com/

djnz r4,dly2

djnz r3,dly1

ret

;

end

(pcb布线图)

五、实训体会与自我评价:

本设计成品是以单片机at89c51芯片为核心部件,实现了单一灯的左移右移重复循环3次。然后左移2次,右移2次,闪烁2次(延时0.2秒)的功能。此次设计在软件、编写程序方面花费时间太多我们上网找资料,上图书馆,尽可能多的了解流水灯控制的相关知识。通过这一周的综合实训(单片机课程设计),熟练掌握了keil c51集成开发环境的使用方法,了解并掌握到单片机芯片的烧写方法与步骤,进一步加深了对单片机常用指令的理解与运用。能够较熟练的运用protel 99 se绘制电路原理图及pcb图,对pcb板的一般制作过程有了一定的了解。在实训过程中,使我得到了一次用专业知识、专业技能分析和解决问题、全面系统的锻炼。使我在单片机的基本原理、单片机应用系统开发过程,以及在常用编程设计思路技巧(特别是汇编语言)的掌握方面都能向前迈了一大步。

同时在老师的悉心指导和严格要求下,获得了丰富的理论知识,极大地提高了实践能力,单片机领域对我今后进一步学习计算机方面的知识有极大的帮助。使我们认识到课程的重要性,同时也感受到理论与实践之间的差距,使我们对单片机系统的应用有了更加深刻的认识。

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

单片机课程设计实习报告

课程 2009-06-09 23:23:55 阅读1900 评论2 字号:大中小 订阅

实训任务:

做单一灯的左移右移,八个发光二极管L1-L8分别接在单片机的P1.0→P1.2→P1.3┅→P1.7→P1.6→┅→P1.0亮,重复循环3次。然后左移2次,右移2次,闪烁2次(延时的时间0.2秒)。

一、实训目的和要求:

(1)熟练掌握Keil C51集成开发环境的使用方法

(2)熟悉Keil C51集成开发环境调试功能的使用和DP51PRO.NET单片机仿真器、编程器、实验

仪三合一综合开发平台的使用。

(3)利用单片机的P1口作IO口,学会利用P1口作为输入和输出口。

(4)了解掌握单片机芯片的烧写方法与步骤。

(5)学会用单片机汇编语言编写程序,熟悉掌握常用指令的功能运用。

(6)掌握利用Protel 99 SE绘制电路原理图及PCB图。

(7)了解PCB板的制作腐蚀过程。

二、实训器材: PC机(一台)PCB板(一块)520Ω电阻(八只)10K电阻(一只)LED发光二极管(八只)25V 10μF电容(一只)单片机IC座(一块)AT89C51单片机芯片(一块)

热转印机(一台)

DP51PRO.NET单片机仿真器、编程器、实验仪三合一综合开发平台(一台)

三、实训步骤:

(1)根据原理图(下图所示),用导线把单片机综合开发平台A2区的J61接口与D1区的J52接

口相连。

(2)将流水灯程序编写完整并使用TKStudy ICE调试运行。

(3)使用导线把A2区J61接口的P1口7个口分别与J52接口的八个LED相连。(4)打开电源,将编写好的程序运用TKStudy ICE进行全速运行,看能否实现任务要求。(5)观察运行结果,若能实现功能,则将正确编译过的HEX文件通过EasyPRO51编程器写入MCU片内存储器,然后将烧写的芯片A2区的圆孔IC座进行最终实验结果的演示。

(6)制板。首先利用Protel 99 SE画好原理图,根据原理图绘制PCB图,然后将绘制好的PCB布线图打印出来,经热转印机转印,将整个布线图印至PCB板上,最后将印有布线图的PCB板投入装有三氯化铁溶液的容器内进行腐蚀,待PCB板上布线图外的铜全部后,将其取出,清洗干净。

(7)焊接。将所给元器件根据原理图一一焊至PCB板相应位置。

(8)调试。先把AT89C51芯片插入IC座,再将+5V电源加到制作好的功能板电源接口上,观察功

能演示的整个过程(看能否实现任务功能)。

(流水灯控制器原理图)

四、流水灯控制器程序的主程序:

ORG 0000H SJMP START ORG 0030H START: MOV A,#0FFH MOV R0,#1CH MOV R1,#12H MOV R2,#12H

CLR C LOOP1: ACALL DELAY DJNZ R0,LOOP2 SJMP LOOP4 LOOP2: MOV P1,A

RLC A JNC LOOP3 SJMP LOOP1 LOOP3: ACALL DELAY

MOV P1,A RRC A JNC LOOP1 SJMP LOOP3 LOOP4: ACALL DELAY DJNZ R1,LOOP5 SJMP LOOP6 LOOP5: MOV P1,A

RRC A JNC LOOP4 SJMP LOOP4 LOOP6: ACALL DELAY DJNZ R2,LOOP7

SJMP ZY LOOP7: MOV P1,A

RLC A JNC LOOP6 SJMP LOOP6 ZY: ACALL DELAY MOV A,#00H MOV P1,A

ACALL DELAY MOV A,#0FFH MOV P1,A ACALL DELAY MOV A,#00H MOV P1,A ACALL DELAY MOV A,#0FFH MOV P1,A SJMP START DELAY: MOV R3,#20 DLY1: MOV R4,#20 DLY2: MOV R5,#248

DJNZ R5,$ DJNZ R4,DLY2 DJNZ R3,DLY1

RET;END

(PCB布线图)

五、实训体会与自我评价:

本设计成品是以单片机AT89C51芯片为核心部件,实现了单一灯的左移右移重复循环3次。然后左移2次,右移2次,闪烁2次(延时0.2秒)的功能。此次设计在软件、编写程序方面花费时间太多我们上网找资料,上图书馆,尽可能多的了解流水灯控制的相关知识。通过这一周的综合实训(单片机课程设计),熟练掌握了Keil C51集成开发环境的使用方法,了解并掌握到单片机芯片的烧写方法与步骤,进一步加深了对单片机常用指令的理解与运用。能够较熟练的运用Protel 99 SE绘制电路原理图及PCB图,对PCB板的一般制作过程有了一定的了解。在实训过程中,使我得到了一次用专业知识、专业技能分析和解决问题、全面系统的锻炼。使我在单片机的基本原理、单片机应用系统开发过程,以及在常用编程设计思路技巧(特别是汇编语言)的掌握方面都能向前迈了一大步。

同时在老师的悉心指导和严格要求下,获得了丰富的理论知识,极大地提高了实践能力,单片机领域对我今后进一步学习计算机方面的知识有极大的帮助。使我们认识到课程的重要性,同时也感受到理论与实践之间的差距,使我们对单片机系统的应用有了更加深刻的认识。

ORG 0000H LJMP MAIN ORG 000BH LJMP T0I MAIN: MOV P1,#0FFH MOV R6,#10 MOV A,#0FEH L: MOV P1,A MOV TMOD,#01H MOV TH0,#3CH MOV TL0,#0B0H SETB EA SETB ET0 SETB TR0 JNB F0,$ CLR F0 RL A SJMP L T0I: L5:JB P2.0,L1 SJMP L5 L1: MOV TH0,#3CH MOV TL0,#0B0H DJNZ R6,L3 MOV R6,#10 SETB F0 L3: RETI END

第四篇:单片机课程设计

单片机课程设计

课题: 简易电子琴设计

院:

电气与信息工程学院 专

业:

电子信息工程 姓

名:

李琳琳 学

号:

093411106

指导老师:

田巍

河南城建学院

2014年

01 月

01 日

第五篇:单片机课程设计

课 程 设 计

设计题目: 基于单片机的8*8点阵显示数字设计

学生姓名: 指导教师: 二级学院: 专

业: 班

级: 学

号:

目 录

摘要„„„„„„„„„„„„„„„„„„„„„„„„„„Ⅱ 1 方案选择及总体设计„„„„„„„„„„„„„„„„„„„1 1.1方案确定„„„„„„„„„„„„„„„„„„„„„1 1.1.1功能要求„„„„„„„„„„„„„„„„„„„„1 1.1.2方案确定„„„„„„„„„„„„„„„„„„„„1 1.2器件选择„„„„„„„„„„„„„„„„„„„„„1 2 控制系统设计„„„„„„„„„„„„„„„„„„„„„„2 2.1 控制系统硬件设计„„„„„„„„„„„„„„„„„2 2.1.1整体模块设计„„„„„„„„„„„„„„„„„„2 2.1.2单片机AT89C51„„„„„„„„„„„„„„„„„2 2.1.3单片机最小系统设计„„„„„„„„„„„„„„„5 2.1.3.1晶振电路设计„„„„„„„„„„„„„„„„„5 2.1.3.2复位电路设计„„„„„„„„„„„„„„„„„5 2.1.4驱动电路设计„„„„„„„„„„„„„„„„„„6 2.1.5LED点阵显示设计„„„„„„„„„„„„„„„„9 2.2控制系统软件设计„„„„„„„„„„„„„„„„„11 2.2.1软件设计思想„„„„„„„„„„„„„„„„„„11 2.2.2主程序流程图„„„„„„„„„„„„„„„„„„11 2.2.3子程序流程图„„„„„„„„„„„„„„„„„„13 3 系统仿真及调试„„„„„„„„„„„„„„„„„„„„14 3.1系统调试„„„„„„„„„„„„„„„„„„„„„14 3.2系统仿真„„„„„„„„„„„„„„„„„„„„„14 3.2.1protrus软件仿真„„„„„„„„„„„„„„„„14 3.2.2程序„„„„„„„„„„„„„„„„„„„„„„14 总结„„„„„„„„„„„„„„„„„„„„„„„„„^„17 参考文献„„„„„„„„„„„„„„„„„„„„„„„„18

I

摘 要

现在市场上各类基于LED的显示屏较多,但大部分产品为单一模式的LED显示屏,其在显示内容的更换及显示屏的重组等方面都存在不便之处。但随着信息化社会的迅速发展,LED显示屏正在向显示内容丰富、信息更改方便等方面发展。因此制作一款多功能的LED广告显示屏是非常有意义地。

LED驱动显示采用动态扫描方法,动态扫描方式是逐行轮流点亮,这样扫描驱动电路就可以实现多行的同名列共用一套列驱动器。以8×8点阵为例,把所有同一行的发光管的阳极连在一起,把所有同一列的发光管的阴极连在一起(共阳的接法),先送出对应第1行发光管亮灭的数据并锁存,然后选通第1行使其燃亮一定的时间,然后熄灭;再送出第2行的数据并锁存,然后选通第2行使其燃亮相同的时间,然后熄灭;第8行之后,又重新燃亮第1行,反复轮回。当这样轮回的速度足够快(每秒24次以上),由于人眼的视觉暂留现象,就能看到显示屏上稳定的图形。该方法能驱动较多的LED,控制方式较灵活,而且节省单片机的资源。

本次课程设计的题目为8×8点阵数字显示,设计的任务为使用单片机控制8×8的点阵显示0到9的数字,不仅显示清晰,并且每经过一定时间,显示的数字加一,从0 到 9 循环。以AT89C51单片机为核心,采用串行传输、动态扫描技术,制作一款模块化LED多功能显示屏。

在资料收集方面,主要是参考了《51单片机原理及应用—基于Keil C与Proteus》一书,结合了一些网络资料,以及一些集成块的使用说明书。

在整个工作过程中,根据收集来的资料绘制出大概的原理图,然后通过Proteus仿真,与此同时运用Keil 编程,用Keil 与Proteus进行联调,调试成功后确定了原理图和控制程序。

II

第一章 方案选择及总体设计

1.1 方案确定

1.1.1 功能要求

1、采用STC-51单片机作为微处理器。

2、设计一个8×8点阵LED数码字符显示器。

3、在目测条件下LED显示屏各点亮度均匀、充足、稳定、清晰无串扰。

4、动态显示“0——9”几个字符。

1.1.2 方案确定

采用ST89C51单片机作为微处理器,将共阳极二极管用共阴型接法连接成8×8点阵LED数码字符阵列,通过程序控制,采用动态显示,建立字符库“0——9”。

1.2 器件选择

微处理器采用ST89C51系列单片机,ST89C51单片机是这几年在我国非常流行的单片机,是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Flash Programmable and Erasable Read Only Memory)高性能单片机,可擦除只读存储器可以反复擦除100次,具有低功耗、高性能的特点。

AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

第二章 控制系统设计

2.1控制系统硬件设计

2.1.1整体模块设计

本设计行、列驱动电路,显示器电路,运用单片机的智能化,系统的将每个功能电路模块连接在一起,总体结构设计如图2-1所示。

点阵显示器行驱动电路PC上位机单片机8×8点阵LED显示器电路点阵显示器列驱动电路

图2-1 硬件系统框图

此次需要实现的功能是利用一个ST89C51,一个8×8LED点阵,动态显示“0——9”10个字,采用PC上位机驱动显示电路。

2.1.2 单片机AT89C51 AT89C51是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含4k bytes的可反复擦写的只读程序存储器(PEROM)和128 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产, 兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大AT89C51单片机能提供许多高性价比的应用场合,可灵活应用于各种控制领域。

AT89C51单片机引脚图如图2-2所示。

图2-2 AT89C51引脚图

AT89C51管脚说明: VCC:供电电压。GND:接地。

P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P0口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1 口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。

P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行

存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。

P3口也可作为AT89C51的一些特殊功能口,如下所示: P3口管脚

备选功能: P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)

P3口同时为闪烁编程和编程校验接收一些控制信号。

RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。

/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。

/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。

XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:

来自反向振荡器的输出。

2.1.3 单片机最小系统设计

单片机的最小系统是能够让单片机工作的最小硬件电路。除了单片机外,最小系统还包括复位电路和时钟电路。

复位电路:单片机的复位电路接在复位信号RST上,复位电路用于将单片机内部电路的状态恢复到初始值。需要复位时按下按钮即可。

时钟电路:时钟电路为单片机工作提供基本时钟。时钟电路中包含一个晶体振荡器,简称晶振,频率范围是1.2~12MHz。晶体振荡频率越高,系统的时钟频率也越高,单片机的运行速度也就越快

ST89C51单片机最小系统电路由复位电路、晶振电路两部分组成。2.1.3.1 晶振电路设计

ST89C52单片机芯片内部设有一个由反向放大器构成的振荡器,XTAL1和XTAL2分别为振荡电路的的输入端和输出端,时钟可有内部或外部生成,在XTAL1和XTAL2引脚上外接定时元件,内部振荡电路就会产生自激振荡。系统采用的定时元件为石英晶体和电容组成的并联谐振回路。晶振频率采用12MHZ,C1、C2的电容值取30pF,电容的大小起频率微调的作用。晶振电路图如图2-3所示。

C1XTAL130pFC2XTAL230pF图2-3 晶振电路图

X112MHZ

2.1.3.2 复位电路设计

ST89C51单片机在启动运行时或者出现死机时需要复位,使CPU以及其他功能部件处于一个确定的初始状态,并从这个状态开始工作。单片机有多种复位方式,常用的复位操作有上电复位和手动复位方式。本设计采用最简单的上电复位方式,电路如图2-4所示。上电复位是通过外部复位电路的电容充电来实现的,复位电路产生的复位信号(高电平有效)由RST引脚送入到内部的复位电路,对ST89C51单片机进行复位,复位信号要持续两个机器周期(24个时钟周期)以上,才能使ST89C51单片机可靠复位。当上电时,C1相当于短路,有时碰到干扰时会造成错误复位,可在复位端加个去耦电容,可以取得很好的效果。

ST89C51单片机复位电路如下图所示:

VCCAT89C51VCCC510MF/25VRSTR94.7KVSSR24.7KVSSRSTR1C10MF/25VS5 RSTVCCAT89C51VCC

图2-4 上电复位电路图

图2-5 按键电平复位电路图

复位电路工作原理:

上电瞬间RST引脚的电位与VCC等电位,RST引脚为高电平,随着电容C5充电电流的减少,RST引脚的电位不断下降,可以保持RST引脚在为高电平的时间内完成复位操作。

当单片机已在运行当中时,按下复位键S5后再松开,也能使RST引脚为一段时间的高电平,从而实现ST89C51单片机复位。

2.1.4 驱动电路设计

驱动电路图如图2-6所示。

图2-6 驱动电路图

74LS245引脚图如图2-7所示。

图2-7 74LS245引脚图

引出端符号: A A总线端

B B总线端

/G 三态允许端(低电平有效)DIR 方向控制端

74LS245是用来驱动LED或者其他的设备,它是8路同相三态双向总线收发器,可双向传输数据。74LS245还具有双向三态功能,既可以输出,也可以输入数据。

如果用89C51的P0口输出到数码管,那就要考虑到数码管的亮度以及P0口带负载的能力,当89C51单片机的P0口总线负载达到或超过P0最大负载能力时,必须接入74LS245等总线驱动器。选用74LS245提高驱动能力。P0口的输出经过74LS245提高驱动后,输出到数码管显示电路。

工作原理:

当片选端/CE低电平有效时,DIR=“0”,信号由B向A传输;(接收)DIR=“1”,信号由A向B传输;(发送)当CE为高电平时,A、B均为高阻态。

正向点亮一颗LED,至少也要10~20mA,若电流不够大,则LED不够大。而不管是ST89C51的I/O口,还是TTL、CMOS的输出端,其高态输出电流都不是很高,不过1~2mA而已。因此很难直接高态驱动LED,这时候就需要额外的驱动电路,通常有共阳型与共阴型LED阵列驱动电路,本设计才用共阴型高态扫描信号驱动电路。

共阴型LED阵列驱动电路采用高态扫描,也就是任何时间只有一个高态信号,其它则为低态。一行扫描完成后,再把高态信号转化到近邻的其他行,扫描信号接用一个反向驱动器,ST89C51本身内置一个反向驱动器,本设计将ST89C51作为点矩阵显示控制系统的控制核心,通过点矩阵实时显示并移动字符。

单片机的串口与行驱动器相连,用来发送显示数据信息。P3口与LED阵列的行引脚相连,送出数据、地址以及系统控制信号。输出低态时,最大可吸取0.5A,即500mA,若每个LED取30mA,7个LED同时点亮,需要210mA,完全满足LED点亮的基本条件。

所要显示的信号送入74LS245芯片,然后连接到LED阵列的列阵脚。对于高态的显示信号,将可提供其所连接LED的驱动电流,而这个驱动电流经过LED到输出端,形成正向回路,即可点亮该LED。其中每个晶体管任何时间只需负

责驱动一个LED,所以选择30mA射极电流的晶体管。驱动电路如图2-6所示。

2.1.5 LED点阵显示设计

本设计采用ATMEL公司的AT89C51作矩阵显示控制系统控制核心,12MHZ晶振,88点阵共阳LED显示器。其中,P0口作为字符数据输出口,P3口为字符显示扫描输出口,第31脚(EA)接电源,改变电阻(270×8)的大小可改变显示字符的亮度,驱动用74LS245芯片。

本设计LED矩阵显示器电路选用8×8点阵模块,系统由单片机控制。LED显示屏是将发光二极管按行按列布置的,在扫描驱动方式下可以按行扫描按列控制,也可以按列扫描按行控制。本文就是使用1块8×8点阵,采用按列扫描按行控制控制方式,扫描顺序自左向右,以满足数字显示的要求。8×8点阵LED结构如图2-8所示。

8×8点阵LEDabcdefgh12345678

图2-8 LED数码显示管

8×8 点阵LED的工作原理:LED点阵的显示方式是按显示编码的顺序,一行一行地显示。对于共阳型的点阵来说,当某一点所在的行对应高电平“1”并且其所在的列对应低电平“0”的时候,这一点就会被点亮。将每一行的显示时间进行一定的延时,由于人的视觉暂留现象,就会感觉到8行LED是在同时显示的。若显示的时间太短,则亮度不够,若显示的时间太长,将会感觉到闪烁。图2-9为8×8点阵LED外观及引脚图,其等效电路如图2-10所示,只要其对应的X、Y轴顺向偏压,即可使LED发亮。例如如果想使左上角LED点亮,则Y0=1,X0=0即可。应用时限流电阻可以放在X轴或Y轴。一个8×8点阵是由64个发光二极管按规律组成的,如图2-10所示。图中,行接高电平,列接低电平,发光二极管导通发光。

图2-9 8×8点阵LED外观及引脚图

图2-10 8×8点阵LED等效电路

8×8点阵数字显示的编码原理: 8×8点阵数字显示主要应用行扫描动态显示的方法实现,如图2-11所示,将行线依次置零,一次对列线编码,有红色填充部分为1,无填充部分为0。

图2-11 8×8点阵数字显示的编码原理

如此可得到“0”的编码为{0x00,0x3e,0x41,0x41,0x41,0x3e,0x00,0x00},同理可得到:

{0x00,0x00,0x00,0x21,0x7f,0x01,0x00,0x00}

//1 {0x00,0x27,0x45,0x45,0x45,0x39,0x00,0x00}

//2 {0x00,0x22,0x49,0x49,0x49,0x36,0x00,0x00}

//3 {0x00,0x0c,0x14,0x24,0x7f,0x04,0x00,0x00}

//4 {0x00,0x72,0x51,0x51,0x51,0x4e,0x00,0x00}

//5 {0x00,0x3e,0x49,0x49,0x49,0x26,0x00,0x00}

//6 {0x00,0x40,0x40,0x40,0x4f,0x70,0x00,0x00}

//7 {0x00,0x36,0x49,0x49,0x49,0x36,0x00,0x00}

//8 {0x00,0x32,0x49,0x49,0x49,0x3e,0x00,0x00}

//9 2.2控制系统软件设计

2.2.1 软件设计思想

主程序先进行设置中断,并启动,再进行键盘扫描载入“0——9”字型,然后判断一组字型是否扫描完,按不同情况进行循环调用子程序。进入子程序后,首先设置相应的程序,反复调用显示子程序,并在显示过程中反复调用键盘扫描子程序进行延时,判断是否退出相应的方式显示子程序。设计过程中,能很好得提高按键响应速度。

2.2.2 主程序流程图

主程序首先设置并启动T0中断,然后调用初始化程序,为后面程序要用到的数据调入,并清零一些用到的数据单元,然后载入“0——9”字型,进行扫描。图2-12为主程序流程图。

图2-12 主程序流程图

2.2.3 子程序流程图(定时中断服务程序)

图11 子程序流程图(定时中断服务程序)

第三章 系统仿真及调试

3.1系统调试

根据硬件电路图核对了元器件的型号、极性,安装是否正确,检查硬件电路连线是否与电路原理图一致,检查电路元器件是否都已经连接好。

通电后,用示波器检测单片机的复位和晶振电路是否有复位信号和振荡信号。

3.2 系统仿真

3.2.1 proteus软件仿真

使用proteus原理及仿真如图3-1所示。

如图3-1 proteus原理及仿真图

3.2.2 程序

#include #include #define uchar unsigned char #define uint unsigned int uchar code Table_of_Digits[]=

{ 0x00,0x3e,0x41,0x41,0x41,0x3e,0x00,0x00, 0x00,0x00,0x00,0x21,0x7f,0x01,0x00,0x00,//0 //1 0x00,0x27,0x45,0x45,0x45,0x39,0x00,0x00,//2 0x00,0x22,0x49,0x49,0x49,0x36,0x00,0x00,//3 0x00,0x0c,0x14,0x24,0x7f,0x04,0x00,0x00,//4 0x00,0x72,0x51,0x51,0x51,0x4e,0x00,0x00, 0x00,0x3e,0x49,0x49,0x49,0x26,0x00,0x00, 0x00,0x40,0x40,0x40,0x4f,0x70,0x00,0x00,0x00,0x36,0x49,0x49,0x49,0x36,0x00,0x00,0x00,0x32,0x49,0x49,0x49,0x3e,0x00,0x00

};uchar i=0,t=0,Num_Index;//主程序 void main(){ P3=0x80;

Num_Index=0;

//从0开始显示

TMOD=0x00;

//T0方式0 TH0=(8192-2000)/32;//2ms定时

TL0=(8192-2000)%32;IE=0x82;

//允许T0中断

TR0=1;

//启动T0 while(1);}

//T0中断函数

void LED_Screen_Display()interrupt 1 { TH0=(8192-2000)/32;

//恢复初值

TL0=(8192-2000)%32;P0=0xff;

//输出位码和段码

P0=~Table_of_Digits[Num_Index*8+i];P3=_crol_(P3,1);

//P3循环向左一位 //5 //6 //7

//8 //9

}

if(++i==8)i=0;if(++t==250){

} t=0;

//每屏一个数字由8个字节构成 //每个数字刷新显示一段时间

if(++Num_Index==10)Num_Index=0;//显示下一个数字

总结

经过单片机的课程设计,我有了很大的收获。

首先,就是让我加深了对单片机的掌握和理解与应用,知道单片机到底是怎样控制点阵,怎样应用在生活中的。并且让我懂得了要善于思考,追求严谨,认真解决问题,才会有更多的收获。

然后,提高了通过查阅资料解决问题的能力。通过查阅大量的相关资料,详细了解了LED的发光原理和LED显示屏的原理,了解了LED的现状,清楚地了解了LED显示屏与其它显示屏相比较有那些优点,明确了研究目标。并且通过对单片机资料的查阅和应用,更进一步增加了对单片机知识的理解和运用能力。并证实了自己的思路:“查资料→思考总结→运用→找出差错,再查资料和向别人询问→再次运用”的正确性。

最后,本系统能够完成设计任务,能够显示数字0-9,并且显示也较为稳定清晰。本系统具有硬件少,结构简单,容易实现,性能稳定可靠,成本低等特点。在本次课程设计中,主要使用了Proteus和Keil等软件进行硬件电路和控制程序的设计,加深了对这些软件的了解。感到Proteus对电子专业的同学来说是一个很有用的软件。总体来说这次的课程设计很成功,达到了预想的目的:学到了知识,提高了能力,完成了任务。

参考文献

[1] 张靖武,周灵彬 《单片机系统的PROTEUS设计与仿真》北京 电子工业出版社 [2] 吴金戌,沈庆阳,郭庭吉 《8051单片机实践与应用》北京 清华大学出版社 [3] 李群芳,肖看 《单片机原理、接口及应用》北京 清华大学出版社

[4] 张毅刚,彭喜元等 《新编MCS-51单片机应用设计 》黑龙江 哈尔滨工业大学出版社 [5] 李朝青,刘艳玲编著 《单片机原理及接口技术》北京 航空航天大学出版社

下载单片机课程设计(实习)大纲word格式文档
下载单片机课程设计(实习)大纲.doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    单片机课程设计

    基于单片机的火灾智能报警控制系统的设计前言在各种灾害中,火灾是最经常、最普通地威胁公众安全和社会发展的灾害之一。人类能够对火进行利用和控制,是文明进步的一个重要标志......

    单片机课程设计

    《单片机技术》课程设计说明书 音乐盒 院、部:电气与信息工程学院 学生姓名:刘亮 指导教师:凌云职称讲师 专业:电子信息工程 班级:电子1302班 学号:1330340220 完成时间: 2016年1......

    单片机课程设计

    单片机课程设计_报警器 报警器 ORG 0010H START:MOV DPTR,#TAB CLR P3.1 SETB P1 MOV A,P1 CPL A ANL A,#0F0H SWAP A MOV R0,A LCALL DISP1 MOV A,P1 CPL A ANL A,#0FH MOV......

    单片机课程设计

    单片机课程设计 --------- 机电汽车工程学院 同组成员:(机091-1) 姓名(学号):......

    单片机课程设计大全

    基于单片机的计算器设计、基于单片机的密码锁设计、基于单片机的电机控制、基于单片机的交通灯设计、基于单片机的八路抢答器设计、基于单片机的温度检测设计、基于单片机的......

    单片机课程设计

    目录 第 1 章概述.....................................................................................6 第 2 章单片机.................................................

    单片机课程设计

    单片机课程设计 跑马灯的控制 摘要:本设计选择对跑马灯的控制,先构思跑马灯实现预想效果,然后进行分 析,根据要求编写程序,选择硬件端口,并进行调试致预想效果,最后浅谈课程设计的......

    单片机课程设计

    镇江高等专科学校课程设计1 项目要求 基于AT89S51单片机的密码锁设计,具体功能如下: (1)总共可以设置8位密码,每位密码值范围为1~8。 (2)用户可自行设定和修改密码。 (3)按每个......