流水灯程序设计

流水灯程序设计,第1张

很简单啊

你没有说是用C语言编写还是用汇编啊

(汇编我还没学)

=======================

电路可以这样设计,

①P3口接4*4矩阵键盘或是直接接8个按键。

②P0口、P2口 合起来共16个I/O口,直接接16个发光二级管。

注意I/O口接三极管的负极,三极管正极串上一个1K的保护电阻,然后接+5V。

别忘了P2口的上拉电阻,用10*8的排阻就行(排阻公共端接+5V)

其他的就是复位电路、晶振、电源、程序下载口了,都比较简单,而且都是固定模式。

指示灯直接用发光二级管串分压电阻接到电源就行了。

电源可以用7805稳压(输入电压>5V时),或者直接用5V电就行了。

=====================================================================

写程序方面:

数量比较多,流水灯设计宜用位 *** 作,

①流水灯

for(i=0i<7i++)

{

P2=~pow(2,i)delay(500)

}

这样就是8位流水灯了

剩下的8个一样。

delay是一个延时函数,就是让单片机空转消耗时间,可以这样

delay(int time)

{int x=0,y=0

for(x=0x<timex++)

for(y=0y<100y++)

}

②16灯逐个点亮。

P2=0xff(开始8个灯都灭)

for(i=0i<7i++)

{

P2=P2--(每次点亮一盏灯)

delay(500)

}

这样就可以8位的流水灯

另外8个接下来一样的方法点亮,

这样就是16灯逐个点亮。

============

③逐渐点亮一个灯

用延时长短来控制

sbit P20=P2^0

int m=500

for(i=0i<500i++)

{

P20=1delay(m)(灭P2.0口的灯)

P20=0delay(500-m)(亮P2.0口的灯)

m--

}

这样就可以500级渐亮一个灯了。

渐灭类似。

④ A-D-A

循环可以用for()来实现

或者直接来有条件跳转。

goto就行了

=========================

说的比较零碎,自己整合一下就OK;

1、通电后error灯闪烁,run灯不亮。run打到运行状态。还是闪烁可以看下程序有没有问题,要是程序没事。那就是I/O模块有问题。 2、ERROR灯亮一般有很多种原因,比如I/O卡损坏,通信故障,数据溢出,除零,等等。两个机架上就要安装IM模块,两个机架之间不属于网络,只不过是对0号机架的扩展,所以和CP模块不同。 扩展资料: 施耐德PLC主要有原Modicon旗下的Quantum、Compact(已停产)、Momentum等系列,编程软件是Concept; 而TE旗下的Premium、Micro系列则使用PL7 Pro。施耐德在整合了Modicon和TE品牌的自动化产品后,将Unity P

// 功能 :p0口八个灯作3路跑马灯

#include<reg51.h>

#define uchar unsigned char

#define uint unsigned int

#define led_data P0 //数据口定义

//延时程序

void delay(uint a)

{

uint i,j

for(i=ai>0i--)

{

for(j=4000j>0j--)

}

}

//主程序

void main()

{

while(1)

{

led_data=0xdb

delay(5) //延时一段

led_data=0x6d

delay(5)//延时一段

led_data=0xb6

delay(5) //延时一段

}

}

功能 :p0口八个灯作3路跑马灯

LED_DATA EQU P0 数据口定义

ORG 0000H

LJMP MAIN

ORG 030H

MAIN: MOV LED_DATA,#0DBH 11011011--零为亮

ACALL DELAY 延时一段

MOV LED_DATA,#06DH 01101101

ACALL DELAY 延时一段

MOV LED_DATA,#0B6H 10110110

ACALL DELAY 延时一段

AJMP MAIN 跳转回主程序

DELAY: MOV R7,#255 延时子程序

D1: MOV R6,#255

D2: DJNZ R6,D2

DJNZ R7,D1

RETEND


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存