连接到raspberry pi的加速计传感器adxl335的输出为1.如何以十进制格式输出

问题描述 投票:0回答:2

我在python中编写了以下程序,并试图读取加速计传感器输出。当我打印加速度计的输出时,我得到1.请告诉我如何获得数字的实际输出,以了解加速度计的确切倾斜度。

import RPi.GPIO as io # import the GPIO library we just installed but call it "io"
import time
io.setmode(io.BCM)
io.setwarnings(False)

x_axis = 17 # this is the GPIO number our accelerometer's x axis is connected
y_axis = 27 # this is the GPIO number our accelerometer's x axis is connected
z_axis = 22 # this is the GPIO number our accelerometer's x axis is connected

io.setup(x_axis, io.IN) # initialize receiver GPIO to take input
io.setup(y_axis, io.IN) # initialize receiver GPIO to take input
io.setup(z_axis, io.IN) # initialize receiver GPIO to take input

try:
    while True:
        x = io.input(x_axis)
    if x:
        print"x-axis ="
        print(x)
        time.sleep(1)

        y = io.input(y_axis)
    if y:
        print"y-axis"
        print(y)
        time.sleep(1)

        z = io.input(y_axis)
    if z:
        print"z-axis"
        print(z)
        time.sleep(1)

except KeyboardInterrupt:
    print("Received Interrupt")


output

pi@raspberrypi /opt/embedded $ sudo python accelerometer.py
x-axis =
1
y-axis
1
z-axis
1
x-axis =
1
y-axis
1
z-axis
1
x-axis =
1
y-axis
1
z-axis
1
python-3.x raspberry-pi accelerometer analog-digital-converter tilt-sensor
2个回答
0
投票

你可能会考虑Joan的短程序,因为这里发布的IMU略有不同

https://www.raspberrypi.org/forums/viewtopic.php?f=44&t=139584&p=949755#p949755

祝大家下午愉快! :)


0
投票

实际上ADXL335是一个模拟传感器,而覆盆子pi无法读取模拟值,它会将输出读取为高或低,以获得传感器的精确值,您应该使用与树莓派连接的ADC(模拟到数字转换器),或者您可以使用可以读取的Arduino板传感器的连续值输出

© www.soinside.com 2019 - 2024. All rights reserved.