![d2688d9a461992ea011f1ec750503a8a.png](https://i-blog.csdnimg.cn/blog_migrate/92171ccc3d625ad1066e2da93adc07f8.jpeg)
代码已上传github,逐步更新中:https://github.com/zhuanghany11/rpi_vehicle
用WiringPI来驱动树莓派GPIO,控制L298P芯片,最终驱动小车电机。这个流程应该不算太复杂,那么现在就开始吧。小车采用差速驱动,因此左右两侧电机分别连接芯片的A B两组端口即可,左侧两电机的正极连接IN1, 负极IN2,并由ENA来控制,右侧两电机的正极连接IN3, 负极IN4,并由ENB来控制。那么剩下的主要问题就是这个WiringPI该如何使用了。。
我不记得我自己安装过WiringPi,所以我理解这个应该是自带的,可以通过gpio -v命令来看是否装有这个库。相信一些使用过单片机的同学应该都对此比较熟悉了,我也不是在这个方面的专家因此也不会过多介绍该库的功能,只是将我用到的部分进行介绍。WiringPI是基于C++的库,用来驱动树莓派的GPIO口,其功能基本和python的gpio库相同,只是一些语法标记上有些不一样而已。
我们的小车驱动需要用到上述的6个接口,其中ENA和ENB接受的是PWM信号,IN1~4接受的是高低电平的5V电压数字量。由于车上用的驱动板已经把对应的GPIO与L298P接好了,因此就直接使用定义好的接口编号就好了。
#include <