8个led灯依次点亮程序单片机(单片机实现8个led灯依次闪烁)
单片机控制8个灯依次亮,全亮了,再依次灭的c语言流程图,顺便加上解释,不然看不懂
1、创建项目,如图所示。
2、创建延迟函数。
3、创建C语言主函数。设计unsigned char k=0;变量。
4、添加循环效果。
5、点亮灯,通过k++,改变效果。
6、添加延迟效果,单片机就可以控制8个灯依次亮,全亮了,然后再依次灭。
求单片机设计8个led灯同时闪烁的程序,
请设计一个8个led同时全部闪烁的程序
#include reg51.h
main ()
{int i;
while (1)
{for (i=0;i=30000;i++);
P1=~P1;
}
}
设计一个具有8个LED灯,要求从右向左依次点亮一秒后熄灭,循环往复的单片机程序。跪求
#include"reg52.h"//此文件中定义了单片机的一些特殊功能寄存器
typedef unsigned int u16;//对数据类型进行声明定义
typedef unsigned char u8;
//LED灯命名
sbit leda=P0;
sbit led1=P0^0;
sbit led2=P0^1;
sbit led3=P0^2;
sbit led4=P0^3;
sbit led5=P0^4;
sbit led6=P0^5;
sbit led7=P0^6;
sbit led8=P0^7;
void delay(u16 i)
{
while(i--);
}
void main()
{
while(1)
{
leda=1;//全部灯亮
//从左到右依次熄灭
led1=0;
delay(50000);//大约延时450ms
led2=0;
delay(50000);//大约延时450ms
led3=0;
delay(50000);//大约延时450ms
led4=0;
delay(50000);//大约延时450ms
led5=0;
delay(50000);//大约延时450ms
led6=0;
delay(50000);//大约延时450ms
led7=0;
delay(50000);//大约延时450ms
led8=0;
delay(100000);//大约延时900ms
//从右到左依次点亮
led8=1;
delay(50000);//大约延时450ms
led7=1;
delay(50000);//大约延时450ms
led6=1;
delay(50000);//大约延时450ms
led5=1;
delay(50000);//大约延时450ms
led4=1;
delay(50000);//大约延时450ms
led3=1;
delay(50000);//大约延时450ms
led2=1;
delay(50000);//大约延时450ms
led1=1;
delay(50000);//大约延时450ms
leda=1;//全部灯亮
}
}
扩展资料:
main()应用:
1、C++中的main函数
C++继承了C语言的大部分特性,因此保留了“程序总是从main函数开始执行,且总是默认从main函数的return语句或结尾处结束运行”这一传统,
但是要注意,C++中的main函数要想作为程序执行的出入口,必须写在全局(Global)范围,不能写成某个结构体或某个类的成员。
虽然main函数可以作为结构体或者类的成员函数,但相应地会失去作为程序出入口的功能。
C++中全局main函数的书写格式与C语言完全相同,功能也完全相同,且同一C++程序同样只能有一个全局main函数。
2、Java中的main函数
Java同样是以main函数作为程序执行出入口的,但Java作为“更纯洁”的面向对象语言,它的main函数与C/C++有很大的不同。
首先,返回值的概念淡化,在Java Application中main不允许返回值,因此int main是被禁止的,必须使用void main,int main仅限在JavaBean中使用。
其次,Java中所有的函数必须属于类,没有什么全局函数一说,因此main函数不能是全局成员,必须是某个类的成员。
第三,由于main函数变成了类的成员函数,因此要想直接被系统调用,还必须使用public static使其成为静态函数并具有公开权限。
第四,main函数的参数被简化,只需要提供字符串数组即可,不需要提供参数个数(这是由于Java的数组具有下标检查功能的原因)
Java Application中的main函数一般格式如下(类名可以自定义,但保存为Java源码时,主文件名必须与类名相同,否则可能无法运行)
public class MainDemo{
public static void main(String[]args){
//TODO:在此处写入主函数的内容
}
}
Java Applet的运行机制与Java Application完全不同,因此不需要main函数
3、C#中的main函数
C#中的main函数与Java大同小异,同样必须是类成员,同样使用字符串数组作唯一参数,同样是静态函数,同样的void main,
与之不同的是:main的首字母变成了大写,即"Main函数“,且是否限定为public级别已经无所谓了(默认没有public,但某些场合可能还是需要public)
另外,需要注意的是,C#中不再有”类名必须与主文件名同名“的限制,即使类名不和主文件名相同,程序照样可以运行。
C#应用程序中的main函数默认是这样的(注意main的首字母已是大写)
C#和C/C++、java不同的是C#不在拘泥于必须从main()函数开始执行,C#是属于事件触发。
class Program{
static void Main(string[]args){
//TODO:在此处写入主函数的内容
}
}
单片机C语言,将8个灯依次点亮(被点亮的继续亮),然后再依次熄灭,(在没有熄灭完时熄灭的保持灭)
其次,我建议还是自己尝试写一写,这个不难,我给你个思路
首先定义变量类似于P1_2 = P1^2这种,先把这八个管脚全部定义好,之后给个for循环,让P1(假设的你LED灯连接的是P1口)口的P1^0~P1^7相关标志位依次等于0或者1(0还是1需要看你在LED等上给的是高电位亮还是低电位亮),之后再给个for循环,五次的循环,全部P1口置为1(假设高电平LED亮),之后设置P1口全为1,再让P1口的相关标志位置为0,再置为0的时候可以加个延时
关于8个led灯依次点亮程序单片机和单片机实现8个led灯依次闪烁的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。微信号:ymsc_2016
相关文章
发表评论
评论列表
- 这篇文章还没有收到评论,赶紧来抢沙发吧~