Arduino 記事本 附件1 : 申請ThingSpeak帳號 取得連結 Facebook Twitter Pinterest 以電子郵件傳送 其他應用程式 - 11月 17, 2017 網頁筆記本-A01 申請ThingSpeak帳號 ThingSpeak官網 進入ThingSpeak官網 點選Get Started For Free 依序輸入 Email、帳號、密碼、名稱 按下 Continue 進行帳號(E-Mail)確認後重新登入ThingSpeak 按下New Channel建立 輸入Name、Filed後按下儲存 正確建立Channel後顯示 取得連結 Facebook Twitter Pinterest 以電子郵件傳送 其他應用程式 留言
Arduino 記事本 07 : 發出聲音(無源蜂鳴器)控制 - 11月 30, 2017 網頁筆記本-007 Arduino 記事本 07 : 發出聲音(無源蜂鳴器)控制 無源蜂鳴器:內無震盪電路,無法使用單純IO訊號發音,但可透過送出的方波頻率控制其發音音頻高低。 有源蜂鳴器:內含震盪電路,透過IO訊號即可發出聲音,發聲為單音音色。 無源蜂鳴器一般有兩支腳位,上頭標示[+]接至訊號控制,另一腳位接地。 程式控制發音 網路上找到的資料,先定義各音色 // include pitches.h #define NOTE_B0 31 #define NOTE_C1 33 #define NOTE_CS1 35 #define NOTE_D1 37 #define NOTE_DS1 39 #define NOTE_E1 41 #define NOTE_F1 44 #define NOTE_FS1 46 #define NOTE_G1 49 #define NOTE_GS1 52 #define NOTE_A1 55 #define NOTE_AS1 58 #define NOTE_B1 62 #define NOTE_C2 65 #define NOTE_CS2 69 #define NOTE_D2 73 #define NOTE_DS2 78 #define NOTE_E2 82 #define NOTE_F2 87 #define NOTE_FS2 93 #define NOTE_G2 98 #define NOTE_GS2 104 #define NOTE_A2 110 #define NOTE_AS2 117 #define NOTE_B2 123 #define NOTE_C3 131 #define NOTE_CS3 139 #define NOTE_D3 147 #define NOTE_DS3 156 #define NOTE_E3 165 #define NOTE_F3 175 #define NOTE_FS3 185 #define NOTE_G3 196 #define NOTE_GS3 208 #define NOTE_A3 220 #define NOTE_AS3 233 #define NOTE_B3 247 #define NOTE_C4 262 閱讀完整內容
Arduino 記事本 06 : Read-Time Clock(RTC)模組 - 11月 29, 2017 網頁筆記本-006 Arduino 記事本 06 : Read-Time Clock(RTC)模組 RTC:時鐘,可於系統端無電力供應狀態下,使用電池持續計數時間。 硬體&接線: RTC模組 Tiny RTC I2C Modules (DS1307) 使用DS1307晶片。 電池使用LIR2032(3.6V),消耗少於500nA。 電池如改用CR2032(3.0V)需拆除D1、R4、R5、R6後,並短路R6接點。 未改裝會爆電池。 VCC電壓使用5V。 二線式I2C介面(SDA、SCL)。 準確日曆至2100年 輸出:年/月/日,時:分:秒,具閏年補償。 提供4kBit EEPROM。 其它資料參考-1 接線 VCC => 5V GND => 0V SDA => SDA SCL => SCL LIB 安裝程式庫(LIB) 選擇草稿碼 => 匯入程式庫 => 管理程式庫... 尋找DS1307RTC => 安裝LIB(DS1307RTC by Michael Margolis),可以有<DS1307RTC.h> 尋找RTC => 安裝LIB(Time by Michael Margolis),可以有<TimeLib.h> Code // RTC寫入/讀出時間 #include < Time . h > #include < TimeLib . h > #include < Wire . h > #include < DS1307RTC . h > tmElements_t tmTime ; tmElements_t tmRTime ; /* tmElements_t 定義在TimeLib.h內,內容如下 * uint8_t Second; * uint8_t Minute; * uint8_t Hour; * uint8_t Wday; // day of week, sunday is day 1 * uint8_t Day 閱讀完整內容
Arduino 記事本 04 : 使用內建提升電阻 - 11月 15, 2017 網頁筆記本-004 Arduino內建的提升電阻 Arduino : 一般狀況下的程式設定 一般腳位在設定時通常是Key成這樣 void setup() { pinMode(13, OUTPUT); // 設定成輸出腳位 pinMode(12, INPUT); // 設定成輸入腳位 } void loop() { bool PB1 = digitalRead(12); digitalWrite(13, PB1); } 實做後發現,輸入腳位會不定時並且不斷的收到訊號輸入。 硬體上的防彈跳電路 在按鈕按下前可持續收到HIGH訊號,按下按鈕後收到LOW訊號。 電阻為提升電阻功能,可保證按鈕未按下前收到HIGH訊號。 電容的作用可防止按下的瞬間產生數次的HIGH-LOW訊號來回切換(彈跳訊號)。 Adruino提供的內部提升電阻 程式如下 void setup() { pinMode(2, INPUT_PULLUP); pinMode(13, OUTPUT); } void loop() { int sensorVal = digitalRead(2); if (sensorVal == HIGH) { digitalWrite(13, LOW); } else { digitalWrite(13, HIGH); } } 輸入腳位的設應改變成 pinMode(2, INPUT_PULLUP); 官網介紹 閱讀完整內容
留言
張貼留言