51单片机流水灯延时一秒

作者&投稿:贸映 (若有异议请与网页底部的电邮联系)

单片机中c编程的流水灯中关于延时~~~谢谢了,大神帮忙啊
< 120; i++); 直到i>=250时候才接下来执行 ms--(即249--); 也就是说 250每次自减 1 都要执行 120次 i++; 如果你把120 改成300 只是扫描时间变长了,也就是延时的更长了,可能第一个LED点亮时间比较长,影响了你的正常看现象。你等一段时间可能就会流动了。这个就是设置的问题。

单片机流水灯用定时中断器延时1秒代码
include<reg51.h>#include<intrins.h>#define uchar unsigned charuchar time=0;void t0isr() interrupt 1{TH0=(65536-50000)\/256;TL0=(65536-50000)%256;time++;if(time>=20) { time=0; P0=_crol_(P0,1); }}main(){TMOD=0x01;TH0=(65536-50000)\/256;TL0=(65536-50000...

如何用单片机实现流水灯,从一依次亮到八,再从八依次亮?
单片机流水灯C语言程序的源代码如下:include \/\/51系列单片机定义文件。define uchar unsigned char \/\/定义无符号字符。define uint unsigned int \/\/定义无符号整数。void delay(uint); \/\/声明延时函数。硬件特征 1、单片机的体积比较小, 内部芯片作为计算机系统,其结构简单,但是功能完善,使用起来十分...

单片机流水灯每一盏灯后面都有这个 delay(0.1); LED0=OFF;有什么用_百...
LED0=ON; \/\/低电平使led0灯亮 delay(0.1); \/\/ 延时一段时间,即使led0亮一段时间,例如2S LED0=OFF; \/\/关闭led0,为下一个灯点亮做准备 下面的程序依次使led1亮1S,然后关闭,接着led2,依次亮下去,实现流水灯。

C51单片机按下独立按键切换流水灯或跑马灯的流动速率
流水灯每变化一次,即流动一步,都要延时的,通常是调延时子程序,而且要带一个延时的时间值,例如:delay(5000);如果所带参数是一个常数,那流水灯的速度就是固定不变的。如果改成一个变量,如:delay(speed); 这速度就可以变化可调了。这样,通过按键改变变量speed的值,就调速度了。

控制单片机p1口输出,实现led1~led8左,右流水灯循环,各灯间隔时间为100...
while(1){ for(i=7;i>0;i--){ P2=_crol_(P2,1);DelayMS(150);} for(i=7;i>0;i--){ P2=_cror_(P2,2);DelayMS(150);} } } 花样流水灯代码:include <reg52.h> define uchar unsigned char define uint unsigned int uchar code Pattern_P0[]= { 0xfc,0xf9,0xf3,0xe7,0x...

单片机流水灯程序中while和delay的关系
你好,这是个简单延时 解释如下:while(i--)是个通过纯属消耗CPU时间的方式 来达到延时目的 delay(50000)中 50000就是要让 while(i--)在delay函数中 循环50000次 延时这么久 后执行下一条语句

这个单片机流水灯程序的延时时间是怎么算的?
你的【a == 0x100】是错误的,0x的意思就是十六进制,没有0x100的用法啊。可能是我孤陋寡闻,没有见过。还有这是c语言三级嵌套延时程序,你首先搞明白语句的意思,然后查一查每个语句的耗时,if (c==0x100) { c=1;}比如这个就是执行c==0x100成立就执行c=1,这耗费了>2个机器周期。

51单片机流水灯程序
sbit led3 = P2^2;sbit led4 = P2^3;sbit led5 = P2^4;sbit led6 = P2^5;sbit led7 = P2^6;sbit led8 = P2^7;void main(){ int i,j;\/\/点亮第一个灯 led1 = 1;led2 = 0;led3 = 0;led4 = 0;led5 = 0;led6 = 0;led7 = 0;led8 = 0;\/\/延时1秒 for(i =...

单片机流水灯汇编程序 其中延时的计算方法
80c51单片机的晶体振荡周期等于振荡频率的倒数, 单片机的晶振频率为22.1184 MHZ。 则振荡周期为 1\/22.11848 .80c51单片机中有一个机器周期,它有12个振荡周期组成。 它的振荡周期=12*(1\/22.11848)us。一般延时指令DJNZ为双周期指令。所以执行一次=2*【12*(1\/22.11848)】us。最后你看你执行...

林哑13793597133问: 51单片机,有8个流水灯,每个之间延迟1秒,这个延迟用c程序编写怎么写 -
韩城市科林回答: 要看你的时钟周期,如果是12Mhz的话,每个时钟周期MC=6*2/12 M =1us,所以延迟是让机器计数1000000下,上面那个公式你自己套用24Mhz的就是2000000下.c语言的循环次数你自己算,每条指令一个周期,所以楼上的程序在12Mhz下是1s延迟.

林哑13793597133问: 单片机做流水灯时,怎么使灯亮的时间长点,而延时到下一盏灯亮的时间短一点? -
韩城市科林回答: 加一个for循环,定义一个值为100,或者更大,让循环里面是灯的亮,循环完事后立即去点亮另个灯,一直循环,这样看你控制几个灯,有点麻烦,最好和上面说的那样,定义几个延时子程序,灯亮调用这个,灭调用另一个时间短的.这样程序量会少些.

林哑13793597133问: AT89C51单片机延时1秒程序怎么写??? -
韩城市科林回答: void DELAY(int z)//延时zms {int x,y;for(x = z;x > 0;x--)for(y = 110;y > 0;y--); }DELAY(1000); 就可以延时1S 但是有很小的误差 精确的只能用定时器了

林哑13793597133问: 求51单片机流水灯延时函数,控制时间那种,比如:1灯1秒亮,2灯就要0.9秒亮,然后3灯0.8秒亮,如此类推 -
韩城市科林回答: #include<reg52.h> // 仿真 试试#define uchar unsigned char#define uint unsigned int uchar i,t; uchar code tabled[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; // 发光二极管 可以有很多方法 void delay(uint z) // 延时程序 { uint x,y; for(x=z;x>0;x--) for(y=...

林哑13793597133问: 利用单片机c语言编程设计闪烁时间为1秒流水灯程序 -
韩城市科林回答: 流水灯? 1、控制管脚高低电平,也就是0或1 2、流水不就是一个1 其余0?交替点亮 3、走到头的时候记得加判断 置回到最初 4、1秒?写个延时 或者用定时器

林哑13793597133问: 单片机如何控制流水灯的程序 -
韩城市科林回答: 灯的亮灭是通过控制IO口数据来实现的;程序大体如下:#define led0 P1^0#define led1 P1^1#define led2 P1^2#define L 0 //亮#define M 1 //灭 void init() { led0 = M; led1 = M; led2 = M; } main() { init(); while(1) { delay_S(1); led0 = L; delay_S(1); led...

林哑13793597133问: 单片机流水灯1秒定时汇编程序,知道的发给我邮箱,谢谢! -
韩城市科林回答:ORG 0000HLJMP MAINORG 0030H MAIN: MOV A,#01H ;灯点亮初始状态 LP2: CPL A ;A按位取反MOV P1,ALCALL DELAY ;延时1s RL A ;左移一位CJNE A,#0,LP1MOV A,#01HLP1: SJMP LP2 ORG 0100H DELAY: MOV R3,#5 ...

林哑13793597133问: 51单片机c语言定时器控制流水灯 -
韩城市科林回答: #include //51系列单片机定义文件 #define uchar unsigned char //定义无符号字符 #define uint unsigned int //定义无符号整数 void delay(uint); //声明延时函数 void main(void) { uint i; uchar temp; while(1) { temp=0xFE; for(i=0;i<8;i++) //8个流水灯依...

林哑13793597133问: AT8951单片机,关于一个简单的这流水灯程序,用汇编语言的 -
韩城市科林回答: ORG 0030H MAIN: MOV P1,#01H ACALL DELAY MOV P1,#02H ACALL DELAY MOV P1,#04H ACALL DELAY MOV P1,#08H ACALL DELAY MOV P1,#10H ACALL DELAY MOV P1,#20H ACALL DELAY MOV P1,#40H ACALL DELAY MOV P...

林哑13793597133问: 单片机IO口单个LED灯闪烁,周期为1秒,请问这样写的延时代码对不对? -
韩城市科林回答: 对的,不过代码有点麻烦.可以这样修改下试试: while(1) {led0=~led0; delay(1); }


本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网