Swordfish 簡介
Swordfish 是一個專門給 PIC18 family 使用的 Basic Compiler,它可以產生經過最佳化而且可以直接燒錄到微控制器的韌體檔。對於習慣使用 Basic 語言的人來說,Swordfish 提供了另一個進入 PIC18 微控制器世界的途徑。
Swordfish 有一個功能強大且彈性的整合開發環境(IDE, Integrated Development Environment ),只要在 Swordfish IDE 上點一下滑鼠或是按個快速鍵,Swordfish 就會自動編譯程式並將你的專案燒錄到目標微控制器上(target microcontroller)。下圖是 Swordfish IDE 的介面:
Swordfish 提供大量的函式庫(library),諸如下列:
- GLCD
- LCD
- Secure Digital (SD) Multi Media(MM) Card
- OneWire
- ADC
- EEPROM
- Shift
- Hardware SPI and Software SPI
- Hardware I2C and Software I2C
- USART and Sotware UART
- Math
- Keypad
- USB
- String 字串處理函式
這些函式庫的原始碼是開放的,只要安裝 Swordfish 便可以在安裝目錄裏找到。
In-Circuit-Debug(ICD)與 Simulation
如下圖,Swordfish 支援 MPLAB 線上除錯 (ICD, In-Circuit Debugging),可以讓你單步執行(single step)程式並觀察硬體暫存器和變數的變化:
此外,你也可以在 MPLAB 裏使用模擬功能 (Simulation)或者搭配 Labcenter Electronics 的 Proteus VSM(ISIS) 這套電路模擬軟體執行 Swordfish 程式,如下圖:
兩種版本
Swordfish 分成兩種版本:
- 商業版本: 擁有完整的功能,但是必須向付費購買。
- 特別版本(免費版): 和商業版幾乎一樣,擁有完整的功能,而且沒有使用期限,唯一的限制是 RAM 的使用量,免費版的 Swordfish 最多只能使用 256 bytes 的 RAM,程式若使用超過 256 bytes 的 RAM 就沒辦法編譯。特別版本可以在下面的網址取得:
Hello Swordfish 程式
底下是 Hello Swordfish 程式,程式的邏輯是每隔 0.5 秒切換一次 LED 燈號:
程式說明:
- L10: 定義 LED 燈號位於 RA4 腳位
- L14~L17: 進入 Repeat … Until 無窮迴圈,每隔 0.5 秒就切換一次 LED 燈號
0 意見:
張貼留言