完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
控制步进驱动器的,问题有二:
1、本来是要start==0之后才LED亮、电机转动,现在是一开机就LED亮、电机转动 2、要求是转动过程中行程感应器感应到(sen==0,)电机停转,并且sen==0的时候开始计时,2.5秒后继续转 现在是sen==0时电机不转也不计时,非要sen再变回1的时候才开始计时 帮我看看吧,我是菜鸟解决不了。 void automatic(void) { if(start==0&&f7==0) { f5=0; delay(30); startl=0; //启动LED stopl=1; f=1; } if(start==1&&f==1&&f7==0) { flag=1; f=0; } if(flag==1&&f5==0) { if(sen1==1&&sen2==1&&sen3==1) //三个行程感应器,只要一个感应到停转2.5秒继续转 { f7=1; sign=0; pulse=0; delay1(1); pulse=1; delay1(1); } if(sen1==0||sen2==0||sen3==0) { delay(500); //sen感应器触发,延迟2.5秒,继续转动 } } } |
|
相关推荐
1 个讨论
|
|
只有小组成员才能发言,加入小组>>
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-16 05:25 , Processed in 0.584948 second(s), Total 71, Slave 52 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191