单片机实验报告花样流水灯

                      

电子工艺学

考试作品报告

作品名称:  花样流水灯        

姓    名:          

专业班级:  电信1105      

学    号:      

中南大学物理与电子学院


第一章        系统整体概述…………………………………………………………

第二章        硬件设计………………………………………………………………

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

第四章        调试与分析……………………………………………………………

第五章        制作感受………………………………………………………………


                              【摘要】

   当今时代的智能控制电子技术,给人们的生活带来了方便和舒适,而每到晚上五颜六色的霓虹灯则把我们的城市点缀得格外迷人,为人们生活增添了不少色彩。  制作流水灯的方法有很多种,有传统的分立元件,由数字逻辑电路构成的控制系统和单片机智能控制系统等。本设计介绍一种简单实用的单片机花样流水灯设计与制作,采用基于单片机AT89C52和发光二极管、晶振、复位、电源等电路以及必要的软件组成的以AT89C52为核心,辅以简单的数码管等设备和必要的电路,设计了一款简易的流水灯电路板,并编写简单的程序,使其能够自动工作。  本设计用AT89C52单片机为核心自制一款简易的花样流水灯,并介绍了其软件编程仿真及电路焊接实现,在实践中体验单片机的自动控制功能。该设计具有实际意义,可以在广告业、媒体宣传、装饰业等领域得到广泛应用。      关键字:AT89C52 单片机  流水灯  数码管        

 AT89C52单片机概述    

AT89C52是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦 写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元。AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C52可以按照常规方法进行编程。

第一章、系统整体概述

设计内容和目的

1)简单I/O引脚的输出

2)掌握软件延时编程方法

3)简单按键输入捕获判断

在AT89S52-Ⅰ开发板上实现16个发光LED“流水”的现象,并通过编写程序控制流水现象。

   硬件设计电路的元件清单

                 第二章、硬件设计

2.1系统硬件总电路构成及原理

实现本设计要求的具体功能,可以选用STC89C52单片机及外围器件构成最小控制系统,16个发光二极管按一定顺序点亮。

2.2 主控制部分——STC89C52单片机简介

1 STC89C52实物图,管脚图

STC89C52是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash存储器。STC89C52使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 具有以下标准功能: 8k字节Flash,512字节RAM, 32 位I/O 口线,看门狗定时器,内置4KB EEPROM,MAX810复位电路,3个16 位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全双工串行口。另外 STC89C52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35MHz,6T/12T可选。

2 特性分析

STC89C52RC单片机:

8K字节程序存储空间;

512字节数据存储空间;

内带2K字节EEPROM存储空间;

可直接使用串口下载;

AT89S52单片机:

8K字节程序存储空间;

256字节数据存储空间;

没有内带EEPROM存储空间;

参数

1. 增强型8051单片机,6 时钟/机器周期和12 时钟/机器周期可以任意 选择,指令代码完全兼容传统8051.[2]

2. 工作电压:5.5V~3.3V(5V单片机)/3.8V~2.0V(3V 单片机)

3.工作频率范围:0~40MHz,相当于普通8051 的0~80MHz,实际工作 频率可达48MHz

4. 用户应用程序空间为8K字节

5. 片上集成512 字节RAM

6. 通用I/O 口(32 个),复位后为:P0/P1/P2/P3 是准双向口/弱上拉, P0 口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为 I/O 口用时,需加上拉电阻。

7. ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无 需专用仿真器,可通过串口(RxD/P3.0,TxD/P3.1)直接下载用户程 序,数秒即可完成一片

8. 具有EEPROM 功能

9. 共3 个16 位定时器/计数器。即定时器T0、T1、T2

10.外部中断4 路,下降沿中断或低电平触发电路,Power Down 模式可 由外部中断低电平触发中断方式唤醒

11. 通用异步串行口(UART),还可用定时器软件实现多个UART

12. 工作温度范围:-40~+85℃(工业级)/0~75℃(商业级)

13. PDIP封装

2.2.2  51单片机的串行接口工作方式

51单片机的串行接口有四种工作方式。方式0是将SBUF作为8位同步移位寄存器使用(固定波特率);方式1是10位异步通信方式(可变波特率);方式2是11位异步通信方式(固定波特率);方式3是11位异步通信方式(可变波特率)。

        

图 3.2 串行接口与单片机的连接

 2.3其它器件

晶体振荡器

简介

器件,它的基本构成大致是:从一块石英晶体上按一定方位角切下薄片(简称为晶片,石英晶体谐振器,简称为石英晶体或晶体、晶振[1];而在封装内部添加IC组成振荡电路的晶体元件称为晶体振荡器。其产品一般用金属外壳封装,也有用玻璃壳、陶瓷或塑料封装的。

主要参数

工作原理

计算机都有个计时电路,尽管一般使用“时钟”这个词来表示这些设备,但它们实际上并不是通常意义的时钟,把它们称为计时器(timer)可能更恰当一点。计算机的计时器通常是一个精密加工过的石英晶体,石英晶体在其张力限度内以一定的频率振荡,这种频率取决于晶体本身如何切割及其受到张力的大小。有两个寄存器与每个石英晶体相关联,一个计数器(counter)和一个保持寄存器(holdingregister)。石英晶体的每次振荡使计数器减1。当计数器减为0时,产生一个中断,计数器从保持计数器中重新装入初始值。这种方法使得对一个计时器进行编程,令其每秒产生60次中断(或者以任何其它希望的频率产生中断)成为可能。每次中断称为一个时钟嘀嗒(clocktick)。

晶振在电气上可以等效成一个电容和一个电阻并联再串联一个电容的二端网络,电工学上这个网络有两个谐振点,以频率的高低分其中较低的频率为串联谐振,较高的频率为并联谐振。由于晶体自身的特性致使这两个频率的距离相当的接近,在这个极窄的频率范围内,晶振等效为一个电感,所以只要晶振的两端并联上合适的电容它就会组成并联谐振电路。这个并联谐振电路加到一个负反馈电路中就可以构成正弦波振荡电路,由于晶振等效为电感的频率范围很窄,所以即使其他元件的参数变化很大,这个振荡器的频率也不会有很大的变化。晶振有一个重要的参数,那就是负载电容值,选择与负载电容值相等的并联电容,就可以得到晶振标称的谐振频率。一般的晶振振荡电路都是在一个反相放大器(注意是放大器不是反相器)的两端接入晶振,再有两个电容分别接到晶振的两端,每个电容的另一端再接到地,这两个电容串联的容量值就应该等于负载电容,请注意一般IC的引脚都有等效输入电容,这个不能忽略。一般的晶振的负载电容为15p或12.5p,如果再考虑元件引脚的等效输入电容,则两个22p的电容构成晶振的振荡电路就是比较好的选择。

2.4最小系统介绍

1.51单片机最小系统复位电路的极性电容C1的大小直接影响单片机的复位时间,一般采用10~30uF,51单片机最小系统容值越大需要的复位时间越短。  

2.51单片机最小系统晶振Y1也可以采用6MHz或者11.0592MHz,在正常工作的情况下可以采用更高频率的晶振,51单片机最小系统晶振的振荡频率直接影响单片机的处理速度,频率越大处理速度越快。   3.51单片机最小系统起振电容C2、C3一般采用15~33pF,并且电容离晶振越近越好,晶振离单片机越近越好 

4.P0口为开漏输出,作为输出口时需加上拉电阻,阻值一般为10k。其他接口内部有上拉电阻,作为输出口时不需外加上拉电阻。  设置为定时器模式时,加1计数器是对内部机器周期计数(1个机器周期等于12个振荡周期,即计数频率为晶振频率的1/12)。计数值N乘以机器周期Tcy就是定时时间t。  

5.设置为计数器模式时,外部事件计数脉冲由T0或T1引脚输入到计数器。在每个机器周期的S5P2期间采样T0、T1引脚电平。当某周期采样到一高电平输入,而下一周期又采样到一低电平时,则计数器加1,更新的计数值在下一个机器周期的S3P1期间装入计数器。由于检测一个从1到0的下降沿需要2个机器周期,因此要求被采样的电平至少要维持一个机器周期。当晶振频率为12MHz时,最高计数频率不超过1/2MHz,即计数脉冲的周期要大于2 ms。 

6. 标识符号地址寄存器名称 P3 0B0H I/O口3寄存器

7. PCON 87H 电源控制及波特率选择寄存器

8. SCON 98H 串行口控制寄存器

9. SBUF 99H 串行数据缓冲寄存器

10.TCON 88H 定时控制寄存器 

11.TMOD 89H 定时器方式选择寄存器

12.TL0 8AH 定时器0低8位

13.TH0 8CH 定时器0高8位

14.TL1 8BH 定时器1低8位

15.TH1 8DH 定时器1高8位

原理图

Pcb图

实物图

第三章 软件设计

源程序

/*  名称:花样流水灯

说明:16LED分两组

按预设的多种花样变换显示

*/

#include<reg52.h>

#define uchar unsigned char

#define uint unsigned int

uchar code Pattern_P1[]=

{

0xfc,0xf9,0xf3,0xe7,0xcf,0x9f,0x3f,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,

0xe7,0xdb,0xbd,0x7e,0xbd,0xdb,0xe7,0xff,0xe7,0xc3,0x81,0x00,0x81,0xc3,0xe7,0xff,

0xaa,0x55,0x18,0xff,0xf0,0x0f,0x00,0xff,0xf8,0xf1,0xe3,0xc7,0x8f,0x1f,0x3f,0x7f,

0x7f,0x3f,0x1f,0x8f,0xc7,0xe3,0xf1,0xf8,0xff,0x00,0x00,0xff,0xff,0x0f,0xf0,0xff,

0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,

0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,

0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,

0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,

0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff

};

uchar code Pattern_P2[]=

{

0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfc,0xf9,0xf3,0xe7,0xcf,0x9f,0x3f,0xff,

0xe7,0xdb,0xbd,0x7e,0xbd,0xdb,0xe7,0xff,0xe7,0xc3,0x81,0x00,0x81,0xc3,0xe7,0xff,

0xaa,0x55,0x18,0xff,0xf0,0x0f,0x00,0xff,0xf8,0xf1,0xe3,0xc7,0x8f,0x1f,0x3f,0x7f,

0x7f,0x3f,0x1f,0x8f,0xc7,0xe3,0xf1,0xf8,0xff,0x00,0x00,0xff,0xff,0x0f,0xf0,0xff,

0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f,

0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,

0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00,

0x00,0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,

0x00,0xff,0x00,0xff,0x00,0xff,0x00,0xff

};

//延时

void DelayMS(uint x)

{

uchar i;

while(x--)

{

for(i=0;i<120;i++);

}

}

//主程序

void main()

{

uchar i;

while(1)

{ //从数组中读取数据送至P0P2口显示

for(i=0;i<136;i++)

{

P1=Pattern_P1[i];

P2=Pattern_P2[i];

DelayMS(100);

}

}

}

四 、调试与分析

   

    此次实验我经过了多次修改才最终取得成功。首先,我先查阅了大量的书籍,及百度了一些前人的设计作为参考,然后完成了自己的原理图。然后用电脑画pcb板,尝试了好几种布线,由于是双面板,所以布线相对比单面要容易一些。画好pcb板,然后去604洗板子,由于时值期末高峰期,人非常之多,等了大约30分钟,才轮到我洗。由于洗的次数不多,不知道显影剂的量,导致最后洗的板子上面的绿线有好多缺口,十分不美观,而且在连接电路时,我见其中有好多处的铜线好像是断裂的,为了实验能够一步成功,我用万用表把自己的线一个一个的检测了一遍,结果果然发现了有两块断路。最终用烙铁小心翼翼的把它焊接好。之后在焊接元器件时,由于有几条线非常密集,导致焊接后连到一起了,形成了新的连通,这是肯定会出错的。而且稍有不慎,可能会烧到器件,甚至可能有安全方面的问题。于是我找来了那个吸焊器,找旁边的同学配合了一下,成功地把不该有的连同弄断了。之后在把程序导入到单片机后,第一次调试时发光2级管一个都没亮,这时,我料想肯定是设计图失误了,而且肯定是一个比较大的失误,要不然不可能一个灯都不亮,于是我仔细检查,发现原来是发光二极管正负极全接反了,于是我仔细把锡吸走,把灯全部变过来,最终试验成功了,完成了预期的变化。

第五章、制作感受

这次期末设计让我受益匪浅。通过这次设计我对自己在本学期里所学的知识得到了回顾,并充分发挥对所学知识的理解和对毕业设计的思考及书面表达能力,最终完成了这份实验报告。撰写实验的过程也是专业知识的学习过程,它使我运用已有的专业基础知识,对其进行设计,分析和解决一个理论问题或实际问题,把知识转化为能力的实际训练。培养了我运用所学知识解决实际问题的能力。

通过这次设计我发现,只有理论水平提高了,才能够将课本知识与实践相整合,理论知识服务于教学实践,以增强自己的动手能力。这个设计十分有意义 我获得很深刻的经验。通过这次毕业设计,我们知道了理论和实际的距离,也知道了理论和实际想结合的重要性,,也从中得知了很多书本上无法得知的知识。

我们的学习不但要立足于书本,以解决理论和实际教学中的实际问题为目的,还要以实践相结合,理论问题即实践课题,解决问题即课程研究,学生自己就是一个专家,通过自己的手来解决问题比用脑子解决问题更加深刻。学习就应该采取理论与实践结合的方式,理论的问题,也就是实践性的课题。这种做法既有助于完成理论知识的巩固,又有助于带动实践,解决实际问题,加强我们的动手能力和解决问题的能力。

这次花样流水灯的设计作为自己在大学里做的第二件实际的东西,使自己受益很多。以前总是感觉单片机的书本设计都是很简单的样子,以为实际很简单,但是当自己做的时候才发现,自己动起手来并不是那么的容易。首先为了使画出来的板子美观。只是画图布局就思考了好久。最头疼的是电路的调试过程,真的需要很大的耐心,当看着自己辛辛苦苦做出的作品没有它本来应有的功能时,有很大的挫败感。但这更培养了自己的耐心与决心。另外这次的设计还让我明白了,不能闭门造车,要多向学长、同学请教,勤于查资料,勤于实践,才能提高自己动手能力,考虑问题、思考问题的能力,这次交通信号灯的制作使自己各方面的能力都有所提高,很高兴这门课程的开设,给了我这么一个机会,我相信自己在以后的日子里会再接再励。

     这个设计过程中,我遇到过许多次失败的考验,就比如,自己对实际生活中的交通秩序的不了解给整个设计带来的困扰,真想要就此罢休,然而,就在想要放弃的那一刻,我明白了,原来结果并不那么重要,我们更应该注重的是这一整个过程。于是,我坚持了下来。当然最终,这个设计很成功,主要体现在,这一整个系统,程序由自己独立完成。

    通过单片机课程设计,我还学会了如何去培养我们的创新精神,从而不断地战胜自己,超越自己。创新,是要我们学会将理论很好地联系实际,并不断地去开动自己的大脑,从为人类造福的意愿出发,做自己力所能及的,别人却没想到的事。使之不断地战胜别人,超越前人。同时,更重要的是,我在这一设计过程中,学会了坚持不懈,不轻易言弃。设计过程,也好比是我们人类成长的历程,常有一些不如意,也许这就是在对我们提出了挑战,勇敢过,也战胜了,胜利的钟声也就一定会为我们而敲响。

参考文献

【1】张毅坤. 单片微型计算机原理及应用.西安电子科技大学出版社,1998.

【2】余锡存 曹国华.单片机原理及接口技术.西安电子科技大学出版社,2000.

【3】雷丽文 等.微机原理与接口技术.电子工业出版社,1997.

【4】吴黎明, 王桂棠, 洪添胜,等. 单片机原理及应用技术.科学出版社,2005.

【5】韩克, 柳秀山, 等. 电子技能与EDA 技术.暨南大学出版社, 2004.

【6】周润景. 张丽娜. 基PROTEUS的电路及单片机系统设计与仿真.航空航天大学出版社, 20## .

【7】张毅坤.单片微型计算机原理及应用.西安电子科技大学出版社,1998

【8】李鸿恩,熊国奎.数字电子技术.重庆大学出版社,1994

【9】胡宴如.模拟电子技术.高等教育出版社,2004

【10】《单片机原理与应用技术》主编:苏家健等 高等教育出版社出版

相关推荐