单片机电路板设计实习Word格式文档下载.docx

上传人:b****3 文档编号:7556562 上传时间:2023-05-08 格式:DOCX 页数:28 大小:877.70KB
下载 相关 举报
单片机电路板设计实习Word格式文档下载.docx_第1页
第1页 / 共28页
单片机电路板设计实习Word格式文档下载.docx_第2页
第2页 / 共28页
单片机电路板设计实习Word格式文档下载.docx_第3页
第3页 / 共28页
单片机电路板设计实习Word格式文档下载.docx_第4页
第4页 / 共28页
单片机电路板设计实习Word格式文档下载.docx_第5页
第5页 / 共28页
单片机电路板设计实习Word格式文档下载.docx_第6页
第6页 / 共28页
单片机电路板设计实习Word格式文档下载.docx_第7页
第7页 / 共28页
单片机电路板设计实习Word格式文档下载.docx_第8页
第8页 / 共28页
单片机电路板设计实习Word格式文档下载.docx_第9页
第9页 / 共28页
单片机电路板设计实习Word格式文档下载.docx_第10页
第10页 / 共28页
单片机电路板设计实习Word格式文档下载.docx_第11页
第11页 / 共28页
单片机电路板设计实习Word格式文档下载.docx_第12页
第12页 / 共28页
单片机电路板设计实习Word格式文档下载.docx_第13页
第13页 / 共28页
单片机电路板设计实习Word格式文档下载.docx_第14页
第14页 / 共28页
单片机电路板设计实习Word格式文档下载.docx_第15页
第15页 / 共28页
单片机电路板设计实习Word格式文档下载.docx_第16页
第16页 / 共28页
单片机电路板设计实习Word格式文档下载.docx_第17页
第17页 / 共28页
单片机电路板设计实习Word格式文档下载.docx_第18页
第18页 / 共28页
单片机电路板设计实习Word格式文档下载.docx_第19页
第19页 / 共28页
单片机电路板设计实习Word格式文档下载.docx_第20页
第20页 / 共28页
亲,该文档总共28页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

单片机电路板设计实习Word格式文档下载.docx

《单片机电路板设计实习Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《单片机电路板设计实习Word格式文档下载.docx(28页珍藏版)》请在冰点文库上搜索。

单片机电路板设计实习Word格式文档下载.docx

2

院系名称

电气及信息工程学院

专业

电气工程及其自动化

班级、学号

13—1班

20131613

20131609

指导教师姓名

葛洪军、王希凤

职称

从事专业

电气工程

题目名称

一、工程实践的目的、意义

1.通过本次课程设计加深对单片机课程的全面认识复习和掌握,对单片机课程的应用进一步的了解,掌握定时器、外部中断的设置和编程原理。

2.通过此次课程设计能够将单片机软硬件结合起来,对程序进行编辑,校验。

该实验通过单片机的定时器/计数器定时和计数原理,设计简单的计时器系统,拥有正确的计时、暂停、清零、快加功能,并同时可以用数码管显示,在现实生活中应用广泛,具有现实意义。

二、工程实践的主要内容、技术要求(包括原始数据、技术参数、设计要求、工作量要求等)

主要内容:

这次的实习内容——多功能秒表的设计——主要根据单片机AT89C52芯片来完成整体的设计

设计要求:

1.能同时对4个四个相对独立的时间分别显示。

2.两位LED显示,现实时间为00~99秒。

3.每秒自动加一。

4.一个开始按键,一个复位按键,一个暂停按钮和一个计数按钮

技术参数:

AT89S51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器,俗称单片机。

该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。

由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89S51是一种高效的微控制器。

三、工程实践完成后应提交的成果

根据设计任务设计出一个简易的秒表,可以实现按键开始、暂停、复位以及计数的功能,通过LED数码管显示00~99的数,当“开始”按键按下时,LED数码管的数开始计数,每秒加一;

当“暂停”按键按下时,LED数码管的数暂停;

当“计数”按键按下时,当前的数就存入地址单元里;

当“复位”按键按下时,数字归零。

四、工程实践的工作进度安排

第一周前三天根据实习内容查阅资料并确立方案,之后进行实件的焊接与调试,预计在第二周第三天之前完成,第二周之后便开始进行论文的攥写工作。

五、主要参考资料

[1]刘海成.单片机及其应用原理教程.第一版.中国电力出版社出版.2012.7

[2]余发山.单片机原理与及应用技术.第一版.中国矿业大学出版社出版.王福忠.2003.12

[3]朱定华、戴汝平.单片机微机原理与应用.清华大学出版社.2003.8 

[4]南建辉、熊鸣、王军茹.MCS-51单片机原理及应用实例北京清华大学出版社.第1版.2006.2

六、备注

教研室主任签字:

目录

第一章概述……………………………………………………………………1

1.1设计目的、设计意义及设计任务…………………………………………………1

1.1.1设计目的…………………………………………………………………………1

1.1.2设计意义…………………………………………………………………………1

1.2设计思路及主要功能………………………………………………………………1

1.2.1设计思路…………………………………………………………………………1

1.2.2主要功能…………………………………………………………………………2

第二章系统总体方案及硬件设计……………………………………………3

2.1单片机的设计………………………………………………………………………3

2.2电源电路……………………………………………………………………………3

2.3晶体震荡电路………………………………………………………………………3

2.4复位电路……………………………………………………………………………4

2.5显示电路…………………………………………………………………………4

2.6开关控制电路模块………………………………………………………………4

第三章软件设计…………………………………………………………………5

3.1设计思想……………………………………………………………………………5

3.2系统流程图…………………………………………………………………………5

3.3源程序代码及注解…………………………………………………………………6

3.3.1主程序……………………………………………………………………………6

3.3.2显示程序…………………………………………………………………………6

3.3.3开关控制程序……………………………………………………………………6

3.3.4暂停程序…………………………………………………………………………6

3.3.5复位程序…………………………………………………………………………7

第四章软件仿真…………………………………………………………………8

4.1proteus软件仿真……………………………………………………………………8

4.2实物仿真…………………………………………………………………………9

第五章心得体会………………………………………………………………11

参考文献……………………………………………………………………………12

附录…………………………………………………………………………………13

第一章概述

1.1设计目的、设计意义及设计任务

1.1.1设计目的

基于单片机的综合实验仪器,利用汇编语言来编写一个秒表计时器。

通过该课程设计进一步了解单片机硬件组成的目的以掌握它的整机工作原理,掌握单片机的中断系统,以便掌握对单片机随机事件的高效响应和处理手段。

通过秒表的计时进一步掌握定时∕计数器的4种工作方式以及在不同工作方式下的时间和计数器常数的设定方法,并掌握中断功能在定时计数器中的应用。

通过LED显示程序的调整,熟悉AT89C52芯片与LED的接口技术,熟悉LED动态显示的控制过程。

通过键盘程序的调整,熟悉键盘扫描原理。

通过阅读和调试秒表程序的整体过程,学会如何编制含LED动态显示、键盘扫描和定时器中断等多种功能的综合程序,初步体会大型程序的编制和调试技巧。

1.1.2设计意义

1、通过设计使学生进一步熟悉和掌握单片机的内部结构和工作原理,了解单片机应用系统设计的基本方法和步骤;

2、通过利用MCS-51单片机,理解单片机在自动化仪表中的作用以及掌握单片机的编程方法;

3、通过设计一个简单的计算器数字输入及显示模拟系统,掌握单片机仿真软件Proteus的使用方法;

4、掌握键盘和显示器在的单片机控制系统中的应用。

5、掌握撰写课程设计报告的方法。

1.1.3设计任务

1.能同时对4个四个相对独立的时间分别显示。

1.2设计思路及主要功能

1.2.1设计思路

本实验设计六个控制按键:

其中第一个按键按下去时以1秒加一开始计时,即秒表开始键,第二个按键按下去时暂停计时,使秒表停留在当前的计时值,第三个按键按下去时清0即复位,第四个按键按下去则是以每10ms秒快速加一,第五个键按下时开始计数,第六个键按下时进行翻页查看。

该实验要求进行计时并在数码管上显示时间,则可利用AT89S51芯片的P0.0-P0.7管脚对应了两个接数码管的A,B,C,D,E,F,G和小数点位,P2.6接显示个位数的数码管的选通引角,P2.7则接十位数的。

P2.6和P2.7端口分别控制数码管的十位和个位的供电,当相应的端口变成低电平时,驱动相应的芯片内部和外部电路元器件给数码管相应的位供电,这时只要P0口送出数字的显示代码,数码管就能正常显示需要的数字。

1.2.2主要功能

第二章系统总体方案及硬件设计

2.1单片机的设计

本次试验采用AT80C52单片机,见附录2图1,该型号单片机由CPU、振荡器与时序电路、4KB的ROM、256KB的RAM、两个16位的定时器/计数器T0和T1、4个8位的I/O端口等组成。

其中振荡器时序电路与外时钟组成了定时控制部件。

主要特性:

1.与MCS-51兼容4K字节可编程闪烁存储器

2.全静态工作:

0Hz-24HZ

3.三级程序存储器锁定

4.128*8位内部RAM

5.32可编程I/O线

6.两个16位定时器/计数器

7.5个中断源,可编程串行通道,低功耗的闲置和掉电模式,片内振荡器和时钟电路

总的电路图见附录2图1。

2.2电源电路

由于三端正电源稳压电路78XX系列电路比较简单,可靠性高,广泛用于各种电子仪器设备,所以本系统采用7805电源提供+5V电源。

其主要特点是:

输出电流最大可达1.5伏,内含过压保护、过电流保护以及温度保护功能。

电源电路见附录2图2。

2.3晶体震荡电路

MCS--51单片机内部的振荡电路是一个到增益反相放大器,引线XTAL1和XTAL2分别为反向振荡放大器的输入及内部时钟工作电路的输入和来自反向振荡器的输出,该反向放大器可以配置为片内振荡器。

51单片机的时钟产生方式有两种,分别为:

内部时钟方式和外部时钟方式。

在MCS-51单片机一般常用内部时钟方式,也就是在XTAL1和XTAL2之间连接晶体震荡器与电容构成稳定的自激振荡器,用示波器可以观察到XTAL2输出的时钟信号。

晶体和电容决定了单片机的工作时间精度为1微秒。

晶体可在1.2-12MHz之间选择。

MCS-51单片机在通常应用情况下,使用震荡频率为6MHZ的石英晶体,而12MHZ频率的警惕主要是在高速串行通信情况下才使用,在这里我用的是12MHZ石英晶体。

对电容无严格要求,但它的取值对振荡频率输出的稳定性、大小及振荡电路起振速度有一点影响。

外部时钟方式是把外部震荡信号源直接接入XTAL1或XTAL2,有时还要接一个上拉电阻。

在XTAL1和XTAL2之间连接晶体震荡器与电容构成稳定的自激振荡器,电路图见附录2图3所示。

2.4复位电路

MCS-51单片机的复位是靠外部电路实现的。

MCS-51单片机工作之后,只要在他的RST引线上加载10ms以上的高点平,单片机就能有效地复位。

MCS-51单片机通常有上电自动复位﹑按键复位﹑手动加按钮复位﹑脉冲复位四种方式,本设计采用了自动上电复位方式。

复位电路如图3所示,上电瞬间,RC电路充电,RST引线出现正脉冲,只要RST保持10ms以上的高电平,就能使单片机有效的复位。

电路图见附录2图4所示。

2.5显示电路

显示电路既可以选用液晶显示器,也可以选用数码管显示。

数码管主要是用于数字的显示。

数码管有共阴和共阳的区分,单片机都可以进行驱动,但是驱动的方法不同。

而数码管显示又有静态和动态两种显示方式,其中静态显示程序简单,显示比较稳定,但占用I\O口较多;

动态显示的程序比较复杂,所使用的端口较少,可以节省I/O口,在本设计中采用的是动态显示。

显示电路见附录2图5所示。

共阳极数码管的段码表:

1

3

4

0C0H

0F9H

0A4H

0B0H

99H

5

6

7

8

9

92H

82H

0F8H

80H

90H

2.6开关控制电路模块

见附录2图6所示

第三章软件设计

3.1设计思想

因为秒表设计相对较为简单,因此在软件设计中我们一般采用模块化程序设计的方法。

模块是一个具有独立功能的程序,可以单独设计、调试与管理,模块可分为功能模块和控制模块两类。

我们通过模块化程序设计可按适当的原则把一个情况复杂、规模较大的程序系统划分为一个个较小的、功能相关而又相对独立的模块。

每个小的模块完成一个确定的功能,在这些小的模块之间建立必要的联系,互相协作完成整个程序要完成的功能。

它具有明显的优点,把一个多功能的复杂的程序划分为若干个简单的、功能单一的程序模块,有利于程序的设计和调试,有利于程序的优化和分工,提高了程序的阅读性和可靠性,使程序的结构层次一目了然。

其中的模块即为子程序,子程序是功能独立的程序段。

子程序的基本思想是编写一次,可以重复使用。

子程序的形式可以是一个程序文件,也可以是一个过程或函数。

子程序总被其他程序调用而不单独执行,这与主程序相对。

这个主程序也是由多个子程序模块组成,各程序模块都要完成一个明确的任务,实现某个具体的功能,、快加、复位,计数和显示。

3.2系统流程图

3.3源程序代码及注解

3.3.1主程序

3.3.1.1对定时器T1﹑T0的工作模式进行设定,分别设定为工作模式一,并对两个工作定时器初始化,分别赋初值定时10

3.3.1.2在主程序中设置了九个工作寄存区,分别为:

20H,用于00~99秒的记数暂存区;

30H,31H分别用于寄存要显示的十位和个位的两个数字,40H﹑50H用于存储循环记数个数,41H﹑42H﹑43H﹑44H作为记录四个相对独立时间的工作寄存区另外还用了一个间接寄存器R1,用于访问以上四个工作寄存区。

对以上的工作区﹑相应的中断控制位进行初始化。

3.3.2显示程序

作用:

完成符号和数值的显示及输出。

该设计中应用两位一体的数码管分别动态显示十位和个位的数字,具体设计思路如下:

用AT89S51芯片的P0口接数码管的显示位A﹑B﹑C﹑D﹑E﹑F﹑G﹑DP八个引脚,用P2口的P2.6﹑P2.7接数码管的两个选通引脚,作为十位和个位动态显示的选通信号输入端,低电平有效。

当将要显示的时间分别送入30H﹑31H时,让选通信号有效进行动态循环显示,利用了查表操作功能,只是两位的显示时间间隔短而人眼分辨不出来,因此认为是连续显示的。

3.3.3开关控制程序

完成各键功能的转换,控制CPU的工作过程﹑调用显示程序控制显示输出,在按键过程中增加了防抖动操作。

例如暂停键的设置:

START:

JB:

P1.0,L1;

P1.0=0,暂停

ACALLDELAY10

P1.0,L1

JNBP1.0,$

LJMPSTOP

3.3.4暂停程序

只需将定时器T1﹑T0的启停控制位TR0﹑TR1清零即可。

STOP:

CLRTR0

CLRTR1

ACALLDISP

SJMPHERE

3.3.5复位程序

将各寄存区重新置初始值即可。

FUWEI:

MOV40H,#00H

MOV41H,#00H

MOV30H,#00H

第四章软件仿真

4.1proteus软件仿真

利用proteus软件将电路元器件进行正确的连接,然后利用keil软件将汇编语言程序生成hex文件下载到单片机中,再将各元器件的数值改正确之后就可以点击左下角的小黑三角键进行仿真了。

点击“开始”(第四个)按键,可以看到数码管从一开始计数,每隔1秒自动加1,仿真图如下所示:

图4.1“开始”按键仿真结果

当点击“暂停”(第一个)按键时,LED数码管显示的数就停止不动了,仿真图如下图所示:

图4.2“暂停”按键仿真结果

当点击“复位”(第三个)按键时,数码管无论此时显示什么数字都被清零了,仿真电路图如下图所示:

图4.3“复位”按键仿真结果

4.2实物仿真

正确连接电路之后,利用220V转9V的变压给电路供电,即可进行实物的仿真,仿真结果如下:

当点击“开始”按键时,LED数码管开始从1计时,每隔一秒自动加一,实物仿真如下图所示:

图4.4“开始”按键实物仿真

当点击“暂停”按键时,LED数码管停止计数,显示当前数值,实物仿真如下图所示:

图4.5“暂停”按键实物仿真

当“复位”按键按下时,LED数码管清零,回到“00”状态实物仿真如下图所示:

图4.6“复位”按键实物仿真

第五章心得体会

通过这次单片机课程设计,我不仅加深了对单片机理论的理解,将理论很好地应用到实际当中去,而且我还学会了如何去培养我们的创新精神,独立自主的去完成一个设计。

这次设计也让我深深的感到仅在课堂上的学到的知识是远远不够的,课下我们应该多到图书馆或网上多了解一下其它的东西,同时更应该加强我们的动手能力的训练,因为学习就是为了将知识应用到生活中,造福人类。

在这次设计中我认真思考了一个问题,那就是未来的发展方向。

因为要考研,所以我们就又面临了一次选择,和高考时报志愿一样,然而现在更多了一些理性和成熟。

我曾经想过以后要么当老师,要么搞科研。

然而,课程设计的过程让我认识到搞科研不仅要有扎实的理论知识,更要有创新的意识和热情,喜欢动手,不怕动手,因为真正搞科研的人都有一种不怕失败的精神,敢于去挑战。

同时,更重要的是,在这一设计中,我学会了坚持不懈,不轻易言弃。

设计过程,也好比是我们人类成长的历程,常有一些不如意,也许这就是在对我们提出了挑战,勇敢过,也战胜了,胜利的钟声也就一定会为我们而敲响。

这个题目整体来看思路并不复杂,所以设计起来没有太大的困难。

包括单片机的选择,震荡电路,时钟电路,显示电路这些基本电路的设计都是我们在课堂上老师讲到的内容。

关键是软件部分的设计,如果把握不好的话思路就会很凌乱,让人一时摸不着头脑。

经过几天的思索,我们就讨论先把整体设计思路给列一下,然后再一块一块的设计,这样设计起来就容易了很多,当整个程序出来后我就怀着激动的心情进行仿真,发现还是存在很多错误,但经过多次调试后终于成功了。

参考文献

附录

附录1实验程序

ORG0000H

LJMPMAIN

ORG000BH

LJMPTIME1

ORG0013H

LJMPZHDUAN

ORG001BH

LJMPTIME10

ORG0100H

MAIN:

MOVTMOD,#11H

MOVTH1,#0D8H;

定时10MS

MOVTL1,#0F0H

MOVTH0,#0D8H;

MOVTL0,#0F0H

MOV20H,#00H;

记数暂存

MOV21H,#00H

MOV30H,#00H;

显示暂存

MOV31H,#00H

MOV40H,#100

MOV41H,#00H;

计数区

MOV42H,#00H

MOV43H,#00H

MOV44H,#00H

MOV50H,#04H

MOVR1,#41H

SETBEA

SETBEX1

SETBET1

SETBET0

CLRPT0

CLRPT1

SETBPX1

SETBIT1

MOVP0,#0FFH

CLRTR1

CLR7FH

ML1:

ACALLDISP

JBP1.0,L1;

P1.0=0,暂停

ACALLDELAY10

JBP1.0,L1

LJMPSTOP

L1:

JBP1.1,L2;

P1.1=0,复位

JBP1.1,L2

JNBP1.1,$

LJMPFUWEI

L2:

JBP1.2,L3;

P1.2=0,快加

JBP1.2,L3

JNBP1.2,$

LJMPKJIA

L3:

JBP1.3,L4;

P1.3=0,计数

JBP1.3,L4

JNBP1.3,$

LJMPJISHU

L4:

JBP1.4,L;

P1.4=0,翻页

JBP1.4,L

JNBP1.4,$

LJMPFANYE

L:

SJMPHERE

CLRTR0;

暂停程序

ACALLDISP

SJMPHERE

JISHU:

MOVA,20H;

计数程序

MOV@R1,A

INCR1

DJNZ50H,HERE

MOVR1,#41H

SJMPSTOP

FANYE:

MOVA,@R1;

翻页程序

MOV20H,A

MOVB,#0AH

DIVAB

MOV31H,A

MOV30H,B

LCALLDISP

DECR1

MOVR1,#44H

复位程序

MOV30H,#00H

MOV20H,#00H

KJIA:

SETBTR1;

快加程序

CLRTR0

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2