技术文档

单片机的广告灯设计 电子仿真:51单片机实现LED灯闪烁

小编 2025-08-20 技术文档 23 0

电子仿真:51单片机实现LED灯闪烁

昨天看到一篇关于今日头条CEO张一鸣的访谈,其中谈到他的大学专业,张总最开始也是学电子的,但由于不能广泛的接触电子产品,更不能进行开创性实验,因而最终转学软件。喜欢电子小伙伴的确实面临着一个这样的困境,不能很好的把自己想法以实物的方式展现出来。除了购买电子元器件之外,不知道你们都是怎么解决这个问题的?

电子仿真软件:Proteus

笔者认为对于没有条件的小伙伴,最好的办法是用电子仿真软件来模拟实验。需要软件的小伙伴可以私信笔者“Proteus”来获取 ,里面不仅有官方正版的软件、安装教程、汉化补丁、还有关于此软件的详细使用教程,如下图所示。至于Proteus到底是一个可以干什么的软件,现在不做解释,请往下看实验现象。

物料清单

笔者所选的是一个最基础、简单的单片机例子,需要的电子元器件自然不多,总共6种,清单如下

单片机89C51一个

电容3个

电阻两个

12M晶振一个

黄色LED灯一个

原理图

电路原理图如下,除了LED灯之外,其余的组成了单片机的最小系统,分别为晶振电路和复位电路,这个不需要我们去深究,因为它是单片机官方提前设计好的。LED灯的阳极接电源,当我们单片机P1.0输出高电平的时候,因为LED之间没有压差,所以此时LED灯是熄灭的;只有当P1.0输出低电平的时候,LED灯才可以被点亮。

程序

#include <reg52.h> //头文件

//Author:爱上半导体

//Date:2018年4月2日

#define uchar unsigned char //宏定义

#define uint unsigned int //宏定义

sbit LED = P1^0; //把P1.0赋值给LED

void main()

{

while(1)

{

LED = ~LED; //LED取反

DelayMS(150); //延时

}

}

程序烧录

程序是用Keil编写的,完成之后需要生成hex格式的文件,然后打开Proteus,双击单片机,之后出现如下界面,然后点击Program File后面的文件夹,选择我们刚才生成的hex文件,至此大功告成。

实验现象

实验现象如下视频所示,LED灯以3.3Hz的频率闪烁。

视频加载中...

源文件

为了让小伙伴们更好的学到电子知识,关于此次实验的电路图仿真源文件和程序源文件,笔者已经给大家打包,需要的私信“LED”便可获取。

如果不想用软件仿真,也可以购买51单片机开发板,这时候可能又要说我加广告了,笔者通过比较全网的单片机,最后选出了一款“普众科技”的51单片机开发板,在同等价位上,这款开发板的外设最多,之所以如此廉价,并不是它的质量不行,而是因为他家的单片机出货量最大,只有这样才能压缩成本,把价格压下去!有兴趣需要的小伙伴可以考虑一下。

#pgc-card .pgc-card-href { text-decoration: none; outline: none; display: block; width: 100%; height: 100%; } #pgc-card .pgc-card-href:hover { text-decoration: none; } /*pc 样式*/ .pgc-card { box-sizing: border-box; height: 164px; border: 1px solid #e8e8e8; position: relative; padding: 20px 94px 12px 180px; overflow: hidden; } .pgc-card::after { content: " "; display: block; border-left: 1px solid #e8e8e8; height: 120px; position: absolute; right: 76px; top: 20px; } .pgc-cover { position: absolute; width: 162px; height: 162px; top: 0; left: 0; background-size: cover; } .pgc-content { overflow: hidden; position: relative; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); } .pgc-content-title { font-size: 18px; color: #222; line-height: 1; font-weight: bold; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .pgc-content-desc { font-size: 14px; color: #444; overflow: hidden; text-overflow: ellipsis; padding-top: 9px; overflow: hidden; line-height: 1.2em; display: -webkit-inline-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; } .pgc-content-price { font-size: 22px; color: #f85959; padding-top: 18px; line-height: 1em; } .pgc-card-buy { width: 75px; position: absolute; right: 0; top: 50px; color: #406599; font-size: 14px; text-align: center; } .pgc-buy-text { padding-top: 10px; } .pgc-icon-buy { height: 23px; width: 20px; display: inline-block; background: url(https://lf6-cdn-tos.bytescm.com/obj/cdn-static-resource/pgc/v2/pgc_tpl/static/image/commodity_buy_f2b4d1a.png); } 普中科技 51单片机开发板 51单片机学习板 AVR ARM STM32 实验板 ¥121 购买

点阵广告牌的设计(单片机应用技术课程报告)

单片机应用技术课程报告

实验名称

点阵广告牌的设计

实验时间

2020年7月9日

学生姓名

实验地点

钉钉群线上

同组人员

专业班级

1、实验目的

1、会设计简单的点阵的广告牌;

2、 通过LED点阵电子广告牌的设计,了解点阵的结构和原理、点阵字型码的计算,进一步理解LED动态显示原理并推广到点阵的显示中。

3、能使用工具软件绘制LED点阵显示器的接口电路、能编写动态广告屏的程序。

2、任务设计要求

采用STC89C52单片机构建最小系统,采用8*8点阵控制电路,大家根据文字取模软件取得汉字的字形码。编程实现在8*8点阵上的循环显示“0、1、2、3、4、5、6、7、8、9

3、总体设计方案

1、结构原理:现以8×8单色点阵为例介绍点阵显示器原理,如图3所示。水平方向的线Y0、Y1、Y2、Y3、Y4、Y5、Y6、Y7被称为行线,与LED的阳极相连,每一行上的8个LED的阳极均接在对应行的行线上,行线间彼此绝缘。垂直方向的线X0、X1、X2、X3、X4、X5、X6、X7称为列线,与LED的阴极相连,各列之间相互绝缘。

若在某行线上加高电平(用“1”表示),同时在某列线上加低电平(用“0”表示),则对应行线和列线的交叉点位置的LED将被点亮。如Y0为1,X0为0,则右上角的LED点亮;若Y3为1,X0到X7均为0,则Y3行的8个LED全亮。

LED点阵显示器的显示原理:看图上图可知,要想显示某个数字、字符或简单的汉字,只需将相应位置的二极管点亮即可,例如显示大写字母“A”,如下图所示,可让字符位置的二极管点亮。

要想显示字母“A”,造型中的二极管同时点亮是不可能的,这点和LED数码管动态显示的道理是一样的。那就只能采用分时显示,可采用逐行扫描或者逐列扫描。所谓的逐行扫描就是行线送出扫描信号,0~7行每次只有1行是高电平,同时在列线送出扫描码,8行采用分时显示。逐列扫描则是列线送出扫描信号, X0~X7每次只有1列是低电平,同时行线送出扫描码,8列采用分时显示。

在PROTEUS的元件库中找到“MATRIX- 8×8-RED”元件,然后用电源端子“POWER”和地端子“GROUND”来测试点阵显示器的管脚对应的是二极管的正负极性,进而测试出列线和行线。在硬件连线时,行线、列线和I/O口可以随意连接,但程序和硬件要对应起来,也就是说,行扫描还是列扫描可完全由程序来决定。在上图中,经过测试,点阵显示器右边的管脚为列信号,从上至下依次为0~7列(左边为第0列),而左边的管脚为行信号,从下而上依次为0~7行(下面为第0行)。

4、硬件电路设计

5、软件程序设计

(1)、程序设计思路(流程图绘制)

(2)程序清单

#include <reg51.h>

#include <intrins.h>

#define uchar unsigned char

uchar code LEDA[ ]= {0x00,0x3e,0x41,0x41,0x41,0x3e,0x00,0x00, //0

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

void delay03s(void)

{

uchar i,j;

for(i=20;i>0;i--)

for(j=30;j>0;j--);

}

void main(void) /*主函数*/

{

uchar k,n, m,i;

while(1)

{

{for(n=0;n<10;n++)

{for(k=0;k<80;k++)

{m=0xfe;

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

{P3=m;

P0=~LEDA[n*8+i];

delay03s();

m=_crol_(m,1);

}}}}}

性能指标测试及结果分析针对以上运行结果的原因进行分析,开关同时接高电平时,所有灯同时开启,显示出数字,由0-9变化。

7、项目总结

在本设计中我用简短的汇编程序在LED显示屏实现了汉字的左移滚动显示。在设计中采用的芯片有AT89C51、74LS373、74LS138、74HC154和4个16x16LED点阵显示器。其特点: 1.内容能从右向左浮动显示。2.硬件结构简单,应用广泛。3.LED数码管动态扫描显示,工作效率高,价格低廉等。通过本次(64x1 6位点阵LED)的设计,理论知识学习和实际设计的结合锻炼了我的综合运用所学的专业基础知识解决实际工程问题的能力,同时也提高我查阅文献资料、设计手册、设计规范以及电脑制图等其他专业能力水平,而且通过对整体的掌控,对局部的取舍,以及对细节的斟酌处理,都使我的能力得到了锻炼,经验得到了丰富。为后继的学习和工作奠定的基础。

8、项目设计报告成绩

指导教师签字:

年 月 日

相关问答

led户外投影 要怎么调形状?- 一起装修网

[回答]1:单片机控制LED的亮度,用的是PWM技术。用的也是PWM技术对三色LED进行调光的。2:这种调光方法为通过调制LED驱动电流来完成LED灯的调光,由于LED芯片...

单片机 工程师需具备哪些技能,市场需求大吗?

首先单片机工程师的市场需求应该是非常大的!现在基本上所有的电子产品都都用到单片机。只要有电子的地方基本上都需要有电子工程师或者单片机工程师的参与。要...

单片机 怎么对一个芯片操作-ZOL问答

单片机对外接芯片操作都是通过特定通讯接口比如:i2c/uart/spi等配置外接芯片的...你这是来提问的,还是来推销单片机的?还是做广告?这个挺好的,希望能采纳!!...

...告平台有哪些dsp 广告 投放?,DSP 广告 价格贵吗有经验的来说说?

[回答]你想做全面一点,放心一点的我推荐你了解下美誉传媒人家问的是DSP,你回答的是单片机,一看要么打广告,要么就是根本没学好DSP处理器采用哈佛结构和...

电灯 开关定时器该如何设置?- 一起装修网

[回答]或日按设定的程序循环工作,最短1分,最长168小时。日期选择:可设定每天相同,或不同,周一至周五相同等模式工作电压:AC220V/50Hz适用电压范围:160V-24...

怎么在电脑上制作led文字-ZOL问答

那个是需要软件才可以打字进去的。。有专门的软件程序操作的!LED显示版一般是单片机控制的,单片机可以在电脑上面编程,前提是你会编程。电脑安装对应软件...

斯坦李对于漫威电影有什么意义?

斯坦∙李(StanLee)斯坦∙李(StanLee)在好莱坞山的家中病倒后在医院去世,他的女儿今天证实了这一消息。最近几个月他的健康状况不佳,包括肺炎和心脏病。斯...

求关于随机争用仲裁系统 设计 和开发的论文有么

[回答]MCS51系列的单片机没有那么强大的功能(主要是可扩展的存储器有限),如果真要使用的话,可能要用好几片.2:现在的电梯都是PLC(可编程逻辑控制器)控制...

华北电力大学 自动化 就业方向 - 茶米 的回答 - 懂得

自动化涵盖面很广,电力主要是去电力公司,也就做做电力检测、控制,好点的就自己设计电力变幻和控制电路(自动化专业中的电力电子这门专业课会讲)。这...

温州瓯江学院怎样?

数学与应用数学培养目标:培养能在科技、教育和经济部门从事研究、教学工作或在生产经营及管理部门从事实际应用、开发研究和管理工作的高级专门人才。主要课...

猜你喜欢