每個有點年紀的台灣韌體工程師都不會忘記第一次在麵包版上插出8051電路時那如同初戀的感覺, 但現在已是2014年, 整個市場都在往ARM靠攏, 讓我們也歸順吧!
元件列表
- NXP LPC1114FN28 x 1 (ARM Cortex M0, Datasheet)
- 按鈕 x 2
- 電阻 330 Ω x 1
- 電阻 4.7k Ω x 2
- LED x 1
使用工具
- USB轉UART轉接線
- 3.3V位準電源
電路圖
電路說明
- VDD需接上3.3V之電源, VSS需接地
- Pin 23為系統重置(reset)接腳, 此一接腳為低位準致能,因此需接一4.7k之上拉電阻至正電源, 以維持系統運作; 當需要重置系統時, 可透過一按鈕將此接腳接地.
- Pin 24為ISP(In System Programming)燒錄致能接腳,需接上4.7k之電阻串連一組按鈕接地;當此一接腳於晶片reset時處於低電位,將觸發ISP模式作用
- Pin 17為PIO1_8, 接上330之限流電阻與LED串接至地, 作為除錯用LED
Cable接線說明
使用 USB to 3.3V UART Cable 供電給微控制器,並進行序列通訊.cable有四個杜邦端子頭,VCC, GND, RX, TX;將VCC與GND接至微控制器之VDD與VSS, 將UART的RX接至微控制器的TX、TX接至RX。
軟體環境
使用Linux
- 下載”GNU Tools for ARM Embedded Processors” (Readme.txt)
$ tar -xf gcc-arm-none-eabi-4_8-2014q2-20140609-linux.tar.bz2 $ sudo mv gcc-arm-none-eabi-4_8-2014q2 /opt/ $ echo "PATH=$PATH:/opt/gcc-arm-none-eabi-4_8-2014q2/bin" >> ~/.bashrc
- 下載並編譯lpc21isp程式燒錄工具
$ svn checkout svn://svn.code.sf.net/p/lpc21isp/code/ lpc21isp-code $ cd lpc21isp-code $ make $ mkdir -p $HOME/bin && cp lpc21isp $HOME/bin
- 複製Zuph所修改製作之範例專案
$ git clone git://github.com/Zuph/lpc1114-blink
- 編譯lpc1114-blink專案
$ cd lpc1114-blink $ make- 重複檢查電路接線是否正確; 完成後, 先按下RESET不放開, 再按下ISP按鍵, 爾後放開RESET, 再放開ISP按鍵, 進入ISP模式, 輸入下列指令進行燒錄
$ lpc21isp out/*.hex /dev/ttyUSB0 115200 12000 # FILE BAUDRATE CRYSTAL_HZ
- 若操作正確無誤, 應該可看到LED以1.5Hz的頻率進行閃爍
No comments:
Post a Comment