编写一个C语言程序,满足七个流水灯依次亮起,且第几个流水灯亮,数码管显示数字几,谢谢

编写一个C语言程序,满足七个流水灯依次亮起,且第几个流水灯亮,数码管显示数字几,谢谢,第1张

通过IO口控制,7个IO口控制7个LED灯,就是简单的置1与置0;然后再加个延时,达到人眼观看等变化有流水效果,至于数码管显示可以紧跟在点亮灯的程序后面,也需要IO控制,这是最基本的了。

1、可以通过左移函数_crol_()和右移函数_cror_()来实现LED等的来回流动。

2、具体实现方法可以参考如下程序:

1、单片机(Microcontrollers)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。

2、单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。相当于一个微型的计算机,和计算机相比,单片机只缺少了I/O设备。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机是了解计算机原理与结构的最佳选择。

3、单片机的使用领域已十分广泛,如智能仪表、实时工控、通讯设备、导航系统、家用电器等。各种产品一旦用上了单片机,就能起到使产品升级换代的功效,常在产品名称前冠以形容词——“智能型”,如智能型洗衣机等。

参考资料:

百度百科:单片机

#include<reg51>

#define uchar unsigned char

#define uint unsigned int

void delay(uchar t)

{

uchar x;

for(x=0;x<t;x++)

{

TH0=0x3c;

TL0=0xb0;

TR0=1;

while(!TF0);

TF0=0;

}

}

uchar code display[]={0x03,0x06,0x60};

uchar k,m;

void main()

{

while(1)

{

TMOD=0x01;

for(m=0;m<3;m++)

{ P1= display[k];

delay(10);

}

}

顺手写的觉得好就采纳吧

这个流水灯是很普通的一种花样,假设LED接P1口,程序如下:

ORG 0000H

LJMP MAIN

0RG 000BH

LJMP T0ISR

ORG 0030H

MAIN:

MOV TMOD,#01H

MOV TH0,#HIGH(65536-50000) ;50毫秒定时

MOV TL0,#LOW(65536-50000)

SETB TR0

SETB ET0

SETB EA

MOV A,#0FEH

MOV P1,A

MOV R2,#20

SJMP $

T0ISR:

CLR TR0

MOV TH0,#HIGH(65536-50000)

MOV TL0,#LOW(65536-50000)

SETB TR0

DJNZ R2,T0E ;1秒未到直接退出

MOV R2,#20

RL A

MOV P1,A ;1秒一变的花样流水灯。

T0E:

RETI

END

以上就是关于编写一个C语言程序,满足七个流水灯依次亮起,且第几个流水灯亮,数码管显示数字几,谢谢全部的内容,包括:编写一个C语言程序,满足七个流水灯依次亮起,且第几个流水灯亮,数码管显示数字几,谢谢、单片机C语言如何实现8个LED流水灯来回流动、单片机8个流水灯程序 要求:间隔0.5秒流水灯一次(01234567) 两盏流水一次(01,23,45,67) 闪亮一次(8盏灯亮灭等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址:https://54852.com/zz/10165626.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存