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

很简的51单片机C语言流水灯程序

发布网友 发布时间:2022-04-26 07:21

我来回答

5个回答

热心网友 时间:2022-06-25 05:18

1、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变量循环右移一位
        }        
    }
}



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

热心网友 时间:2022-06-25 05:18

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

热心网友 时间:2022-06-25 05:19

#include<reg52.h>
#include <intrins.h>
#define LED P2

void delay(char i);

void main()
{ unsigned char LedVablue=0xFE;

while(1)
{

LedVablue= _crol_(LedVablue,1); //_crol_(x,Y)是<intrins.h>
//里面的一个库函数,相当于汇编的带进位循环
LED=LedVablue;
delay(100);

}
}

void delay(char i)
{
char j;
for(;i>0;i--)
for(j=0;j<250;j++);
}

热心网友 时间:2022-06-25 05:19

字符型char 默认为signed类型
所以你的延时子程序里j循环条件一直满足
程序调用第一个delay(100)时陷入死循环
此时led=11111110 所以只有第一个灯一直亮
就会这种解释了
你确认只把初值
LED = 0xfe改成~LED = 0?

热心网友 时间:2022-06-25 05:20

//---------------------------------------
//头文件
#include<AT89X51.H>
//---------------------------------------

//---------------------------------------
//数据类型替代声明
#define u8 unsigned char
#define u16 unsigned int
//---------------------------------------

u8 led[8]={~0x01,~0x02,~0x04,~0x08,~0x10,~0x20,~0x40,~0x80};

//---------------------------------------
//延时子函数 延时时间为n毫秒
void delay_ms(u8 n)
{
u16 i;
for(;n>0;n--)
{
for(i=114;i>0;i--)
{
;
}
}
}
//---------------------------------------

//---------------------------------------
//流水一次子函数
void liushui(void)
{
u8 i;
for(i=0;i<=7;i++)
{
P0=led[i];
delay_ms(240);
}
}
//---------------------------------------

//---------------------------------------
//主函数
void main(void)
{
while(1)
{
liushui();
}

}
//---------------------------------------
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
这是个成本会计题,马上要考这道原题了,求大虾帮忙 财务管理类问题,求大虾帮忙,小弟感激不尽。具体问题看问题补充。_百度... 光影魔术手怎么换底色 光影魔术手换底色教程 ...米的绳子围绕一棵树干饶了6圈,还余下1.16米,这棵树干上的直径大约是... ...还余下1.16米,这棵树的树干的直径大约是多少米?求算式! ibm x3500 M5 服务器 运行时风扇声音好大,吵死了,可以下掉一个吗... IBMX3500 M5,最近老是出现自动关机的情况,需要把服务器电源拔掉半分钟... 治疗萎缩性胃炎的方法 怎么治萎缩胃炎 JYF-40FS06电饭煲190块买的是假的吗 51单片机流水灯用C语言编写的设计程序是什么? 流水灯C语言程序 用C51单片机控制12个LED流水灯的C语言程序怎么写? 单片机C语言编程:控制流水灯 用c语言编写流水灯。 用c语言编写单片机流水灯程序,(8个发光二极管从左至右循环点亮) c语言流水灯程序 求具体代码 已婚的女人能容忍你老公看其他女人直播吗? 如果老公在你面前看美女直播,说明了什么? 已婚的女人能容忍老公看女人直播吗? 我丈夫经常上网看美女导致我心理不舒服 这才是今年春天该有的通勤穿搭,可休闲可优雅,高级气质满满,你怎么看? 吴磊身穿丝绒西服套装现身,你喜欢这种穿搭吗? 大学生穿什么样的休闲西装比较好看?给点建议 休闲西装与正式西装有什么区别? 今年春季最潮单品竟然是西装,优雅又高贵,这些搭配值得借鉴,你怎么看? 这才是春天该有的西装造型,掌握这些搭配技巧,能凭气质美出圈,你怎么看? 我们初中同学聚会,主要是聚餐,有没有好的祝酒词和酒桌游戏啊 周六同学聚会,想玩一个抽签喝酒的游戏。。。 同学聚会饭后玩什么比较好?或者去KTV有什么游戏可以玩? 这是一个开关控制流水灯的C语言程序,但它只有开通流水灯,但没有停止程序,请问怎样停止流水灯? 单片机(C语言编程)流水灯问题: 用C语言编写一个花样流水灯的程序及此程序的流程图 流水灯C语言程序,要通俗易懂版的 C语言编写的流水灯程序 单片机流水灯的C语言编程 请高手解释一下这个单片机流水灯C语言程序,新手~~ C语言按键流水灯程序 C语言流水灯编程 哪几行主函数 哪几行是子函数 分别用什么 语句 和 流程图? c语言流水灯编程 淘宝运费险取消了怎么办 怎么恢复淘宝运费险 怎么恢复淘宝运费险 淘宝网上我买了份运费险,但是我申请退货时,忘了用了,怎么办? 淘宝网上我买了份运费险,但是我申请退货时,忘了用了,怎么办? 取款机无卡可以取款吗 取款机可以无卡取款吗? 自助取款机可以无卡取现吗 为什么苹果手机运行内存小但不卡? 交通银行自动取款机支持无卡取款吗?