#!/usr/bin/env python
import RPi.GPIO as GPIO
import time
pin=18
GPIO.setmode(GPIO.BCM)
GPIO.setup(pin, GPIO.IN)
while True:
#等待低电平结束,然后记录时间
while GPIO.input(pin) == 0: #捕捉信号端输出上升沿
pass
time1 = time.time()
#等待高电平结束,然后记录时间
while GPIO.input(pin) == 1: #捕捉信号端输出下降沿
pass
time2 = time.time()
#等待低电平结束,然后记录时间
while GPIO.input(pin) == 0: #捕捉信号端输出上升沿
pass
time3 = time.time()
#print(time1)
#print(time2)
#print(time3)
period = time3 - time1
high_time = time2 - time1
low_time = time3 - time2
duty_cycle = (int)(high_time * 100 / period*100)
print(duty_cycle)
time.sleep(0.1)
#print("-------------------------")
树莓派4B解析PWM
猜你喜欢
转载自blog.csdn.net/u014492512/article/details/124983273
今日推荐
周排行