高级会员

- 积分
- 747
- 金钱
- 747
- 注册时间
- 2016-5-21
- 在线时间
- 199 小时
|
发表于 2017-8-9 18:19:36
|
显示全部楼层
本帖最后由 haysen 于 2017-8-9 18:26 编辑
比如起个链表,链表里有两个成员,一个是运行状态,另一个是运行时间,当运行状态改变的时候添加链表节点。
比如:开始直行3秒钟,向左10秒钟,向右3秒钟,执行7秒钟。
0代表停止,1代表直行,2代表向左,3代表向右,4代表后退
校车开动时创建链表,创建首节点,运行状态为直行;
当接收到到左转命令时,将直行的时间存入第一个节点(【1,3】),并创建第二个节点,
当接收到向右命令时,将向左的时间存入第二个节点(【1,3】->[2,10])
……以此类推,每加一个节点,就将节点写入EEPROM。
等结束遥控后,回到原地,开启原路模式,读EEPROM里的节点,,启动定时器,第一个节点是1,代表先直行,直行3秒,第二个节点是2,代表此时左转,直行10秒……
^^^^^^
或者你装一个电子罗盘,记录方向,在某一个方向运行了多少时间……,这个可能更精确
我也没做过,提供个思路,大家讨论
|
|