这篇博客我就简单介绍一下好了,不深入讲了
需要注意的是,我这里用到了ROS,所以运行之前需要安装ROS
初始化中有一个12和50,分别代表频率,完之后他就会让pin12自动输出50hz的50%空占比的PWM波。
如果你想改这个配置的话,需要用ROS话题发布/pwm这个话题来控制他
话题格式没用自定义的,而是使用Point这个数据格式
其中
- x:代表是否继续输出,0就是停止
- y: 代表的是频率
- z: 代表的是空占比,如0.5就是50%
需要注意的是,利用普通引脚进行输出的PWM会不稳定
#!/usr/bin/env python
# coding:utf-8
import Jetson.GPIO as GPIO
import time
import rospy
from multiprocessing import Process, Queue
from geometry_msgs.msg import Point,Twist
class PWM():
def __init__(self, channel, frequency, level=1):
self.channel = channel
self.frequency = frequency
if level == 1: