傾斜感測器利用感測器傾斜程度,實現開關功能,原理如同輕觸開關,我們**的主要任務也是利用引腳接收到高低訊號,然後根據接收結果控制兩個輸出電位高低,控制雙色led。
#include
#include
#define tiltpin 0
#define gpin 1
#define rpin 2
void
led(
char
* color)
else
if(color ==
"green"
)else
printf
("led error");
}int
main
(void
)pinmode
(tiltpin, input)
;led
("green");
while(1
)}elseif(
1==digitalread
(tiltpin))}
}return0;
}
#!/usr/bin/env python
import rpi.gpio as gpio
tiltpin =
11gpin =
12rpin =
13def
setup()
: gpio.setmode(gpio.board)
# numbers gpios by physical location
gpio.setup(gpin, gpio.out)
# set green led pin mode to output
gpio.setup(rpin, gpio.out)
# set red led pin mode to output
gpio.setup(tiltpin, gpio.in, pull_up_down=gpio.pud_up)
# set btnpin's mode is input, and pull up to high level(3.3v)
gpio.add_event_detect(tiltpin, gpio.both, callback=detect, bouncetime=
200)
defled
(x):
if x ==0:
gpio.output(rpin,1)
gpio.output(gpin,0)
if x ==1:
gpio.output(rpin,0)
gpio.output(gpin,1)
defprint
(x):
if x ==0:
print
' *************'
print
' * tilt! *'
print
' *************'
defdetect
(chn)
: led(gpio.
input
(tiltpin)
) print(gpio.
input
(tiltpin)
)def
loop()
:while
true
:pass
defdestroy()
: gpio.output(gpin, gpio.high)
# green led off
gpio.output(rpin, gpio.high)
# red led off
gpio.cleanup(
)# release resource
if __name__ ==
'__main__'
:# program start from here
setup(
)try
: loop(
)except keyboardinterrupt:
# when 'ctrl+c' is pressed, the child program destroy() will be executed.
destroy(
)
**ps:**python程式設計也如之前的輕觸開關一樣,也是用電為公升降,不過python中利用了gpio.add_event_detect
函式比較高階而已 37種感測器 樹莓派開發 3 繼電器
巨集定義 wiringpi中的 0 引腳,對應gpio17,由於繼電器採用的只是小的電壓壓降控制,所以本次不需要pwm控制,只需要定義引腳為輸出,再利用高低輸出的無限迴圈就可以實現實現。ps pinmode 函式 原型為 void pinmode int pin,int mode digitalwr...
樹莓派連線光敏感測器
光敏電阻是一種對光線特別敏感的模組,可以輸出高低電平或者是模擬值。利用該模組可以實現類似光控燈泡這樣的功能。下面的模組中有四個介面,分別是 vcc 5v gnd 負極 d0 數字輸出,高低電平 a0 模擬輸出,可以通過ad模組得到精確的變化值 注意 下圖中藍色轉盤是用來條件輸出高低電平的閾值的。ca...
樹莓派連線超聲波感測器
你知道蝙蝠是個 瞎子 嗎?那它怎麼看東西呢?好吧,它是通過超聲波來探路的。下面我要介紹的就是超聲波模組,有了它你的樹莓派就再也不用當心會 撞牆 了!該模組會發出超聲波,在聲波碰到障礙物時會立刻返回被該模組接收到。通過超聲波模組來測距的原理就是,計算聲波返回的時間,然後與聲波的傳遞速度相乘,就能得到距...