灯闪烁程序,51单片机
#记录我的9月生活#
首先先写上这么一段话,这句话的作用是让程序知道他下面写的是要给51单片机的程序,其他型号的就不一定能适用。
要怎么看你是什么型号的呢,单片机上有写。
STC好像是这种单片机是针脚式的意思,你看图片上,单片机上的每一个引脚都很长。
旁边的89C51RC是它的型号,烧录程序的时候一定要找到对应的型号。
另外51跟52的程序好像是适用的,也就是说你在include里面写成reg51.h,也能烧录进52型号的单片机里面。
然后下一行是定义了一个叫S1的东西,把P1.0端口的值赋给S1,=是赋值的意思。后面就用S1的值来修改P1.0的值。
这一段给了一个延时函数,void后面跟的是函数名。unsigned是没有符号的意思,从0开始往上数,int表示两个字节,一个字节是2的8次方,256,两个字节就是65536。i是定义的变量,也就是定义的i的取值范围为0到65535,因为是从0开始数,所以65536要减去一个1。
下面还定义了一个k,对于这个k,k刚开始等于0,只要k小于delay里面i的值,k就会一直自己加自己,直到加到k等于i。
这一段是主函数,main是主要的意思,一个函数里面只有一个主函数。
while是循环的意思,里面的1是经判断永远为真,也就是直接执行循环的内容。
如果发光二极管正极,接电源正极,负极接单片机P1.0引脚,那么当S1=0时,灯亮。当S1=1时,灯灭。因为只有当二极管正极是高电平,负极是低电平时才会亮,其他情况都不亮。
delay里面的数字是i的值,可以修改,不超过65535就能用,可以发现数字越大,发光和熄灭的时间就越长。
这是实物效果,图片不是很能拍出灯闪烁的效果,大概就是这样。
也有同学告诉我,延时函数里面不用k,用while(i--)。我也不知道为什么能这样。有懂的老师,可以解释一下。
最后,还是要提醒一下,写程序一定要在英文输入法下写,中文它不认。还要注意书上的程序有没有分号,以及该大写的你有没有大写。
最最后,才疏学浅,可能有讲的不对的地方,还请各位老师同学指正。
单片机开发——LED 闪烁程序
点亮 LED 小灯的程序我们第二课完成了,就是让 LED = 0。熄灭小灯的程序也很简单,就是 LED = 1。点亮和熄灭都会了,那么如果我们在亮和灭中间加个延时,反复不停的点亮和熄灭小灯,就成了闪烁了。(不喜欢阅读文字的同学,请登录“乐搏学院”官网,免费学习在线视频教程。还有更多IT职业技能公开课等你来哟~)我们首先复习一下 Keil 写程序的过程,建立工程-->保存工程-->建立文件-->添加文件到工程-->编写程序-->编译-->下载程序。LED 闪烁程序对于有 C 基础的同学来说很简单,那我先写出来,大家可以先看下。没有C 语言基础的同学也可以跟着抄一遍,下节课我会补充部分 C 语言基础知识,这样你先抄一遍后,再跟着看 C 语言基础知识的时候也比较容易理解透彻。
大家把这个程序编译一下,下载到单片机里,就会发现 LED2 这个小灯会闪烁了。
相关问答
单片机 外部中断控制led 灯闪烁 怎么插线?单片机外部中断控制led灯闪烁插线的方法:51单片机的IO口接按键,实现外部触发(外部中断,高低电平,上下降沿),触发后再通过IO控制LED的开关即可。单片机外部中...
单片机 改变流水 灯闪烁 频率的方法是?1.掌握单片机与常见的显示器件的接口设计与软件编程。2.实现流水灯从上至下闪烁,闪三次。3.实现流水灯从下至上闪烁,闪三次。#defineucharunsignedintv...
51 单片机 LED 灯 点亮的c语言编程方法?/*程序详细功能介绍:*利用取表的方法,使端口P0做单一灯的变化:左移2次,右移2次,闪烁2次(延时的时间0.2秒)。*在用表格进行程序设计的时候,要用以下的.../*...
单片机 流水 灯闪烁 几次停止?单片机8个流水灯闪10次后停止。单片机流水灯是指一串LED灯,通过单片机控制,按照一定的顺序,不断循环地轮流点亮,闪烁10次后停止。单片机8个流水灯闪10次后停...
单片机程序 :用一个开关按钮控制一个 灯 ,按钮在上面灯恒亮(高...直接把电源接给单片机不太好,建议稍微改下电路那个可以用~~~程序里按键检测应该加延时消抖,在第一个if()下面加延时10毫秒,再检测按键是否按下,确定按下了再执...
51 单片机 ,一个按键怎么控制两个 灯 轮流闪动,看详细说明?先设置一个位变量,表征现在是启动还是停止。再设置一个位变量,表征应该是LED1亮还是LED2亮。然后在检测到按键的同时,启动定时器,取反第一个变量,计时五秒...
51 单片机 数码管时钟 程序 用定时器动态扫描怎么加入 闪烁 标志位的问题?不是取反,是关闭对应数码管。思路:判断按键->调整时间->显示时间;你要实现闪烁,需要在显示数字部分下功夫不是取反,是关闭对应数码管。思路:判断按键->调整时...
单片机 中两个 灯 不能一起 闪烁 ?在单片机中,两个灯不能同时闪烁的原因可能是因为它们共用了同一个IO口或者共用了同一个定时器。当两个灯共用同一个IO口时,只能通过改变IO口的电平来控制其中...
单片机 外部中断实验(急救车与交通灯)怎么延时 闪烁 ?在单摆的中间放一个红外对管,这样单摆每过一次中间就会有一个脉冲信号。这个脉冲信号连接外部中断,通过中断来统计次数。再用定时器定时1秒,1秒后把中断次数输...
怎么用一个定时器使3个LED 灯闪烁 ,闪烁时间分别为1s、0.5s、2s且不互相影响?可以利用单片机定时器中断来实现这个闪烁电路周期为2s的设计。在单片机设计中经常需要设计一个1s闪烁的LED来判断单片机是否在工作。我们只要设置好定时器计...