0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

51单片机实现流水灯

单片机开发宇凡微 来源:单片机开发宇凡微 作者:单片机开发宇凡微 2023-05-18 14:19 次阅读

51单片机实现流水灯

以下是本篇文章正文内容,下面案例可供参考

一、点亮第一个LED

#include 
#define uint unsigned int //简化定义
#define uchar unsigned char//同上
sbit D1=P2^1;
void main(){
		D1=0;
}

代码中D1代表着位定义,相当于将LED灯对应管脚的位置起一个名字。单片机初始状态管脚默认为高电平,即对应值为1。所以如果想要点亮LED灯,只需要让他的管脚电平为低即可。

二、流水灯

1.总线型控制

设计一个流水灯,如果使用位操作,需要一个个去定义。这无疑是十分繁琐的。所以这里我们采用总线型操作。

总线型这种总线制方法可以统一控制十位数相同的管脚。

例如如果想要控制P1.0-p1.7的电平情况,具体编程方法是根据所需要的结果,标出每个管脚对应的01值,从前到后排列,然后转化为十六进制,直接令P1=0x+对应十六进制数。这样只用一行代码实现多个管脚控制。

#include 
void main()
		P1=0x80;//对应十进制数字10000001,对应P1的首个管脚与最后一个管脚高电平。
}

2.延时函数

代码如下(示例):

void delay(uint i){
while(i--);
}//此函数可以用来控制特定时长的延时,具体时间由单片机晶振频率决定。

3._ crol _函数使用

_crol_函数功能:将 c 进行b位左位移,并将值以unsigned char类型返回;

#include //_crol_函数在intrins.h函数库中。
unsigned int temp;
temp=0xfe;
P1=temp;
temp=_crol_(temp,1);//第一个变量用来控制位,第二个用来控制每次移动的位数。

4. 实现流水灯

#include 
#include 
#define uint unsigned int 
#define uchar unsigned char
void delay(uint i);
void main(){
	uint temp=0xfe;
	while(1){
		P2=temp;
		temp=_crol_(temp,1);
		delay(10000);
	}
}
void delay(uint i){
while(i--);
}

最后实现单片机流水灯操作。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6030

    文章

    44505

    浏览量

    632362
  • led灯
    +关注

    关注

    22

    文章

    1592

    浏览量

    107794
  • 51单片机
    +关注

    关注

    273

    文章

    5697

    浏览量

    123071
  • 流水灯
    +关注

    关注

    21

    文章

    432

    浏览量

    59622
收藏 人收藏

    评论

    相关推荐

    51单片机是如何实现流水灯左移后右移动的?

    51单片机是如何实现流水灯左移后右移动的?怎样去编写其代码?
    发表于 07-19 07:56

    基于51单片机实现流水灯

    51单片机入门教程(2)——实现流水灯一、搭建流水灯电路二、流水灯程序2.1 延时程序2.2 延
    发表于 11-10 08:03

    51单片机如何实现流水灯51单片机实现流水灯的三种方法详细分析

    首先,介绍下原理。下图为主控芯片和流水灯模块的原理图。流水灯模块接在单片机的P1口,由原理图可以知道,在P1口给一个低电平即可点亮LED灯。相反,如果要LED灯熄灭,就要把P1口的电平变为高电平即可
    的头像 发表于 10-03 10:38 9.7w次阅读
    <b class='flag-5'>51</b><b class='flag-5'>单片机</b>如何<b class='flag-5'>实现</b><b class='flag-5'>流水灯</b>?<b class='flag-5'>51</b><b class='flag-5'>单片机</b><b class='flag-5'>实现</b><b class='flag-5'>流水灯</b>的三种方法详细分析

    利用51单片机实现流水灯的程序免费下载

    本文档的主要内容详细介绍的是使用51单片机实现流水灯的程序免费下载。
    发表于 08-28 17:29 2次下载
    利用<b class='flag-5'>51</b><b class='flag-5'>单片机</b><b class='flag-5'>实现</b><b class='flag-5'>流水灯</b>的程序免费下载

    使用51单片机实现流水灯的程序免费下载

    本文档的主要内容详细介绍的是使用51单片机实现流水灯的程序免费下载。
    发表于 08-27 17:29 6次下载
    使用<b class='flag-5'>51</b><b class='flag-5'>单片机</b><b class='flag-5'>实现</b><b class='flag-5'>流水灯</b>的程序免费下载

    使用51单片机实现流水灯的程序和电路图免费下载

    本文档的主要内容详细介绍的是使用51单片机实现流水灯的程序和电路图免费下载。
    发表于 08-26 17:30 10次下载
    使用<b class='flag-5'>51</b><b class='flag-5'>单片机</b><b class='flag-5'>实现</b><b class='flag-5'>流水灯</b>的程序和电路图免费下载

    使用51单片机实现流水灯C语言的程序实例免费下载

    本文档的主要内容详细介绍的是使用51单片机实现流水灯C语言的程序实例免费下载。
    发表于 07-19 17:38 9次下载
    使用<b class='flag-5'>51</b><b class='flag-5'>单片机</b><b class='flag-5'>实现</b><b class='flag-5'>流水灯</b>C语言的程序实例免费下载

    使用51单片机实现流水灯总线操作的C51程序免费下载

    本文档的主要内容详细介绍的是使用51单片机实现流水灯总线操作的C51程序免费下载。
    发表于 07-17 17:38 4次下载
    使用<b class='flag-5'>51</b><b class='flag-5'>单片机</b><b class='flag-5'>实现</b><b class='flag-5'>流水灯</b>总线操作的C<b class='flag-5'>51</b>程序免费下载

    使用51单片机实现流水灯左移后右移动的程序免费下载

    本文档的主要内容详细介绍的是使用51单片机实现流水灯左移后右移动的程序免费下载。
    发表于 07-04 17:41 2次下载
    使用<b class='flag-5'>51</b><b class='flag-5'>单片机</b><b class='flag-5'>实现</b><b class='flag-5'>流水灯</b>左移后右移动的程序免费下载

    使用51单片机实现流水灯的C语言程序免费下载

    本文档的主要内容详细介绍的是使用51单片机实现流水灯的C语言程序免费下载。
    发表于 05-27 08:00 2次下载
    使用<b class='flag-5'>51</b><b class='flag-5'>单片机</b><b class='flag-5'>实现</b><b class='flag-5'>流水灯</b>的C语言程序免费下载

    使用51单片机实现流水灯的程序和Proteus仿真

    本文档的主要内容详细介绍的是使用51单片机实现流水灯的程序和Proteus仿真电路图和工程文件合集免费下载。
    发表于 11-04 08:00 5次下载
    使用<b class='flag-5'>51</b><b class='flag-5'>单片机</b><b class='flag-5'>实现</b><b class='flag-5'>流水灯</b>的程序和Proteus仿真

    51单片机实现流水灯的源代码

    本文档的主要内容详细介绍的是使用51单片机实现流水灯的源代码免费下载。
    发表于 11-13 17:28 55次下载
    <b class='flag-5'>51</b><b class='flag-5'>单片机</b><b class='flag-5'>实现</b><b class='flag-5'>流水灯</b>的源代码

    使用51单片机实现流水灯的详细资料说明

    本文档的主要内容详细介绍的是使用51单片机实现流水灯的详细资料说明。
    发表于 04-01 17:21 21次下载

    51单片机实现流水灯

    文章目录51单片机实现流水灯一、点亮第一个LED灯二、流水灯1.总线型控制2.延时函数3._ crol _函数使用4.
    发表于 11-05 13:36 24次下载
    <b class='flag-5'>51</b><b class='flag-5'>单片机</b><b class='flag-5'>实现</b><b class='flag-5'>流水灯</b>

    51单片机实现流水灯操作

    一、用移位操作二、用C51库函数三、总结
    发表于 11-20 17:21 10次下载
    <b class='flag-5'>51</b><b class='flag-5'>单片机</b><b class='flag-5'>实现</b><b class='flag-5'>流水灯</b>操作