#contents
*はじめに [#x2fd9bf0]
自信が所有するノートPCは、諸事情あって(Windows買うのが勿体なくて・・・)Linuxを入れてます。~
mbedに関する、WindowsやMacOSを用いた開発環境の事例はたくさん紹介されていますが、Linuxとなると記事が少ないので、自分の方で集めた情報を纏めてみました。
*実験環境 [#yf27a7d6]
+PC側OS~
Debian GNU/Linux 7.6(wheezy)~
(https://www.debian.org/)
+USB シリアル変換ユニット~
デジット USBシリアル変換キット~
(http://eleshop.jp/shop/g/gA3541I/)
+マイコンボード側 mbed~
NXP Cortex-M0マイコン LPC1114FN28(DIP)~
(https://strawberry-linux.com/catalo/items?code=14104)
*Linux側準備 [#u7945abe]
**lpc21ispのコンパイルとインストール [#rbc13d5e]
公開元:
http://sourceforge.net/projects/lpc21isp/
$ hoge@fuga:~$ cd Downloads
$ hoge@fuga:~/Downloads$ wget http://sourceforge.net/settings/mirror_choices?projectname=lpc21isp&filename=lpc21isp/1.97/lpc21isp_197.zip
$ hoge@fuga:~/Downloads$ tar zxf lpc21isp_197.zip
$ hoge@fuga:~/Downloads/lpc21isp_197$ make
$ hoge@fuga:~/Downloads/lpc21isp_197$ ./lpc21isp
Portable command line ISP
for NXP LPC family and Analog Devices ADUC 70xx
Version 1.97 compiled for Linux: Oct 6 2014, 00:28:42
Copyright (c) by Martin Maurer, 2003-2013, Email: Martin.Maurer@clibb.de
Portions Copyright (c) by Aeolus Development 2004, www.aeolusdevelopment.com
...
(省略)
$ hoge@fuga:~/Downloads/lpc21isp_197$ sudo cp -p ./lpc21isp /usr/local/bin
$ hoge@fuga:~/Downloads/lpc21isp_197$ cd ..
$ hoge@fuga:~/Downloads$ hash
$ hoge@fuga:~/Downloads$
※コンパイルする際には、以下のDebianのパッケージが必要です。
-gcc
-libc6
-libc6-dev
**USB シリアル変換ユニットの準備 [#obd84d74]
USB シリアル変換ユニットを、PCに接続します。
***シリアルポートの確認 [#u13beb31]
$ hoge@fuga:~/ dmesg | tail -10
[81464.622121] usb 6-1: Product: FT232R USB UART
[81464.622123] usb 6-1: Manufacturer: FTDI
[81464.622126] usb 6-1: SerialNumber: A7031WI1
[81464.630176] ftdi_sio 6-1:1.0: FTDI USB Serial Device converter detected
[81464.630236] usb 6-1: Detected FT232RL
[81464.630239] usb 6-1: Number of endpoints 2
[81464.630242] usb 6-1: Endpoint 1 MaxPacketSize 64
[81464.630245] usb 6-1: Endpoint 2 MaxPacketSize 64
[81464.630248] usb 6-1: Setting MaxPacketSize 64
[81464.632196] usb 6-1: FTDI USB Serial Device converter now attached to ttyUSB0
$ hoge@fuga:~/
シリアルポートは、「ttyUSB0」であることが確認できました。
$ hoge@fuga:~/ls -l /dev/ttyUSB0
crw-rw---T 1 root dialout 188, 0 10月 11 15:50 /dev/ttyUSB0
$ hoge@fuga:~/
このデバイスを使用する場合は、自分のユーザが、rootか、dialout グループに所属している必要があります。
$ hoge@fuga:~/ id
uid=1000(hoge) gid=1000(hoge) groups=1000(hoge),20(dialout),24(cdrom),25(floppy),...
ひとまず、dialout には所属しているようですので、OKです。~
もし、グループに所属していなければ、下記のコマンドを実行します。
sudo gpasswd -a hoge dialout
以上で準備完了です。
*データの書き込み [#qc314f20]
ブラウザ経由で作成したプログラムをダウンロードします。~
ダウンロードは、ブラウザが勝手にしてくれるので、ファイルが保存できたか確認。
$ hoge@fuga:~/Downloads$ ls
mbed_blinky_LPC1114.bin
下記のコマンドで書き込みます。
$ hoge@fuga:~/Downloads$ lpc21isp -control -bin mbed_blinky_LPC1114.bin /dev/ttyUSB0 115200 12000
lpc21isp version 1.97
File mbed_blinky_LPC1114.bin:
loaded...
image size : 10280
Image size : 10280
Synchronizing (ESC to abort). OK
Read bootcode version: 1
7
Read part ID: LPC1114.../102, 32 kiB FLASH / 4 kiB SRAM (0x1A40902B)
Will start programming at Sector 1 if possible, and conclude with Sector 0 to ensure that checksum is written last.
Erasing sector 0 first, to invalidate checksum. OK
Sector 1: ...........................|.........................|.........................|.........................
Sector 2: ...........................|.........................|.....
Sector 0: ..........................|.........................|.........................|.........................
Download Finished... taking 2 seconds
Now launching the brand new code
$ hoge@fuga:~/Downloads$
以上で書き込み完了です。
*参考 [#zcfc6d2f]
-http://dbpro.dip.jp/?p=686
-http://ameblo.jp/takeoka/entry-11607677151.html
-http://penguin.tantin.jp/hard/FT232.html
-http://d.hatena.ne.jp/thegoodbadugly/20130116/1358316032
RIGHT:2014-10-11 (土) 16:14:19
----
[[Elec]]