簡體   English   中英

從傳感器讀取方波信號

[英]Reading squarewave signal from sensor

我正在使用一個雷達傳感器,它根據它正在感應的 object 的速度提供方波。 我想隨着方波信號頻率的變化計算 object 的速度。 以下代碼給出了頻率,但我的問題是,即使 gpio 引腳上沒有輸入信號,代碼也會繼續打印最后一個值。 如何使其歸零或停止打印最后一個值。

import time
import pigpio
import read_PWM
PWM_GPIO = 21
SAMPLE_TIME = 1.0
pi = pigpio.pi()
p = read_PWM.reader(pi, PWM_GPIO)
while True:
      time.sleep(SAMPLE_TIME)  
      f = p.frequency()
      pw = p.pulse_width()
      dc = p.duty_cycle()
      print(f)

您可以創建一個非門,當 GPIO 引腳沒有信號時打開。

那么您可以將代碼更改為:

import time
import pigpio
import read_PWM
PWM_GPIO = 21
SAMPLE_TIME = 1.0
pi = pigpio.pi()
p = read_PWM.reader(pi, PWM_GPIO)
p2 = read_(whateverthisimplementations HIGH, LOW basic read is)
while True:
      time.sleep(SAMPLE_TIME)  
      f = p.frequency()
      pw = p.pulse_width()
      dc = p.duty_cycle()
      if p2 != HIGH:
           print(f)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM