Arduino 晶片與 Micro:bit 最大差異就在於他沒有顯示的畫面,寫程式的時候還可以透過序列埠監控視窗 (Serial Monitor) 來輸出各項參數,以確認程式是否運作正常。但是離線之後,Arduino 就沒有顯示畫面了,所以如果可以加一個「螢幕」就好了。
所幸 Arduino 其實支援也蠻多的,這邊介紹一個簡單的 LCD 螢幕,最基本款可以顯示兩行文字,每行16個字。
這款 LCD 的使用很簡單,接線與程式都可以參考 16x2 LCD液晶螢幕(Michael_Jheng的部落格)。
但是,同樣的語法在聯發科的晶片卻不能執行。
我推測是聯發科的 BlocklyDuino 所帶的 Arduino IDE ,其中的 Library 程式與網路上下載的液晶螢幕的 Library 有些差異。
其中最大差異有兩點,首先函式宣告的方式不同。
Arduino 是
LiquidCrystal_I2C lcd(0x27, 16, 2);
而 Linkit 7697 是
LiquidCrystal_I2C lcd(0x27);
其次在初始化的時候
Arduino 是
lcd.init();
而 Linkit 7697 是
lcd.begin(16, 2);
最後就是連接線的位置,Linkit 7697 的 SCL 是P8 (擴充槽上是D8),而 SDA 則是要連到 P9 (擴充槽上是D9)。
只要這三個地方注意一下,聯發科的晶片也可以連結 LCD 螢幕。
我的程式連結。
2019年11月3日 星期日
2019年11月2日 星期六
連結溫度傳感器 DS18B20
在聯發科的積木型編輯器(BlocklyDuino),他沒有提供讓使用者新增程式庫的功能,例如這個溫度傳感器 DS18B20 程式庫就沒有辦法加到這個積木型編輯器中,所以我們只有透過在 Arduino IDE 中來做。
以下告訴大家如何在 Arduino IDE 新增溫度傳感器 DS18B20 的程式庫,這部分不只是可以用在聯發科的晶片,所有的 Arduino 晶片都可以這樣使用這個溫度傳感器。
由於這個溫度傳感器是達拉斯公司推出的一線式傳感器(細節請自行上網搜尋),所以我們需要兩個程式庫分別是:
OneWire-2.3.5.zip
DallasTemperature-3.8.0.zip
首先你可以到工具的選單中,打開程式庫管理員,然後搜尋「DallasTemperature」, 選擇適當的版本後,按下安裝就可以了。
OneWire的部份也是類似。
兩個程式庫都安裝好之後,你的 Arduino IDE 就可以寫這個溫度傳感器的程式了。
參考範例連結:請將這個連結打開,將程式複製到你的 IDE ,上傳到你的聯發科晶片就可以執行了。
以下告訴大家如何在 Arduino IDE 新增溫度傳感器 DS18B20 的程式庫,這部分不只是可以用在聯發科的晶片,所有的 Arduino 晶片都可以這樣使用這個溫度傳感器。
由於這個溫度傳感器是達拉斯公司推出的一線式傳感器(細節請自行上網搜尋),所以我們需要兩個程式庫分別是:
OneWire-2.3.5.zip
DallasTemperature-3.8.0.zip
首先你可以到工具的選單中,打開程式庫管理員,然後搜尋「DallasTemperature」, 選擇適當的版本後,按下安裝就可以了。
OneWire的部份也是類似。
兩個程式庫都安裝好之後,你的 Arduino IDE 就可以寫這個溫度傳感器的程式了。
參考範例連結:請將這個連結打開,將程式複製到你的 IDE ,上傳到你的聯發科晶片就可以執行了。
聯發科晶片 Linkit 7697 與 Arduino IDE
使用聯發科的晶片 Linkit 7697 官網上的介紹是使用他們的 BlocklyDuino 來寫程式,但是這個積木型的編輯器(Blockly)與 Microbit 的積木型的編輯器很不一樣,他沒有辦法讓我們自己增加不同的 Library (程式庫),所以當我們面對要參加一個新的硬體(傳感器)的時候, BlocklyDuino 就沒有辦法支援,還好,聯發科的晶片也是可以用 Arduino IDE 來寫,所以我在這裡簡單的介紹怎麼樣讓你的 Arduino IDE 可以寫聯發科的晶片 Linkit 7697。
首先打開 Arduino IDE , 到檔案下面的偏好設定。
接著再到工具底下的開發板中,你可以看到清單裡面的最下面出現的聯發科7697的晶片,點選它之後,你就可以用這個 Arduino IDE 來寫入聯發科的晶片。
首先打開 Arduino IDE , 到檔案下面的偏好設定。
在偏好設定的頁面中,可以找到「額外的開發板管理員網址」,在裡面輸入以下網址:
http://download.labs.mediatek.com/package_mtk_linkit_7697_index.json
http://download.labs.mediatek.com/package_mtk_linkit_7697_index.json
接著到工具底下的開發版,打開「開發版管理員」。
在開發版管理員的頁面中,搜尋 7697 ,然後你就可以找到聯發科7697的晶片,選擇最新的版本進行安裝。
接著再到工具底下的開發板中,你可以看到清單裡面的最下面出現的聯發科7697的晶片,點選它之後,你就可以用這個 Arduino IDE 來寫入聯發科的晶片。
2019年7月25日 星期四
Arduino 與 溫濕度計DHT11
這篇文章是參考小狐狸事務所-Arduino 溫濕度感測器 DHT11 測試 而改寫的。
原因是最近帶學生做的一個專題中,我們需要用 Arduino 讀取溫溼度計的值,所以找了相關的資料,但是因為使用本機安裝的 Arduino IDE 時總是覺得有些跑不動,所以後來都是使用 Arduino 官網的 online Editor 來使用,因此用這篇部落格來稍微解釋一下怎麼在 online Editor 中安裝 DHT11 所需要的 Library 。
首先我們進入 online Editor 的畫面:
畫面共分成三區,最右邊是程式編輯區,最左邊是選單區,上圖目前選的是 Skechbook (程式區) ,中間那區則是選單項目所對應的項目,目前可以看到我的程式區中的程式項目。
在程式中,我們可以看到這個溫濕度偵測器的需要 include (包含)一個 "DHT.h" 的函式庫進來(下圖紅色區域中)。
對於剛接觸程式的同學來說,可能有些不清楚什麼是包含一個函式庫進來。
想像一下,你現在要去日本,可是你不會說日語,所以你準備一台翻譯機,裡面存了一些常用的日語,所以你可以直接將你需要的日語點出來,讓翻譯機發音給你說話的對象,這樣他就知道你要說什麼了。
針對不同的偵測器(硬體),程式無法直接與他溝通,所以出產這些硬體的公司就會配合這些硬體,寫好一些程式看得懂的小程式(函式),這時候我們用到這些硬體的人,只要直接運用他們的函式,我們就可以讓我們的程式跟這些硬體進行溝通了。
要去那裡尋找這個函式呢?
首先點選選單區的 Libraries ,然後在 SEARCH LIBRARIES 中輸入 dht 進行搜尋,接著你可以找到與 dht 相關的函式庫。下圖顯示我們找到一個 DHT SENSOR LIBRARY ,下方甚至可以直接點開範例 Examples 來參考這個函式的使用方法。
當你的游標移到這個函式名稱上面時,你會發現畫面出現 INCLUDE 的字樣,點擊它就可以直接將函式庫包含到你的程式中,如下圖右側方塊。
有沒有可能在搜尋的時候並沒有找到可以用的函式庫?
當然,這時候你就需要用匯入(Import)的方式,將適當的函式庫加到你的 online Editor 中。
這個適當的函式庫當然是要努力的區搜尋看看,但是關於這個 DHT11 的函式庫,網路上已經有很多說明了,在小狐狸的文章中,也指出來我們可以到 Github 中去下載,路徑如下:
http://github.com/adafruit/DHT-sensor-library
進入上述函式庫的 Github 連結之後,我們可以看到以下畫面,
下載之後,通常檔案會放在下載區。
回到 online Editor 的 Libraries ,點選 IMPORT 進行匯入函式庫的動作。
點選之後會出現另一個畫面,請繼續點選 IMPORT 按鈕。
然後透過對話框選取剛剛下載的檔案,接著按下開啟就完成函式庫匯入了。
完成函式庫匯入之後,就應該可以在搜尋函式庫中找到 DHT11 的函式庫了。
程式碼連結。
計算露點溫度的程式。
DHT11的接線方式可以參考這個網站。
原因是最近帶學生做的一個專題中,我們需要用 Arduino 讀取溫溼度計的值,所以找了相關的資料,但是因為使用本機安裝的 Arduino IDE 時總是覺得有些跑不動,所以後來都是使用 Arduino 官網的 online Editor 來使用,因此用這篇部落格來稍微解釋一下怎麼在 online Editor 中安裝 DHT11 所需要的 Library 。
首先我們進入 online Editor 的畫面:
畫面共分成三區,最右邊是程式編輯區,最左邊是選單區,上圖目前選的是 Skechbook (程式區) ,中間那區則是選單項目所對應的項目,目前可以看到我的程式區中的程式項目。
在程式中,我們可以看到這個溫濕度偵測器的需要 include (包含)一個 "DHT.h" 的函式庫進來(下圖紅色區域中)。
對於剛接觸程式的同學來說,可能有些不清楚什麼是包含一個函式庫進來。
想像一下,你現在要去日本,可是你不會說日語,所以你準備一台翻譯機,裡面存了一些常用的日語,所以你可以直接將你需要的日語點出來,讓翻譯機發音給你說話的對象,這樣他就知道你要說什麼了。
針對不同的偵測器(硬體),程式無法直接與他溝通,所以出產這些硬體的公司就會配合這些硬體,寫好一些程式看得懂的小程式(函式),這時候我們用到這些硬體的人,只要直接運用他們的函式,我們就可以讓我們的程式跟這些硬體進行溝通了。
要去那裡尋找這個函式呢?
首先點選選單區的 Libraries ,然後在 SEARCH LIBRARIES 中輸入 dht 進行搜尋,接著你可以找到與 dht 相關的函式庫。下圖顯示我們找到一個 DHT SENSOR LIBRARY ,下方甚至可以直接點開範例 Examples 來參考這個函式的使用方法。
當你的游標移到這個函式名稱上面時,你會發現畫面出現 INCLUDE 的字樣,點擊它就可以直接將函式庫包含到你的程式中,如下圖右側方塊。
有沒有可能在搜尋的時候並沒有找到可以用的函式庫?
當然,這時候你就需要用匯入(Import)的方式,將適當的函式庫加到你的 online Editor 中。
這個適當的函式庫當然是要努力的區搜尋看看,但是關於這個 DHT11 的函式庫,網路上已經有很多說明了,在小狐狸的文章中,也指出來我們可以到 Github 中去下載,路徑如下:
http://github.com/adafruit/DHT-sensor-library
進入上述函式庫的 Github 連結之後,我們可以看到以下畫面,
點選右側的 Clone or download ,會出現以下畫面,請點選 Download ZIP 來下載函式庫的 ZIP 壓縮檔。
下載之後,通常檔案會放在下載區。
回到 online Editor 的 Libraries ,點選 IMPORT 進行匯入函式庫的動作。
點選之後會出現另一個畫面,請繼續點選 IMPORT 按鈕。
然後透過對話框選取剛剛下載的檔案,接著按下開啟就完成函式庫匯入了。
完成函式庫匯入之後,就應該可以在搜尋函式庫中找到 DHT11 的函式庫了。
程式碼連結。
計算露點溫度的程式。
DHT11的接線方式可以參考這個網站。
訂閱:
文章 (Atom)


















