这样的程序一旦定义舵机,舵机就会直接到一端的极点不动了,为啥
-
请贴出具体的代码。
-
from pyb import Pin
import time
import car
from pyb import Servo
s3 = Servo(3) # P8
p_in1 = Pin('P4', Pin.IN, Pin.PULL_UP)#设置p_in为输入引脚,并开启上拉电阻
p_in2 = Pin('P5', Pin.IN, Pin.PULL_UP)#设置p_in为输入引脚,并开启上拉电阻while(True):
value1 = p_in1.value() # get value, 0 or 1#读入p_in引脚的值
value2 = p_in2.value() # get value, 0 or 1#读入p_in引脚的值if value2==0:
car.run(10,10)
time.sleep(100)
else:
s3.angle(80)
time.sleep(10)
-
什么意思?
这个代码的目的是什么?效果是什么?
-
如果pin2是低电平,就轮转动,高电平就舵机转到80度
-
问题在哪?你想让我看什么?
-
但是这样的程序一旦运行,碰到s3 = Servo(3)这条语句,舵机就会直接转进死区,没法控制
-
你不要加引脚电平判断,只控制舵机。
如果你怀疑s3.angle(80)这一句有问题,那就写一个只有控制舵机的代码。
-
正常不是应该遇到s3 = Servo(3)这条语句,舵机没反应吗?但是这个程序中会让舵机直接转到最右端,然后后面控制舵机转动的程序就没用了
-
from pyb import Servo import time s3 = Servo(3) # P8 while True: s3.angle(-90) time.sleep(1000) s3.angle(90) time.sleep(1000)
你只运行这个代码,有没有问题?
-
没问题,一结合就完了
-
你代码缩进有问题,改了再说。
-
缩进应该没问题,这个是复制的问题
-
缩进有问题
改了再说。
-
必看:玩转星瞳论坛了解一下图片上传,代码格式等问题。
-
-
所以呢?
是你问我问题诶,还得我一直问你?
-
这样的缩进不对吗,我要怎么改呢?感谢感谢~
-
代码一定要让别人可以运行的文本,不要贴图片
-
刚才说是新用户,两分钟才能发,发慢了
from pyb import Pin
import time
import car
from pyb import Servo
s3 = Servo(3) # P8
p_in1 = Pin('P4', Pin.IN, Pin.PULL_UP)#设置p_in为输入引脚,并开启上拉电阻
p_in2 = Pin('P5', Pin.IN, Pin.PULL_UP)#设置p_in为输入引脚,并开启上拉电阻while(True):
value1 = p_in1.value() # get value, 0 or 1#读入p_in引脚的值
value2 = p_in2.value() # get value, 0 or 1#读入p_in引脚的值if value2==0:
car.run(10,10)
time.sleep(100)
else:
s3.angle(80)
time.sleep(10)
-
必看:玩转星瞳论坛了解一下图片上传,代码格式等问题。
你重新编辑一下代码。