1. led
    led
    +关注
    关注 53
    文章 5853
    浏览量 458395
  2. 单片机电路
    +关注
    关注 0
    文章 3
    浏览量 5535
  3. 面包板
    +关注
    关注 1
    文章 9
    浏览量 7517

如何用单片机电路点亮led?

玩转单片机 2017-11-14 05:07 次阅读
前面介绍了很多概念知识,做了很多准备工作,从这一节开始,我们正式开始单片机的学习。我们将使用单片机完成一项非常简单的工作:点亮一个发光二极管(即LED:Light-Emitting Diode)。

LED简介

先简单介绍一下LED。LED是一种半导体器件,大家其实对LED并不陌生,各种电器的指示灯、手机键盘灯、LED液晶屏的背光、高亮LED手电筒等,都是通过LED发光的。LED有两种主要用途,一种是作为指示灯;另一种是照明。照明用的LED一般都是大功率LED,需要较大的电压电流才能正常工作。而这里我们要用到的则是用作指示灯的小功率LED。常见的小功率LED,在它的正负极加上3V左右的电压,就会发光,正常发光的时候,电流大概是2~5mA。这里要注意,LED有正负极之分,接反了不会发光。另外,电压也不可太高,那样会烧坏LED。关于LED更详细的介绍,大家可以参考电子元器件介绍之类的书籍。

电路设计

前面已经介绍了,单片机的IO口能输出高低电平,点亮LED就是通过IO口输出电平实现的。如果我们把LED的正极接在电源正极,负极接在单片机的一个IO口上。让单片机的IO口输出低电平,也就是接近0V的电压,这时LED两端有电压差,就能发光;如果IO口输出高电平,LED就会熄灭。 由于我们用的51单片机是5V供电,而LED需要3V电压,所以我们需要在LED上串联合适的电阻,否则会烧坏器件。我们可以选用P0~P3共32个IO口中的任何一个,这里选择的是P1.0。电路图如下,电阻取值推荐为330Ω ~ 1kΩ之间。 顺便附上电阻阻值的计算过程: 1、电阻和LED串联,LED点亮时总电压5V,LED上需要3V,所以电阻上电压是5-3=2V。 2、LED的电流为2~5mA,如果算成2mA,电阻上电压为2V,电流为2mA,根据欧姆定律,所以阻值应该为2V/2mA=1kΩ。

面包板搭建电路

我们在自己的面包板上搭建的电路如下,我把LED连接在P1.0端口上(万用板焊接的电路这里没有提供,大家可以自己去搭建):
 

开发板的使用

如果你是用的是开发板并且上面有LED模块,你可以查看电路图。例如我的开发板电路图:
图中VCC通过J1接到RP1上,RP1是排阻,图中的1号脚是公共脚,在排阻的内部从1号脚往2~9号每个管脚之间有一个1k电阻,总共8个1k电阻排列起来,所以叫做排阻。J1相当于一个开关,其实是两个排针构成的插座。如果插上跳线帽,就可以导通;拔下跳线帽,就断开了。这样设计的好处是,如果我要用LED模块就插上跳线帽;而如果我不用LED模块,而讲IO口用于其他目的,这时LED就不会对我的电路产生干扰,因为LED一端接IO口,另一端接到排阻上,而排阻另一端是悬空的,没有接入电路。 而图中的标号DB1~DB8又接在单片机最小系统电路中的P1.0~P1.7的IO口,所以在J1导通的情况下,P1.0~P1.7的高低电平就能控制D1~D8这八个LED的亮灭了。

具体操作

单片机的编程,我们通常使用Keil软件。Keil软件可以从网上下载,安装过程这里不做详细介绍,有基本计算机操作知识,安装起来应该没有问题。值得注意的一点是,安装的时候尽量安装到英文目录下,最好不要用中文,以免程序运行出现问题。 我们打开Keil软件,准备给单片机写程序。大家可以按照下面的步骤进行(这里以Keil uv4英文版为例进行说明。如果你使用的是Keil其他版本,操作方式基本相同)。

 

一、新建并配置工程

1、首先新建工程:点击菜单中的Project – New uVision Project。
2、然后我们在电脑上为我们的工程新建一个文件夹,这里我用的是Project01 – LED,大家可以自行命名,但最好是英文名。
3、打开文件夹,输入工程的名称,点击保存。这里我输入的是LED。
4、然后弹出一个窗口,让我们选择单片机的型号。我们用到的是STC89C52RC,而这里面可能没有STC单片机,我们只需要选择完全兼容STC的Atmel系列AT89C52单片机,点击OK确认即可。
5、随后会弹出一个窗口,提示我们是否需要添加8051的启动代码到工程中,点击否即可(如果我们需要使用自定义的启动代码,则可以点是,然后修改启动代码。而我们编程用的是C语言,一般情况下不需要修改启动代码。至于启动代码有什么用处,则可以等到我们对单片机了解的比较深入的时候再查找相关资料进行学习)。
6、下面我们对工程进行简单的设置。右击Target 1,选择第一项Options for Target ‘Target1’…,弹出工程属性设置窗口。
7、我们打开Output标签,并勾选Create HEX File,然后点击OK确认即可。

二、新建源文件并添加至工程中

1、工程新建并配置完成了,下面我们开始新建程序源文件。点击菜单中的File-New,出现一个新的文件,如图。
2、然后我们点击保存按钮,将其保存到工程文件夹Project01 – LED中,保存为扩展名是“.c”的文件,如main.c。这里大家要注意的是,源文件其实只是一个普通的文本文件,不过扩展名是c而不是txt。我们刚刚新建main.c文件的操作,也可以通过在资源管理器中新建文本文档,然后重命名为main.c的方式进行。
3、源文件新建好了。源文件只是一个独立的文本文件,而工程文件现在和刚刚新建的源文件还是完全独立、没有关联的。我们要把刚刚新建的main.c文件添加到我们的工程中来:右击Target 1/Source Group 1,并选择菜单中的Add Files to Group ‘Source Group 1’…来添加文件。
4、双击需要添加的文件main.c,或者选中它再点击Add按钮,从左边的Project窗口就可以看到,文件就已经被添加到工程中了。这时弹出的窗口并没有关闭,因为这样可以方便继续添加其他文件。因为我们现在只需添加一个文件并且添加好了,所以点击Close关闭弹出的窗口。

三、编写程序并编译

1、我们打开main.c,开始正式编写程序了。我们编写的程序如下并保存。至于这个程序是什么含义,之后将详细介绍。注意一点,我给出的程序中设置的LED是P1.0,如果你的开发板或者自己搭建的电路中LED的IO口不是P1.0,你需要照着我给出的格式修改sbit那一行。这一点也充分体现了,单片机编程是和实际硬件电路息息相关的,程序和电路要配套,才能正常运行。 #include sbit LED = P1^0; void main() {     LED = 0;     while(1); }
2、点击左上方的双箭头按钮编译全部文件,我们看到下方的输出窗口显示编译完成,“creating hex file from ‘LED’”表明已经编译时创建了HEX文件(HEX文件是十六进制文件,将烧写进单片机。相当于Windows中的可执行文件“.exe”),“0 Error(s), 0 Warning(s).”表示编译成功,程序也没有语法错误。如果提示你的程序有错,请细心的检查一下,有没有发生漏掉分号等情况。

四、烧写程序到单片机中

在工程文件夹下,我们可以看到生成的LED.hex文件,这正是我们所需要的。下面我们将把LED.hex文件烧写进单片机。前面已经介绍了单片机程序下载相关知识,这里我们将介绍下载程序的一般步骤。由于大家使用的电脑、开发板等都不完全一样,有可能会下载失败。希望下载没有成功的读者不要灰心,关于下载失败如何处理,请继续看后面内容。下载程序的操作步骤如下: 1、设置单片机型号,这里我们设置单片机为STC89C52RC。
2、设置串口端口号,波特率等参数。由于我们一般用的是USB转串口芯片,不是真正的RS232串口,所以串口号不固定,每次插上转接板或单片机学习板时,我们应打开设备管理器如图(XP系统:右击“我的电脑”→“属性”→“硬件”→“设备管理器”;Win7系统:右击“计算机”→“管理”→“设备管理器”)。找到端口(COM和LPT)选项,展开,里面会有一个类似“Prolific USB-to-Serial Comm Port(COM1)”或者“USB-SERIAL CH431(COM1)”的项。括号里面的COMx就是我们要找的端口号。填到STC-ISP中就可以了(如果有多项不知道是哪一个,可以插拔单片机学习板看哪项会刷新)。如果很不幸,你的串口号很大,超出STC-ISP可设置的范围了,可以右击设备管理器中显示的那一项更改COM端口序号。波特率等选项一般按默认即可,不需设置。
3、点击“打开程序文件”,选择要烧写的单片机程序HEX或BIN文件。HEX或BIN文件是编译之后的机器码,打开后可以在STC-ISP右侧程序文件中看到对应的十六进制数字。你可以选择自己写的程序产生的机器码,也可以在STC-ISP的test-hex目录中找一些测试程序。这里我们选择刚刚编译生成的HEX文件。 4、先点击“下载”,然后再打开电源开关,给单片机上电。稍后STC-ISP就会显示正在烧写程序。如果点击“下载”前忘了先关电源,或者程序没能下载,不需要点击“停止”按钮,直接断电再上电尝试即可。一般几秒钟就能下载完成,STC-ISP中会显示下载成功。

五、观察程序执行结果,有必要的时调试程序。

一般程序下载完成后,如果P1.0口接有LED,电路连接无误,LED就会奇迹般的亮起来。我们就成功的让单片机执行了我们自己写的程序。每个初学单片机的人在看到这一幕的时候,往往都会激动万分,正如我第一次学习单片机一样开心。由于这里的程序非常简单,基本不需要调试。这时你就可以向好友炫耀一下,展示你的劳动成果了。

玩转单片机 技术专区

  1. 计数器输入的计数脉冲源结构与工作方式详解
  2. 对于传输线的反射、特性阻抗、阻抗匹配的详细解析
  3. DIY搭建自己的TTL振荡电路
  4. 从制程、架构、应用入手,深入分析这十款AI处理器
  5. 关于单片机和c语言的10个问题和解答
原文标题:单片机小白(13):点亮第一个LED——好的开始,成功的一半 文章出处:【微信号:mcu168,微信公众号:玩转单片机】欢迎添加关注!文章转载请注明出处。
关注88lifa利发国际娱乐微信
有趣有料的资讯及技术干货
下载发烧友APP
打造属于您的人脉电子圈
关注发烧友课堂
锁定最新课程活动及技术直播
收藏 人收藏
分享:

评论

相关推荐

led灭蚊灯电路图(八款灭蚊灯电路图分析)

灭蚊灯是不需要采用任何化学灭蚊物质的灭蚊设备,是吸收国外先进技术再进行多项技术改良的新一代高效环保捕....
发表于 01-23 16:42 次阅读 0条评论
led灭蚊灯电路图(八款灭蚊灯电路图分析)

万用表如何测量led灯好坏

随着电子科技的发展,日常照明跟上时势,加入了电子科技,为了节能,灯管也使用了LED(发光二极管),使....
发表于 01-23 16:24 次阅读 0条评论
万用表如何测量led灯好坏

LED驱动电源PFC电路的设计

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电源转换器,通常情况下:LED驱动电....
发表于 01-23 15:09 次阅读 0条评论
LED驱动电源PFC电路的设计

深度解析焦耳小偷电路

焦耳小偷电路是一个简约的自激振荡升压电路,只需三个元件:三极管、电阻、电感即可实现。它可以榨干一节废....
的头像 面包板社区 发表于 01-23 12:43 次阅读 0条评论
深度解析焦耳小偷电路

2020年低碳产业将突破10万亿,以及路灯实施节能改造对社会的影响

1月5日,国务院对外发布《“十三五”节能减排综合工作方案》,明确了“十三五”节能减排工作的主要目标和....
的头像 高工LED 发表于 01-23 10:18 次阅读 0条评论
2020年低碳产业将突破10万亿,以及路灯实施节能改造对社会的影响

浅谈2018年led产业的十三个期待

2018,是走进新时代的第一年,对整个照明界来说,是不辱使命奋起的一年,也是撸起袖子加油干的一年。
的头像 广明源照明 发表于 01-23 10:13 次阅读 0条评论
浅谈2018年led产业的十三个期待

LED产业现状以及分享吃掉企业利润的六种黑洞

LED产业正处于稳健发展期,目前全球LED产业可以分为四大地区。一是欧美地区,以通用照明为主攻方向,....
的头像 每日LED 发表于 01-23 10:09 次阅读 0条评论
LED产业现状以及分享吃掉企业利润的六种黑洞

基于智慧城市中的LED的妙用解析

一种嵌入路面的新型LED灯交通系统已在伦敦投入试用,可以侦测行人和其他车辆,并根据路况实时变化路面灯....
的头像 CNLED网 发表于 01-22 17:26 次阅读 0条评论
基于智慧城市中的LED的妙用解析

基于UV LED的八个基础问题的详细解答

▶ 什么是UVC LED的波长范围? UVC LED波长通常被定义为200nm到280nm。
的头像 CNLED网 发表于 01-22 17:23 次阅读 0条评论
基于UV LED的八个基础问题的详细解答

汇总一些部分LED另类应用

近年来,LED应用领域不断拓宽,从通用照明、显示背光到医疗照明、植物照明、汽车照明等,再到另类的创新....
的头像 CNLED网 发表于 01-22 11:00 次阅读 0条评论
汇总一些部分LED另类应用

三雄极光推出沉淀已久的高端酒店照明产品——铂刻系列

随着中国商业综合体的空前发展,照明灯光设计已成为酒店及商业空间品牌树立,环境打造的重要一环。
的头像 高工LED 发表于 01-22 09:42 次阅读 0条评论
三雄极光推出沉淀已久的高端酒店照明产品——铂刻系列

如何理解软件设计原则和面向接口编程的开发思想

面向通用接口的编程,虽然面向接口的编程简单易懂,但无法做到最大程度上地重用应用程序,这是导致软件开发....
的头像 周立功单片机 发表于 01-22 09:11 次阅读 0条评论
如何理解软件设计原则和面向接口编程的开发思想

LCD与LED的区别之背光原理与优缺点对比介绍

LCD一般就指液晶显示器,是目前市场上的绝对主流产品。液晶显示器可以分为传统CCFL背光、LED背光....
发表于 01-22 09:00 次阅读 0条评论
LCD与LED的区别之背光原理与优缺点对比介绍

增强型LED驱动解决方案:完全可设置的智能16粒LED光源驱动器

LED1642GW是意法半导体的新一代LED阵列驱动器,新增一系列完全可设置的创新功能,同时保留原来....
发表于 01-22 07:23 次阅读 0条评论
增强型LED驱动解决方案:完全可设置的智能16粒LED光源驱动器

基于USB 总线控制64 ×16LED 点阵显示汉字的方案介绍

LED点阵显示器作为一种新兴的显示器件,是由多个独立的LED (发光二极管)封装而成。介绍了一种通过....
发表于 01-22 05:53 次阅读 0条评论
基于USB 总线控制64 ×16LED 点阵显示汉字的方案介绍

5G及物联网助力智能路灯发展 LED大厂开发智能照明方案

随着5G及物联网的推动,智能城市将LED户外照明转变成为物联网的网路结点,多家国际大厂如飞利浦、Si....
的头像 高工LED 发表于 01-21 10:51 次阅读 0条评论
5G及物联网助力智能路灯发展 LED大厂开发智能照明方案

研究人员开发了一种“波浪形”晶体管结构,可以提升显示电路的性能

柔性超高分辨率显示器将大大增强新一代移动电子设备的性能。沙特阿拉伯阿卜杜拉国王科技大学的研究人员目前....
的头像 新光电 发表于 01-21 09:50 次阅读 0条评论
研究人员开发了一种“波浪形”晶体管结构,可以提升显示电路的性能

暴力拆解华硕爱尚228:LED为啥这么薄

LED是当下性价比最高的显示技术 每个科技从其诞生之日起,就注定了这项科技会不断的推陈出新。显示设备....
的头像 alpha007 发表于 01-23 01:05 次阅读 0条评论
暴力拆解华硕爱尚228:LED为啥这么薄

LCD与LED拆解对比测试:价格差在哪

不差钱差在哪 LED与LCD拆解对比测试 本周三我们PChome电脑之家推出了围绕在LCD与LED两....
的头像 alpha007 发表于 01-23 01:00 次阅读 0条评论
LCD与LED拆解对比测试:价格差在哪

一款led节能灯简易制作过程

本文主要介绍了一款led节能灯简易制作过程以及新型声光控LED节能灯设计。能灯与常用的白炽灯、日光灯....
发表于 01-19 17:24 次阅读 0条评论
一款led节能灯简易制作过程

88lifa利发国际娱乐

百度360搜索搜狗搜索