2011年2月24日 星期四

Fritzing - 利用 Power 和 Ground 符號把電路圖變清爽點

在使用 Fritzing 的時候,與其把元件直接接到 GND 或 +5V,不如多多利用 Power 和 Ground 符號。善用 Power 和 Ground 符號會讓你的電路圖變得清爽一點。

image
▲元件視窗(PARTS window)

2011年2月23日 星期三

Bitlash 範例 - 透過 Serial 通訊控制 LED

實驗目的

練習透過 Serial 通訊控制 5 顆 LED。利用 Bitlash 以下指令的方式來控制 LED 的開關。

這篇是「透過 Serial 通訊控制 LED」的重新改寫。我假設你已經看過「Bitlash 新手入門」這幾篇,對 Bitlash 有相當程度的了解。

軟體需求

你必須先把 Bitlash 函式庫安裝起來,安裝辦法請參考「Bitlash 新手入門」一文。

材料
  • 麵包板 x 1
  • Arduino 主板 x 1
  • LED x 5
  • 220 ohm 電阻 x 5
  • 單心線 x N

2011年2月20日 星期日

Arduino 筆記 – bitlash 基本要素簡介(2)

前一篇簡介了數值變數(Numeric variables)、腳位變數(Pin variables) 、指令(Commands) 跟內建函式(Build-in functions)這些基本要素。其中有幾個指令比較重要,底下將特別介紹。

help - 查詢可用的指令和函式

如果你忘了指令或函式的名稱,可以輸入 help 指令,Bitlash 就會列出所有指令與內建函式給你看:

> help
bitlash here! v2.0 RC1 (c) 2011 Bill Roy -type HELP- 999 bytes free
http://bitlash.net
See LICENSE for license
Pins: d0-22,a0-22  Variables: a-z, 32 bit long integers
Operators: + - * / ( ) < <= > >= == != << >> ! ^ & | ++ -- :=
Commands: arg boot else function help if ls peep print ps return rm run stop switch while
Functions:abs ar aw baud bc beep br bs bw constrain delay dr dw er ew free inb max millis min outb pinmode pulsein random sign snooze

Arduino 筆記 – bitlash 基本要素簡介(1)

在看完前一篇的「bitlash 新手入門」之後,相信你已經會用 bitlash 下指令做一些簡單的事情了,例如讀取數位或類比接腳(digital or analog pins)的讀值、控制 LED 燈號、甚至是搭配繼電器控制家電的開關等,你可能也已經在思考要怎麼運用巨集(Bitlash Functions)來把一些工作自動化(Automation),只是不清楚 bitlash 的巨集有多少能力,可以做到什麼樣的程度。

其實 bitlash 很有彈性,只要好好的利用,它會帶給我們很大的方便。現在大可不必感到困擾,一步一步來,在正式開始使用 bitlash 前,我們還是按部就班,先從認識 bitlash 的基本要素開始。

2011年2月18日 星期五

Arduino 筆記 - bitlash 新手入門

什麼是 bitlash?

Bitlash 是一個 Open Source 的 Arduino Shell,作者是 Bill Roy。它是一個指令直譯器(Command Line Interpreter),可以讓你透過 serial port 下指令跟 Arduino 互動,它同時也是一個簡易的劇本語言(Scripting Language),可以讓你用類似 C 的語法寫程式(或稱 Script -- 劇本)。

如果你有聽過 DOS Shell 或 UNIX 的 bash, csh,相信你一定聽得懂,因為 Bitlash 其實就是類似 DOS, bash, csh 的東西,只不過它是在 Arduino 上面跑的,而且它很小,只用了 14K 左右的 Flash 空間。

2011年2月13日 星期日

Arduino 筆記 – 透過 Serial 通訊控制 LED

從前一篇「Serial Library 介紹」中,我們已經知道可以用 Serial.read() 讀取 Serial Port 的資料,而且我們也知道了讀取 Serial Port 的一般寫法,也就是 --- 使用 Serial.available() 來檢查 Serial port 是否有資料進來,然後再使用 Serial.read() 把資料讀取出來放到變數中供後續的運用,像這樣:

接著,來做個簡單的練習,練習使用 Arduino 的 Serial 通訊。

2011年2月8日 星期二

Arduino 筆記 – Serial Library 介紹

Arduino 序列通訊

當需要跟外部電腦通訊的時候,序列通訊 (Serial Communication) 就可以派上用場。

image_thumb6image_thumb8
▲ Arduino 可以用同一條 USB cable 做程式上傳與序列通訊

所有 Arduino 的板子至少都有一個 Serial port (又稱 UART 或 USART),Serial port 使用 TX (pin 1) 跟 RX (pin 0) 這兩支接腳來傳送與接收資料。