问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

51单片机C语言如何实现8个流水灯左移三次,后右移三次;如此循环

发布网友 发布时间:2022-05-09 13:15

我来回答

5个回答

热心网友 时间:2024-01-30 11:36

51单片机C语言实现循环8个流水灯左移三次,后右移三次。

例程:

#include<reg51.h>  //51单片机头文件
#include <intrins.h> //包含有左右循环移位子函数的库
#define uint unsigned int    //宏定义
#define uchar unsigned char  //宏定义
sbit beep=P2^3;
void delay(uint z)  //延时函数,z的取值为这个函数的延时ms数,如delay(200);大约延时200ms.
{                    //delay(500);大约延时500ms.
    uint x,y;
    for(x=z;x>0;x--)
        for(y=110;y>0;y--);    
}
void main()            //主函数
{
    uchar a,i,j;
    while(1)        //大循环
    {
        a=0xfe;     //赋初值
        for(j=0;j<3;j++) for(i=0;i<8;i++)   //左移三次
        {
            P1=a;       //点亮小灯
            beep=0;     //开启蜂鸣器
            delay(50); //延时50毫秒
            beep=1;     //关闭蜂鸣器
            delay(50);  //再延时50毫秒
            a=_crol_(a,1); //将a变量循环左移一位
        }
        a=0x7f;
       for(j=0;j<3;j++) for(i=0;i<8;i++)  //右移三次
        {
            P1=a;       //点亮小灯
            beep=0;     //开启蜂鸣器
            delay(50); //延时50毫秒
            beep=1;     //关闭蜂鸣器
            delay(50);   //再延时50毫秒
            a=_cror_(a,1); //将a变量循环右移一位
        }        
    }
}

51单片机是对所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8031单片机,后来随着Flash rom技术的发展,8031单片机取得了长足的进展,成为应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中。很多公司都有51系列的兼容机型推出,今后很长的一段时间内将占有大量市场。51单片机是基础入门的一个单片机,还是应用最广泛的一种。

热心网友 时间:2024-01-30 11:37

你直接用数组加for循环就可以实现

热心网友 时间:2024-01-30 11:37

一个方向往另一个方向

0x01--->0xff

反方向
0xff--->0x01

热心网友 时间:2024-01-30 11:38

先定义好类型 后for循环

热心网友 时间:2024-01-30 11:38

你只学到第4课
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
Linux系统安装FTP服务器 Linux系统的网络文件共享 建筑的七盏明灯的内容简介 面向对象设计七大原则 简单说 交互设计七大定律 交互设计的“根”——七大定律 交互设计原则和理论2——七大定律 七大设计原则 附近的加油站有哪些 附近的加油站有哪些地方 用左移运算符实现8个led流水灯c语言 我的新手机号微博,微信都已经被上一个用的人绑定过了,已经有了帐号,这样正常吗。 原本想用手机号注册一个新浪微博。注册提醒手机号已被使用,我就想是不是我以前注册过了。 自己新的手机号注册微博的时候,提示已被使用,这是为什么?怎么解决? 自己手机号注册微博,是别人用过,怎么会这样? 为什么我刚刚用我的手机号注册了个微博,登录进去好像这个号被别人用过,发了好多条微博和好多照片,粉丝 为什么我的手机号是用我自己身份证办的,可是发现别人用这个手机号已经注册过微博 我用新手机号注册新浪微博 然后它显示该好已被注册过 是什么原因? 为什么用手机新注册的新浪微博账号账号被人使用过? 为什么达达上注册上传照片不符 达达的评价 怎么进入原神达达乌帕谷那个护照 什么是达达运动? 为啥网友要在漂流瓶里骂我呀 2015.5月很火的粤语歌男生 达达达达达 达达达达达达达达 摩尔达达mfd 有请PS达达帮忙指教……有图…… 国产达达里奥和美产区别 高达00剧强版主要讲什么 轨道电梯的机动战士高达00—轨道电梯 单片机C语言如何实现8个LED流水灯来回流动? c语言8位流水灯两个开关控制左移右移,程序怎么写哟,各位大神帮帮忙 单片机8个流水灯初始从左到右,按下按键一就从右往左 C语言 C语言流水灯程序用左移符号怎么写 C语言控制单片机,控制八个流水灯从左到右依次亮,最后又从右到左依次亮回来,一直循环下去,求帮帮忙 急求!求一个使单片机控制P1端口的8个LED灯做作左移流水灯的C语言程序(用循环结构) keil软件用单片机控制8个LED流水灯来回点亮(C语言程序) 求高人给写一个8位流水灯的C语言程序,越简单越好,在线等,谢了 八个流水灯隔灯闪烁,程序怎么写? 单片机C语言编程:让8个LED流水灯以0.2s时间间隔从左到右依次点亮然后重复实现 51单片机c语言编写一个流水灯程序,要求如下(不能用数组,8个led指示灯从两边往中间移动,然后再分开) 左移流水灯c语言流程 求问8个LED流水灯依次循环亮的C语言程序 单片机8个流水灯依次亮的c程序流程图 关于人物意志品质的四字成语有哪些 关于描写人物的意志品质的词语 描写人物意志品质的词语40个 描写人物意志品质的四字词语有哪些 意志品质的词语 描写人物意志品质的词语