为什么我的小车只能前进、左转、右转,但是不能后退呢?
昨天在网上买的dfrobot小车到货了然后参照这篇帖子 https://mc.dfrobot.com.cn/thread-38013-1-1.html 里面讲的iOS micro:bit APP中gamepad的应用,
以及参照
https://wiki.dfrobot.com.cn/index.php?title=(SKU:ROB0148)_micro:Maqueen(V2.0)%E6%9C%BA%E5%99%A8%E4%BA%BA%E5%B0%8F%E8%BD%A6#.E6.97.A0.E7.BA.BF.E9.81.A5.E6.8E.A7
这里讲到的对小车进行无线遥控的相关内容,对板子进行了编程,
实现了用iOS版的micro:bit APP中Monitor and Control中的Gamepad对小车进行控制
用Makecode写的代码如下:
但是现在有一个问题,通过gamepad进行控制时,小车只能前进、左转 与 右转,但是不能后退,按了gamepad上的B键后,面板上正确显示了字母"B",但是小车确并没有开始后退,而是一直停着不动
请问是我把后退的代码写错了吗?后退难道不是应该左右两个发动机全速反转运行吗?
麻烦各位帮我看看问题出在哪里?非常感谢!
而且前进也有点问题,直接点A键没有前进,必须要先点C或D向右或左转向时,再马上点A键才会前进,不知道是为什么,难道两个马达不能同时按同一转速启动,必须要有一个先后顺序吗? 后退键的发送信号一定不是B,你试一下改成其他的字母。 gada888 发表于 2019-1-13 17:12
后退键的发送信号一定不是B,你试一下改成其他的字母。
不太明白你的意思,不管是A还是B,还是C,我只要给对应的案件编程了,按理说就应该按我编的代码动作才对吧。
而且我这是说的A与B不是 板子上的那两个物理按键,是iOS的micro:bit app里的gamepad上的虚拟按键 你的程序是在单片机上的。信号ABCD这些本来是和手机app里的一一对应的。问题是那个app不是你我写的。可能写的人用的不是B,而是其他的字母表示向后退。因此你现在要改单片机的程序字母来匹配手机app发出的指令。因为不知道是什么字母。可以一个一个按ascii表来试。应该就是EFG里面的一个。不过不好说。 gada888 发表于 2019-1-13 22:32
你的程序是在单片机上的。信号ABCD这些本来是和手机app里的一一对应的。问题是那个app不是你我写的。可能写 ...
问题解决了,不是你说的那个原因,我写得控制代码本身的问题。 自己解决了,接收到按下B键的信号后的控制代码,改成这样就可以倒退了,要先把所有电机停一下,再慢速反转单侧的电机,延迟0.5秒后马上全速反转两个点击就可以了,我估计是虽然指令发出来了,但是电机之前还在满速正转,反应不过来,所以要先停止再逐步反转才行 fcmpww 发表于 2019-1-14 08:14
自己解决了,接收到按下B键的信号后的控制代码,改成这样就可以倒退了,要先把所有电机停一下,再慢速反转 ...
正解。Arduino无此问题 好像是程序的问题,我的车子也是这个样子
页:
[1]