每个入门单片机的朋友,我想第一个程序简直都是点亮一颗LED灯了,这同软件工程的“hello world”相同经典,是很简略,但却有着许多回想,仍然记住学习单片机的那段阅历,那时经典的8051单片机比方AT89C52要大约8个大洋,电阻电容等等都得自己去买(校园那时没开发试验室),有时为了几颗电阻,几颗LED灯,还得花4元的公交车费跑去电子市场,还论颗买,电阻1毛钱2颗,LED灯M5粗的那种1毛钱1颗,然后兴致勃勃的各种焊接,各种跳线,还各种焚毁……回想起来都说泪啊!
言归正传,我以为单片机第一个程序是点亮LED的理由有几点:
1、学会用Keil软件树立单片机工程,树立程序文件,软件装备和程序编译。
2、学会剖析电路并剖析验证。
3、学会用proteus制作电路原理图,并调试仿真。
4、了解一个小试验的根本流程。
归纳以上几点,仔细的做好这个试验,对进步学习爱好,很有必要。
什么是LED?
LED中文名称叫发光二极管,它会宣布可见光,常见及常用的有可发红、黄、绿色光的LED灯,在产品中,赤色常用来指示体系过错,绿色常用来指示体系正常,黄色常用来正告,依据运用需求的不同,LED灯也各有千秋,如图。
图中有方形,圆形,贴片等LED,色彩也不相同,一般地,发光色彩与灯的外形色彩相同,运用的时分,有必要留意几点:
1、引脚判别:本例运用2脚的LED灯,新的LED长的引脚为正极,短的引脚为负极。
2、作业电压:一般为1.2~2.2V
3、作业电流:2mA~20mA
怎么点亮?
知道LED的根本参数后,就能够依据需求规划电路了,噢!电路?什么是电路?
电路:指的是由电源,导线,用电器,开关组成的回路。(大约这样吧)
那么,点亮LED灯的电路有必要包括界说中的部分:
1、电源:本例用5V直流电源供电。
2、导线:本例用proteus仿真,连线即为导线。
3、用电器:LED灯,当然,还得加电阻。
4、开关:仿真中“运转”相当于开关。
好了,下面见证LED的生长:
1、核算:参阅LED的参数,本例运用M3大的圆形赤色LED来演示,它的作业电流取3mA就满意亮,LED的亮度与电流有关;作业电压取2V(实测得的数据), 那么,怎样满意该条件? 电源用5V供电,而LED只需求2V,还剩3V,怎么办?这时,该电阻进场了,电阻是一种能“吃电能”的家伙,剩下的3V电压就加在它上面,这样就清楚了, Vled = 2V Vr = 3V ,I = 3mA , 电阻和LED灯应该串联,不解说,这儿还差一个参数——电阻值,这时,欧姆定律进场, R = U / I = 3V / 3mA = 1K 。
2、制作仿真电路图: 进程就不说了,看图
运转仿真后。
参加电流表和电压表,测测数据和核算的是否有误差。
OK,正确。
单片机怎么操控LED?
上图中是给LED灯直接加电压,使之点亮,这种操控方法是靠操控开关的通断使之亮灭,同家庭里的灯是相同相同的,单片机的呈现敞开了电子设备智能年代,换一种方法,用单片机去操控LED灯的亮灭,而单片机靠履行程序去输出想要的成果,真真正正地把人的思维完成出来。
单片机是数字电路,输出/输入只要高电平1和低电平0之分,一般0~0.4V的电压规模界说为低电平,大于2V界说为高电平,如图是单片机操控LED灯的电路图。
PS:由所以仿真,这儿偷闲了,图中省掉了时钟电路,电源电路和复位电路
将LED灯的负极衔接到单片机P1.0口,正极串口电阻R1到+5V,这样原理相同的,单片机输出低电平0,使得LED和电阻通路的两头发生电势差,相当于上面图中的“5V电源”,然后满意LED灯的参数,点亮LED灯;而当单片机P1.0口输出高电平时,电势差约为0,不满意LED灯亮的要求,此刻LED灯平息,要到达这样的作用,有必要将“主意”装给单片机,这时程序闪亮上台。
程序编写:用keil新建一个C言语程序工程,代码如下:
运转仿真,能够看到LED灯亮了,具体步骤不多说,网上一大堆
可是,这样好吗?嗯,试验到这步,流程根本走通了,可是这样的程序并没多大含义,当咱们需求点亮多颗灯时,需求shit LED1 = 。.. sbit LED2 = 。.. 然后再赋值,或许你会说:“简略,一起端口赋值嘛, 如 P1 = 0x6D 完事儿” ,可是,这几颗灯要是都不在一个端口呢?这时仍是得一个个端口去界说,去赋值?这样好吗?或许欠好,下面的程序事例,将点亮LED灯封装在一个函数里,这个函数仅完成点亮LED灯的逻辑功用,运用时依据硬件衔接设置函数参数即可,期望起到抛砖引玉的作用。
运转成果为P1^2和P1^7输出低电平,LED灯点亮。