求一个闪光灯C语言程序,

求一个闪光灯C语言程序,,第1张

#include <stdio.h>

#define GREAT_THAN(a, b)    ((a) > (b))

#define LESS_THAN(a, b)        ((a) < (b))

#define GREAT_OR_EQUAL(a, b)    ((a) >= (b))

#define LESS_OR_EQUAL(a, b)    ((a) <= (b))

#define NOT_EQUAL(a, b)        ((a) != (b))

#define EQUAL_TO(a, b)        ((a) == (b))

static int test(void)

{

    int x

    int y

    printf("> operation:\n")

    for (x = 0 x < 2 x++) {

        for (y = 0 y < 2 y++) {

            printf("%x > %x --> %x\n", x, y, GREAT_THAN(x, y))

        }

    }

    printf("\n< operation:\n")

    for (x = 0 x < 2 x++) {

        for (y = 0 y < 2 y++) {

            printf("%x < %x --> %x\n", x, y, LESS_THAN(x, y))

        }

    }

    printf("\n>= operation:\n")

    for (x = 0 x < 2 x++) {

        for (y = 0 y < 2 y++) {

            printf("%x >= %x --> %x\n", x, y, GREAT_OR_EQUAL(x, y))

        }

    }

    printf("\n<= operation:\n")

    for (x = 0 x < 2 x++) {

        for (y = 0 y < 2 y++) {

            printf("%x <= %x --> %x\n", x, y, LESS_OR_EQUAL(x, y))

        }

    }

    printf("\n!= operation:\n")

    for (x = 0 x < 2 x++) {

        for (y = 0 y < 2 y++) {

            printf("%x != %x --> %x\n", x, y, NOT_EQUAL(x, y))

        }

    }

    printf("\n== operation:\n")

    for (x = 0 x < 2 x++) {

        for (y = 0 y < 2 y++) {

            printf("%x == %x --> %x\n", x, y, EQUAL_TO(x, y))

        }

    }

    return 0

}

int main(void)

{

    test()

    return 0

}

用 全局位变量 (如 bit TimesFlag(次数标志位))记录按键是 奇数还是偶数,初始化是0(算偶数),每按一下,就取反(TimesFlag=~TimesFlag),那么 这个位 是 1 就表示 奇数下,0 就表示 偶数下。通过判断这个值,就能 知道要 输出 多少次了。再提供一个 全局位变量(如 bit OutEn),记录是否可以输出闪灯,当 有新按键时,就允许输出(OutEn=1),闪完灯就禁止输出(OutEn=0)

不过你还要记录按键的状态,判断是否 刚刚 按下(刚按下就提供输出要求(OutEn=1)),不然就会 一直 闪。

用C语言编程,求程序的方法:

#include//包含单片机寄存器的头文件

/****************************************函数功能:延迟一段时间

*****************************************/

Voiddelay(Void)//Void表示没有返回值,也没有传递参数。

Unsignedint我;定义一个最大值为65535的无符号整数。

For (I = 0我<20000i++) //执行20000个空循环。

;//什么也不做,等待一个机器周期。

/*******************************************************

函数函数:主函数(C语言规则必须有且只能有一个主函数)。

********************************************************/空白主要(空白)

而(1)//无限循环。

P0=0xfe;//P1=11111110B,P0.0输出低电平。

延迟();//推迟一段时间。

P0=0XFF;//P1=11111111B,P0.0输出高电平。

延迟();//推迟一段时间。

单片机驱动LED光源程序:

#include//头文件。

定义uint无符号int

#定义uchar无符号字符

SbitLED1=P1^7;//定义。

空白delay_ms(单位);//带参数的ms级延时函数。

Voidmain()

而(1)

LED1=0;

Delay_ms(1000);

LED1=1;

Delay_ms(1000);

Voiddelay_ms(uintz)//delay子例程

使用Uintx,y;

For (x = zX >0X -)

For (y = 110Y >0Y -)

扩展资料:

单片机应用分类:

一般类型:

这是关于微控制器的。例如80C51通用型单片机,它并不是为特定的目的而设计的;专用单片机是为某一类产品甚至某一种产品而设计生产的。例如,为了满足电子体温计的要求,芯片中集成了具有ADC接口的温度测量控制电路等功能。

主线:

这是由微控制器是否提供并行总线来区分的。总线微控制器一般安装有并行地址总线、数据总线、控制总线,这些引脚扩展并行外围设备可以通过串口与单片机连接。

另外,很多单片机都需要将外围设备和外围设备的接口集成在一块,所以在很多情况下不能并行扩展总线,大大降低了封装成本和芯片体积,这种单片机被称为非总线单片机。

控制类型:

这是关于微控制器的一般应用。一般来说,工业控制寻址范围大,计算能力强。家用电器的单片机大多是专用的。

它通常是小包装、低价格、高集成的外围设备和外围接口。显然,上述分类并不独特和严格。例如,80C51类单片机既是通用的,又是总线的,还可以用于工业控制。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12097557.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存