自製Arduino藍牙程式編寫擴充板

六月 10, 2014
Facebook
Twitter
你是否曾經想過,不需要透過麻煩的USB傳輸線,就可以進行Arduino的程式編寫、或是你將Arduino專題放在離電腦比較遠的地方,也可以輕鬆地更換程式碼並上傳呢?還有,你是否想過製作一個Android智慧型手機的介面,或者用其他的方式傳送感測器的資料到電腦上呢?如果有的話,你將可以在這個專題中找到答案。

這個專題在原型擴充板上安裝了一個物美價廉且耐用的藍牙模組。此外,這個模組還加上一個電路設計,只要你透過Arduino IDE上傳新的Arduino程式碼時便會自動重新開啟。這個專題所使用的Arduino IDE是最新版本的,因此可以不用修改DLL檔案就進行序列程式編寫。

除了上傳程式碼之外,這款擴充板也可以進行序列埠通訊,透過標準的Arduino序列埠函式庫,就可以和Arduino開發板、智慧型手機、電腦,甚至是具有藍牙功能的Raspberry Pi進行通訊。

為了要將程式上傳到Arduino中,你需要一臺內建藍牙功能的電腦,或是透過USB藍牙接收器。以下教學是針對Windows 7作細節說明,但是在Windows 8上的做法應該也差不多,而MacLinux的使用者或許需要嘗試一下才能找出使用方法。至於智慧型手機則需要支援序列埠規範(Serial Port Profile,簡稱SPP)才有辦法使用(這表示iPhone無法使用,但是大部分的Android手機都可以)。這個專題的難度大約在中等到困難之間,建議曾有過焊接和開發原型的經驗。

零件

  • HC-05藍牙模組,安裝在JY-MCU六針腳轉接電路板上(1
  • R1電阻-2.2k1
  • R2電阻-15k10k1
  • R3電阻-10k1
  • C1陶瓷電容-100nF1
  • Arduino原型擴充板1
  • 母接頭1)裁切到剩下大約八個針腳左右,然後焊接到原型擴充板用來安裝HC-05藍牙模組。
  • 電線
  • Arduino用的電池或變壓器
工具

  • 烙鐵
  • 焊錫
  • 助焊劑
  • 斜口鉗
  • 麵包板
  • 熱熔膠槍(非必要)
  • 作業系統為Windows,並內建藍牙功能或外接藍牙接收器的電腦。

步驟#1:安裝最新的Arduino beta

最新版本的Arduino IDE已解決過往使用藍牙進行程式編寫的問題,使其變得不再困難重重,在我撰寫這篇文章的時候,最新的版本是Arduino 1.5.6-r2

在以下的網址中可以下載安裝程式:http://arduino.cc/en/Main/Software

步驟#2:在麵包板上製作藍牙模組安裝線路
  • 這個專題使用的藍牙模組是HC-05,這個模組價格便宜,而且常出現在許多專題中,在你購買HC-05時會有兩種情況,一種是還尚未焊接的裸板套件,另一種是已經焊接好的電路板套件(breakout board)上,在此會用到的是已經裝上六針腳的電路板套件,你可以在eBay拍賣網站跟Amazon網站上找到它,規格表則在此。
  • 根據電路設計圖,暫時先在麵包板上連接HC-05藍牙模組的線路。
  • 3.3v接到Key腳位上,HC-05模組就會進入38400鮑率的指令狀態並開始接收AT指令。在接上電源時,Key腳位必須保持連接在3.3v上,如果在打開之後才連接,模組就會進入預設鮑率設定(也就是用「AT+UART=」設定的鮑率,或者變回初始設定的9600)。

步驟#3:上傳安裝程式碼


图片

可以在這裡下載程式碼並上傳到Arduino上。

步驟#4:執行安裝程式碼並輸入序列埠指令

  • 打開序列埠主控臺,確認鮑率為9600,視窗下方並設定為「Both NL & CR」。
  • 在序列埠主控臺中輸入以下的AT指令。

AT+ORGL

AT+ROLE=0

AT+POLAR=1,0

AT+UART=115200,0,0

AT+INIT

根據輸入的順序,這些指令分別要求模組改回預設設定、切換到從屬模式(透明序列通道),在藍牙連接中將32號針腳設至「低」的狀態,並將鮑率調整到與Arduino Uno程式編寫速率相同,接著,便開始作動。

  • 3.3v電源從Key腳位上面卸除,並將維持供給模組電力,現在鮑率應該會是115200,並執行配對模式。

步驟#5:在Windows作業系統中安裝藍牙模組

  • 在控制台中選取新增裝置。
  • 加入藍牙模組。
  • 選擇配對碼(pairing code)選項。

步驟#6:在Windows作業系統中安裝藍牙模組(續)

  • 在配對碼的欄位中輸入「1234」。
  • 在成功新增裝置的視窗中,點擊「關閉」。
  • 裝置已經準備就緒,現在作業系統會新增兩個與裝置相關的COM埠,請選擇數字比較小的那一個。

步驟#7:在藍牙模組上焊接電線

  • 將麵包板上的線路拆除,並直接在HC-0532號針腳上焊接電線。
  • 別忘了使用助焊劑。
  • 可以考慮使用熱熔膠槍或者膠帶來保護焊點。

步驟#8:製作程式編寫線路

  • 在原型擴充板上製作程式編寫線路。
  • 如果之後需要將藍牙模組移除,可以在上面焊接一排母接頭。

步驟#9:透過藍牙進行Arduino程式編寫!

  • 將Arduino開發板裝上電池或接上電源。
  •  在Arduino程式開發情境當中,選擇藍牙模組用的序列埠(兩個數字中比較小的那個),上傳程式碼的方式就跟原先的一樣。

图片

JOSHUA NEWELL

本文作者Joshua Newell白天是一位軟體工程師,晚上搖身一變,成為電子零件與嵌入式系統的瘋狂愛好者。

個人網頁


(譯:劉允中)
[原文]
Social media & sharing icons powered by UltimatelySocial