关于走马观花灯的单片机实训报告

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

目录

1前言 (2)

2.总体设计........................................... 错误!未定义书签。

2.1系统总体设计要求............................... 错误!未定义书签。

2.2 系统总体设计图................................. 错误!未定义书签。

3.单片机运行的最小系统................................ 错误!未定义书签。

3.1 电源........................................... 错误!未定义书签。

3.2 晶振 (3)

3.3复位电路 (3)

4.可以调控的走马灯硬件电路模块 (4)

4.1 系统总原理图 (4)

4.2 按键模块 (5)

4.3 LED显示模块 (5)

4.4 数码管模块 (6)

5系统软件设计 (9)

5.1软件程序设计流程图 (9)

5.2 C语言程序设计 (9)

6软件仿真............................................. 错误!未定义书签。7软硬件调试出现的问题及解决办法 (14)

8实训体会............................................. 错误!未定义书签。9参考文献.. (15)

10致谢 (15)

前言

众所周知,走马灯以其绚丽的色彩赢得人们喜爱,在人们的日常生活中很常见,并在一些特定的节日里,重要场合中起着绚烂节日气氛,带给人们欢乐的作用。可以调控的走马灯打破常规走马灯闪烁固定变化的现状,可根据人们不同的意愿进行编程设计出想要的变换的色彩效果。

2总体设计

2.1设计方案

1.显示效果使用16个LED。

2、设置三个按键,K1-模式键,通过按键调整显示结果,要求有8种模式K2加速键,提高走马灯显示效果的速度;K3-减速键,放慢走马灯的显示效果速度;

3、8种模式通过一个共阳型数码管显示出来,比如,走马灯的显示效果为模

式一时,数码管显示数字“1”。

2.2系统总体设计图如下:

3.单片机运行的最小系统

3.1电源

电源电路采用的是USB 母口,提供+5V 的电压。其有四个引脚,1引脚接的是电源,4引脚接地。由于USB 接口使用的是开关电源,不是很稳定的。接10UF 的去耦电容起到缓冲的作用,可以得到稳定的+5V 电压。把电流比做水流,水流很急,但去耦电容就像一条水沟,可以缓冲水流。电容的作用是蓄能的作用。

10UF GND

电源电路

3.2晶振

晶振为单片机提供时钟信号。

C2

30pF

30pF

C3

晶振电路

3.3复位电路

单片机在启动时都需要复位,以使CPU及系统各部件处于确定的初始状态,并从初态开始工作。89系列单片机的复位信号是从RST引脚输入到芯片内的施密特触发器中的。当系统处于正常工作状态时,且振荡器稳定后,如果RST引脚上有一个高电平并维持2个机器周期(24个振荡周期)以上,则CPU就可以响应并将系统复位。单片机系统的复位方式有:手动按钮复位和上电复位。

复位电路

4可以调控的走马灯硬件电路模块

4.1系统总原理图如下

系统总原理图4.2按键模块

按键模块

按键模块,使用P3.0 ,P3.1,P3.2分别接入开关S1,S2,S3。当按键按下后呈低电平,表示系统中有控制按键按下。

4.3LED显示模块

LED显示模块采用16个发光二极管并联在电源上,其中一边8个二极管接在P1口上,另外8个二极管接在P0口,上拉电阻与之分别并联。

LED显示模块

4.4数码管显示模块

发光二极管显示管简称LED,具有结构简单、价格低廉、使用方便、耗电少、与单片机接口容易等特点,在单片机应用系统使用非常普遍,一位共阳数码管结构如下。

一位共阳数码管

LED数码显示器由七段条形的发光二极管组成“”字形显示字段,用一只圆形的发光二极管做小数点。LED数码显示器中,通常将各段发光二极管的阴极或阳极连在一起做公共端,这样可以使驱动电路简单。共阳极数码管是指发光二极管的阳极都与正极接在一起,引脚接输出端,故低电平有效,其原理图如下;

共阳极数码管原理图

共阳极的管脚示意图如下;

共阳极管脚示意图

要使LED数码管显示数字,只要点亮相应字段的发光二极管即可。如要显示“1”,点亮b、c段;要显示“0”,点亮a、b、c、d、e、f段。从图中不难看出,对于共阳极数码管,点亮字段则用低电平“0”来表示,所以低电平有效。这样我们就可以把要显示的数字与一串二进制代码对应起来,即对LED数码显示器实现编码。由于这种编码是与显示器结构相对应的,因此不考虑小数点的编码只有七位,常称为七段显示码;

如果对小数点也进行编码,则称为八段显示码。常用字符的八段显示码如下图所示;

数码管模块的原理图如下

5系统软件设计

5.1软件程序设计流程图

软件程序设计主要由开始、初始化、主程序、以及延时程序等组成。其程序流程如下图所示:

图中K1键用来选择模式的,初始时运行模式0,按一次运行模式1,以此类推按7次则云行模式7,当再一次按下时又运行模式0。K2键用来加速按的次数越多则速度越快。K3用来减速同K2按的越多则越慢。速度的选择可见附录4程序中的调速表,程序通过不同的顺序来改变速度。

图中数码管的数字显示是根据K1的模式选择的,初始时数码管显示0,程序运行模式0,同理当运行模式7时,则数码管显示7。

5.2 C语言程序设计

//

// C语言程序清单:

相关文档
最新文档