让Q0.0先以亮1s灭2s的频率闪烁10次,10次后以亮2s灭1s的频率闪烁的梯形图程序

让Q0.0先以亮1s灭2s的频率闪烁10次,10次后以亮2s灭1s的频率闪烁的梯形图程序,第1张

(S5TIME)32S5时间,以10ms为时基S5T#0H_0M_10MS~S5T#2H_46M_30S_0MSL S 与程序段2一起实现灯Q00的闪烁;按第三次时,用Q01来清空计数器。实验仿真:第1 输入滤波器造成的时间常数、输出继电器机械滞后以及程序设计不当的附加影响等有关。

我写的这个程序应该可以,按一下灯亮,再按一下灯灭

#include

"REG52H"

sbit

LED1_01

=

P1^1;

//LED灯

sbit

KEY0_01

=

P1^2;

//按键

void

Delay_1ms(unsigned

int

Time)

{

unsigned

int

x,

y;

for(x

=

Time;

x

>

0;

x--)

for(y

=

120;

y

>

0;

y--);

}

int

main(void)

{

LED1_01

=

1;

//打开LED灯点亮

while(1)

{

if(KEY0_01

==

0)

//检测按键是否按下

{

Delay_1ms(10);

//延时去抖动

if(KEY0_01

==

0)

//确定按键按下

{

LED1_01

=

~

LED1_01;

//取反LED灯

[

]

}

while(KEY0_01

==

0);

//检测松手

}

}

}

你的图里有A/D转换器

AD转换函数ADC_DISC

#include

<REGX51H>

#include"defh"

#include"libh"

sbit

adc_cs=P1^0;

sbit

adc_rd=P1^1;

sbit

adc_wr=P1^2;

/ADC0804启动转换函数/

INT8U

start_ad()

{

INT8U

temp;

adc_cs=0;

adc_wr=1;

delay(1);

adc_wr=0;

delay(1);

adc_wr=1;

delay(1);

//启动AD

adc_rd=1;

delay(1);

adc_rd=0;

delay(1);

temp=P2;

delay(1);

adc_rd=1;

delay(1);

//读取数据

return

temp;

}

用这个程序。

以上就是关于让Q0.0先以亮1s灭2s的频率闪烁10次,10次后以亮2s灭1s的频率闪烁的梯形图程序全部的内容,包括:让Q0.0先以亮1s灭2s的频率闪烁10次,10次后以亮2s灭1s的频率闪烁的梯形图程序、汇编语言或C语言编写一个控制灯闪烁的程序、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/zz/9813737.html

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

发表评论

登录后才能评论

评论列表(0条)

保存