您的当前位置:首页正文

基于单片机的LED跑马灯设计

2023-04-01 来源:好走旅游网
基于单片机的LED跑马灯设计陆璐

(江苏联合职业技术学院南京卫生分院,江苏南京,210038)

电子基础

摘要:本文主要介绍了用单片机STC89C52驱动LED,实现跑马灯效果的电路设计。通过理论分析设计出跑马灯硬件电路,用Keil C编写程序烧入单片机芯片内,同时使用Proteus仿真跑马灯的效果。在设计中,充分利用了STC89C52内部结构特点,实现了较好的实验效果。关键词:单片机;LED;跑马灯之一。本设计利用单片机跑马灯,又叫走马灯、串马灯,是中国传统节日的玩具编写的程序烧入单片机芯片内,以实现跑马灯的效果。

STC89C52驱动LED,将Keil C1 系统硬件电路设计

■ 1.1 总体框图

制LED本设计的总体思想是通过灯的显示,设计的总体框架如图STC89C52两部分组成。STC89C521单片机驱动和控

要由单片机和LED包含所示。该系统主分别连接32个IO口,

写入32个LED实现一对一的控制。将编写好的程序烧效果。STC89C52单片机内部,就能够实现特定要求的LED 图■ 1.2 单片机最小系统的组成1 设计总体框图单片机最小系统主要由三部分组成,分别是电源、复

2位电路和振荡电路表示。

[1]。一个完整的单片机最小系统可由图

模块,也就是电源部分,这是系统能够稳定运行的基础和前任何一个完整的电子制作,都必须提供一个稳定的供电

现程序跑飞的问题,为了解决这一问题,就需要给该系统配提。51系列单片机相比其他系列产品,更容易受到干扰出

备一个稳定的供电模块。本设计中通过的电源电压[2]。

USB接口提供稳定设备恢复到出厂的预设值状态。通过引脚复位电路的目的是使单片机内部的寄存器及一些存储

9RST获得高电平

实现复位于按键复位可控性稍强,比较适合样品制作或者实验室调试[3]。复位的方法包含上电复位和按键复位两种。由场合,本设计采用按键复位。将开关和复位电容并联,通过控制开关是否按下,从而使电容充放电,为当开关按下,电容放电,9脚RST9脚置高电平RST提供实现复位功能。需要的电平值。1,

图2 单片机最小系统系统共用一个晶振,便于各部分保持同步。本设计中使用晶振的作用是为系统提供基本的时钟信号。通常一个

12MHz片机的现外部振荡电路。C1、C218的晶体振荡器作为单片机和19脚之间接入晶振X1STC89C52和电容C1、C2的晶振。在单即可实号和晶振的频率一致,在设计中一般选用瓷片电容。的作用是微调频率,保持振荡信■ 1.3 跑马灯电路的实现

极发光二极管,将发光二极管有共阳极和共阴极两种。本设计中选用共阳

与电源电压发光二极管的亮灭,当VCC相连,如图32个发光二极管的正极连接在一起,并

IO口输出低电平时灯亮,输出高电3所示。由单片机的IO口控制

的主要作用是作为限流电阻使用。本设计中选用的发光二极平时灯灭。图3中主要元件有2.2kΩ的电阻和LED,电阻电阻,确保发光二极管能够工作在正常状态。

管规格是3mm,为使其能够正常工作,需要串联2.2kΩ的

www�ele169�com󰀁󰀁|󰀁󰀁83

电子基础一个工程,然后将需要的文件加入该工程内。Keil C51提供了方便。图4就是用Keil C51编写的本设计源程序。了强大的源文件库和开发调试工具,为设计者编写程序提供Proteus软件是英国Labcenter electronics 公司出版的EDA 工具软件[4]。市场上单片机仿真软件的种类很多,它既可以仿真单片机CPU内部的工作情况,也可以仿真单片机外围电路或者仿真没有连接Proteus软件在工作时,主要单片机的其它电路[5,6]。因此,是从工程的角度检查电路的工机某个寄存器内部单元数据的改变。Proteus软件的立足点Proteus软件的突出优点在于,作情况,而不仅仅局限于单片图3 LED电路2 系统软件设计

■ 2.1 Keil C51和Proteus 联合仿真的变化。图5表示了用Proteus软件仿真跑马灯电路的界面。是宏观的,而不是某个微小值

图5 Proteus软件界面■ 2.2 程序设计思路

对单片机P0、P1、P2、P3口赋值以实现不同的点亮效果。在C语言中,通过延时程序的编写以实现不同模式下的流

图4 Keil C软件界面本设计中包含跑马灯的若干模式,每一种模式都是通过

水灯效果。相比于用汇编语言编写程序,C语言的程序简单、易懂、可移植性强。

Keil C51是美国Keil Software公司出品的51系列兼

编程,采用C语言进行编程的原因是它具有简单紧凑、灵

在程序编写方面,本设计采用相对简单的C语言进行

容单片机C语言软件开发系统。与汇编语言相比,C语言的目前被广泛使用。用户在使用Keil C51软件时,首先新建84󰀁󰀁|󰀁󰀁电子制作󰀁󰀁󰀁󰀁2018年5月

功能更强大、结构更简单、可读性更好、维护更方便,因而

活方便、可移植性好等特点。程序编写过程当中采用数组、

(下转第62页)

取余、循环移位、移位运算、延时等方式来达成想要的效果。编程内容以九种模式为核心,控制LED跑马灯和数码管进

软件开发PCA降维的算法对西瓜音频的特征矩阵做降维处理:我们对西瓜音频的特征矩阵做主成份分析,使用主成份分析后表1得到的新特征矩阵来代替原来的西瓜音频的特征矩阵。为成份,将原数据的信息量保持在95%以上。降维效果如图3所示。神经网络模型集成学习方法鉴别分类器SoftmaxBPRdtree朴素贝叶斯训练样本误差67�88%67�15%66�48%测试样本误差57�20%57�01%55�75%保证尽量减少丢失原特征矩阵的信息,我们选取了8个主络需要非常庞大的数据量进行训练才能保证分类精度,且样本标签本身就存在较大的误差,所以在样本数量有限的情况下,该结果可以接受。实验结果展示了每种神经网络的判断结果,由于神经网78�14%65�14%70�25%76�88%60�57%53�98%5 结束语理,并将其用于西瓜特征的提取。采用MFCC提取后,通模型进行西瓜熟度的识别,并给出了相应的结果和误差,实图3 PCA降维效果对比本文详细介绍并研究了MFCC特征参数提取的算法原过PCA降维处理得到西瓜音频的特征。使用多种神经网络验结果表明MFCC提取的特征通过神经网络训练可以用于西瓜熟度的识别率。

参考文献特征送入神经网络模型进行训练的计算量就小的多,有利于模型的参数调整和西瓜熟度的识别。■ 4.2 实验2:西瓜音频的熟度识别

经过PCA降维后的新特征为8×24的矩阵。这时再将

根据西瓜音频识别西瓜熟度。在本文建立的基础上,可以进一步研究西瓜音频特征提取的优化,使用神经网络模型识别

签根据瓜农常年经验得到,存在较大误差。随后我们使用3000个西瓜音频样本进行训练, 500个西瓜音频样本进行本文使用了6种神经网络模型进行西瓜熟度的识别。

(上接第84页)

实验中,我们将熟度标签分为:不熟,熟和过熟,该标

* [1]余建潮,张瑞林.基于MFCC和LPCC的说话人识别[J].计* [2]王炳锡,屈丹,彭煊,侯风雷,王波,马占武.实用语音识* [3]主成分分析(PCA)原理详解[EB/OL]http://blog.jobbole.com/109015/.

别基础[M].北京:北京国防工业出版社.2005.129算机工程与设计,2009,30(5).

测试。为比较不同神经网络对西瓜音频的熟度识别的影响,

行九种变化方式,从而达到设计方案最终预期的效果。

3总结

* [2] 李飞光.单片机课程设计实例指导[M] .北京:北京航空航天* [3] 万光毅.单片机实验与实践教程[M] .北京:北京航空航天大* [4]王海燕,杨艳华.Proteus 和Keil 软件在单片机实验教学中的* [5]袁锋伟,赵立宏,朱慧玲,等.基于Proteus 的单片机课程* [6]叶建波,朱双东.基于Proteus 的单片机电路的虚拟仿真[J].电子工程师, 2008, 34( 11) : 23-24,67.

教学与实验改革[J].实验室研究与探索,2009( 7) : 125-127.应用[J] .实验室研究与探索,2012,31(5):88-91.学出版社,2005.大学出版社,2004.

长治学院学报,2017,34(5):47-49.

效果。硬件电路中用单片机与LED有序连接,通过IO口输实现了硬件与软件的衔接。

参考文献本文通过STC89C52单片机驱动LED,实现了跑马灯

出电平的高低控制LED的亮灭。软件中用Keil C编写程序,烧写进单片机中,同时用Proteus仿真跑马灯系统的效果,

62󰀁󰀁|󰀁󰀁电子制作󰀁󰀁󰀁󰀁2018年5月

* [1]白心爱,薛儒杰.基于STC89C51 单片机的气压开伞设计[J].

因篇幅问题不能全部显示,请点此查看更多更全内容