第四章 基礎專題1

在這個章節,你將會學會:

  • 了解蜂鳴器元件的使用
  • 使用變數搭配digitalWrite\/digitalRead讀取\/寫入Arduino接腳

CH4-1 警報器

實習清單

實驗名稱 警報器
預期實驗結果 使用蜂鳴器發出警報聲
實驗目的 Ø 了解如何使用蜂鳴器
材料清單 Ø Arduino*1 Ø 無源蜂鳴器*1

元件介紹

本次實驗經會使用到蜂鳴器,蜂鳴器是一種簡單的發聲材料,有著體積小,便宜耐用的優點,蜂鳴器基本分為兩種規格。

一:無源蜂鳴器:無內建音源電路,需要從外部輸入訊號方可發聲,無極性之分。

二:有源蜂鳴器:有內建音源電路,只要通電就會發出故固定頻率之音響,有極性之分。

(一)無源式蜂鳴器 (二)有源式蜂鳴器

實習步驟與說明

本次的實習是要利用蜂鳴器發出警報聲,要使蜂鳴器改變發聲的音調,我們就要去控制蜂鳴器的頻率,因此使用到一個新的函數tone()

tone(pin, frequency)

tone(pin, frequency, duration)

pin:要產生聲音的引腳

frequency: 產生聲音的頻率,單位Hz,類型unsigned int

duration:聲音持續的時間,單位毫秒(可選),類型unsigned long

電路實作

佈線圖

Arduino程式實作

完整程式碼

01 void setup() 02 { 03 } 04 05 void loop() 06 { 07 for(int i=200;i<=800;i++) \/\/用循環的方式將頻率從200HZ 增加到800HZ 08 { 09 pinMode(4,OUTPUT); 10 tone(4,i); \/\/在四號端口輸出頻率 11 delay(5); \/\/該頻率維持5毫秒 12 } 13 delay(4000); \/\/最高頻率下維持4秒鐘 14 for(int i=800;i>=200;i--) 15 { 16 pinMode(4,OUTPUT); 17 tone(4,i); 18 delay(10); 19 } 20 } 21

程式碼說明

隨堂作業

1、 設計按下按鍵才會發出警告聲的電路與程式

CH4-2 溫度計

實習清單

實驗名稱 溫度計
預期實驗結果 使用蜂鳴器發出警報聲
實驗目的 Ø 了解如何使用蜂鳴器
材料清單 Ø Arduino*1 Ø LM35DZ溫度感應器*1

元件介紹

LM35DZ溫度感應器、是利用電壓的變化來感應溫

工作電壓:0V-30V:工作溫度,0℃-100℃

LM35DZ接腳圖

LM35DZ的工作原理是利用電壓的變化來量測溫度,

當0℃時電壓為0V,每上升1℃電壓上升10mv 利用此定律來量測溫度

實習步驟與說明

本次實驗的電路圖很簡單、難的在於將電壓轉換成溫度的公式,會利用到ANALOG IN的孔位

再次回到本實驗、該解釋本次的轉換公式了

LM35DZ感測器每上升1℃電壓上升10mv等於到100℃時輸出電壓為1V

Int n = analogRead(A0); \/\/讀取A0口的電壓值

float vol = n * (5.0 \/ 1024.0*100); \/\/使用浮點數存儲溫度數據,溫度數據由電壓值換算得到

n * (5.0 \/ 1024.0*100)

為什麼要乘以100呢、因為lm35dz偵測器100℃時輸出電壓為剛好是1V

當20℃時lm35dz 輸出 0.2V的電壓,15度C時輸出的電壓為0.15V 由此可以看出

將LM35DZ的電壓值*100就會剛好是溫度的數值

所以我們要將A0腳位的數值轉換回電壓值

N*(5\/1024)=電壓值

電壓值*100=溫度

N*(5\/1024*100)

電路實作

佈線圖

Arduino程式實作

完整程式碼

001 void setup() { 002 003 Serial.begin(9600); \/\/使用9600速率進行串口通訊 004 } 005 006 void loop() { 007 008 int n = analogRead(A0); \/\/讀取A0口的電壓值 009 010 float vol = n * (5.0 \/ 1024.0*100); \/\/使用浮點數存儲溫度數據,溫度數據由電壓值換算得到 011 012 Serial.println(vol); \/\/串口輸出溫度數據 013 delay(2000); \/\/等待2秒,控制刷新速度 014 }

隨堂作業

1、將溫度感應器與警報器結合,超過30度則警報器響起

results matching ""

    No results matching ""