W801X Arduino 讀取光敏傳感器AO端口輸出

發布於 2023-07-14 10:48:46

光敏傳感器介紹

光敏傳感器有兩個輸出,一個是DO (Digital Output),另一個是AO (Analog Output), DO是數字輸出,只輸出0或1,AO是模擬輸出.

必需品

  1. 1 x 面包板
  2. 1 x W801板
  3. 1 x 光敏電阻傳感器模塊
  4. 5 x 跳線

光敏傳感器原理圖

41c91b35a6dfeceb94c3e1cd905788cf.png

接線圖

根據電路圖連接面包板上的元件,如下圖所示。

ADC讀取模擬電壓.jpg

草圖

在計算機上打開Arduino IDE軟件。使用Arduino語言對電路進行編碼和控制。點擊“新建”打開新建草圖文件。這裡不討論具體的配置。

open.jpg

代碼

/*

 讀取模擬電壓
 讀取引腳PA2上的模擬輸入,將其轉換為電壓,並將結果打印到串行監視器。
 圖形表示可使用串行繪圖儀(工具>串行繪圖儀菜單)。
 將電位器的中心引腳連接到引腳PA1,外部引腳連接到+5V和地。

*/

#include "Arduino.h"

void setup()
{
  Serial.begin(115200);  // initialize serial communication at 115200 bits per second:
  pinMode(PA2,ANALOG_INPUT);  //Initialize PA2 port as the analog input port
}

void loop()
{
  float volt = 0;
  volt = analogRead(PA2);
  Serial.printf("ADC millivolt [%f]\r\n", volt);
  delay (100);
}

代碼導入步驟

首先單擊Verify驗證代碼是否正確

1eb55992e618394f516378dc48b779b3.jpg

接著單擊Upload上傳代碼彈出保存框,在相應的位置編輯文件名並保存即可

27f363e694f6a241818561e7e1236ab9.jpg

16892212723385.jpg

也可以如下步驟

燒錄步驟1_副本.jpg

最後等待上傳需要十幾秒的時間,顯示以下即表示成功

6f1f1a696c4d4368c9238972d20e5c5b.jpg

代碼解釋

你在設置功能中做的第一件事是使用以下代碼以每秒115200比特的速度啟動板和計算機之間的串行通信:

Serial.begin(115200);

在代碼的主循環中,您需要創建一個變量來存儲來自光電傳感器的電壓值。

volt = analogRead(PA2);

最後,您需要將此信息打印到串行窗口。你可以在代碼的最後一行使用Serial.printf()命令:

Serial.printf();

現在,通過單擊頂部綠色條右側的圖標或按Ctrl+Shift+M,在Arduino IDE中打開串口監視器。
f1b6ce4e7efae324e5ed81b8cb5c263c.jpg

結果

你會看到一個從0.0到2.5之間的穩定數字流。當你遮擋光敏電阻時,這些值會改變,對應於引腳PA2上的電壓。

0 條評論

發布
問題