樹莓派基礎-模擬信號和數字信號的區別

樹莓派是不少程序員都喜歡玩的,我我的也很喜歡玩,開源接觸到不少關於linux的知識,也能夠經過讀取硬件的數據來學習關於數據庫的知識。

原文連接:https://www.pipipi.net/75.html
前言
本文詳解闡釋了模擬信號和數字信號的區別,但願幫助到有須要的朋友。html

數字信號
使用樹莓派上的GPIO引腳,很容易向輸出組件發送信號並打開或關閉。還能夠檢測輸入組件是否打開或關閉。以這種方式工做的組件稱爲數字組件(Digital components)。linux

數字輸出
LED是數字輸出元件的一個例子。它能夠是打開的,也能夠是關閉的,二者之間沒有任何價值。咱們能夠把ON和OFF狀態看做是1或0。你能夠發送一個1給LED LED就會亮了,當你給LED發送0給 LED就熄滅了。git

圖片描述程序員

數字輸入
一個按鈕是數字輸入組件。它能夠是打開的,也能夠是關閉的。當按鈕被按下時,它向鏈接的樹莓派GPIO引腳發送1。當按鈕被釋放時,它向GPIO引腳發送0。沒有其餘能夠發送的值,由於你把按鈕按到一半,幻想能夠輸出0.5。
圖片描述數據庫

請看下面這個圖,這個圖顯示了按鈕被按壓和釋放的輸入數據,當按壓的時候輸出1當釋放的時候輸出0。
圖片描述
模擬信號
數字輸入和輸出組件在Raspberry Pi中很常見,由於GPIO引腳都是數字的。它們只能發送或接收1和0。學習

然而,並不是全部組件都是數字的。有些被稱爲模擬組件。模擬部件能夠在1和0之間發送和接收值。.net

模擬輸出
電機是模擬輸出元件的一個例子。你能夠把它的值在1和0之間,這將控制電機的速度。若是你發送電機A 1,它將全速驅動。若是你把它發送0.5,它將以半速行駛。發送0將中止電機。
圖片描述
模擬輸入
模擬輸入元件的一個例子是光相關電阻器(LDR)。當沒有光照在部件上時,它將發送0,而且隨着光的增長,光敏發送的值將逐漸增長,直到它達到最大值1。component

圖片描述
下圖顯示了從LDR發送的信號在一天當中24小時的變化,隨着光線越亮值越大,光線越暗值越小。htm

圖片描述圖片

使用樹莓派的模擬組件比使用數字組件更加困難。

爲了使用GPIO引腳的模擬輸出組件,您須要使用一種稱爲脈衝寬度調製(PWM)的技術。這向份量發送1秒和0秒的很是快的脈衝,當將其做爲平均值時,能夠將其接收爲介於1和0之間的值。

請看下面的圖表。藍線顯示數字信號,在一段時間內,從0移動到1,而後再次返回。信號爲1的是總時間的三分之一,剩下的三分之二是0。

而後這個平均值約爲0.33,這將是模擬組件接收到的值。你能夠看到這是圖上的紅線。

圖片描述

要使用模擬輸入組件與GPIO引腳,您須要使用模擬到數字轉換器(ADC),將模擬信號轉換爲數字信號。你能夠買小的adc在你的電路使用。另一種選擇是在電路中使用電容和模擬元件。

總結在樹莓派上使用模擬輸出是採用pwm技術,若是想要讀取模擬輸入那就須要ADC模擬到數字轉換器,由於樹莓派上沒有ADC,所以我認爲若是咱們想要讀取相似LDR或者模擬輸入的狀況,咱們可使用相似Nodemcu這種自帶ADC的板子,而後再經過MQTT協議發送給樹莓派,這樣就很方便了。

相關文章
相關標籤/搜索