グラビアアイドルについて語るブログ。
× [PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
少し前のエントリで「Linux から V850 のフラッシュ ROM に書き込む手段がない」と書いたところ、arms22 さんという方から、sp850es を移植したというコメントをいただきました。
その頃オリジナルの sp850es や h8write のソースを読み始めたところだったのですが、移植されたとあっては、使わせていただくしかありません。 大変ありがたいご連絡をいただき、感謝しております。 ただし、INI ファイルを使うのも面倒だし、かといって毎回オプションを指定するのは更に面倒ですので、alias して使っています。 /usr/local/bin/sp850es -dev=3716 -port=/dev/ttyUSB0 -freq=5000 -bps=38400 ところで、ROM に書き込めなかったのが最大の難関だと思っていたのですが、それは開発環境の話で、実際にはそれ以上の難関がありまして・・・ ええっと、僕は電子回路の設計とか、まったくできないんです(泣) ということですので、しばらくは LED や UART で遊ぶことになりそうです。 PR
先日ビルドしたV850クロス開発環境では、Interface 6月号の TOPPERS の記事(第6章)のサンプルで下記のコンパイルエラーが出ることが発覚したので、作り直しました。
$ make TOPPERS 的にはターゲットは v850-nec-elf よりも v850-elf の方が都合が良さそうなので、今回は --target=v850-elf でビルドしました。 ■binutils のビルド $ tar jxf binutils-2.17.tar.bz2 以下のビルドで必要ですので、/usr/local/v850/bin にパスを通しておきます。 $ export PATH=/usr/local/v850/bin:$PATH ■gcc, newlib のビルド $ tar jxf gcc-4.1.2.tar.bz2 ■gdb のビルド $ tar jxf gdb-6.6.tar.bz2
今回は、Interface 5月号付属の V850 基板のフラッシュ ROM に Linux から書き込む試みです。まず結論を書くと、まだ成功していません。
■wine で FPL 最初に考えたのは、CD-ROM 収録の開発ツールに含まれる FPL を、wine から起動することでした。 $ wine FPL.exe Device Setup ダイアログで、Port の候補が出てきません。/dev/ttyUSB0 が、wine から起動された FPL 上で COM ポートとして認識されていないということでしょうか。 wine のマニュアルを見て、次のように COM1 を追加してみました。 $ ln -s /dev/ttyUSB0 ~/.wine/dosdevices/com1 また、COM ポートの話とは別に、FPL.INI をシステムフォルダにコピーする必要もあるようです。 $ cp FPL.ini ~/.wine/drive_c/windows 再度 FPL を起動してみますが、相変わらず Device Setup で COM ポートの設定ができません。Interface 5月号の「開発ツールのインストールと使い方」のうち、「●仮想シリアル・ポートを設定する」に相当する部分が wine で未設定であることが原因ではないかと考えています。 現時点ではここまでです。何とか使えると楽なんですが。
今回は Interface 5月号付属の V850 基板のためのクロス開発環境の準備です。
ビルド環境はFC6で、標準のgccのバージョンは4.1.1ですので、以下のビルドには compat-gcc-34, compat-gcc-34-c++ が必要でした。 以下では /usr/local/v850 を開発環境のインストール先としています。 ■binutils のビルド $ tar jxf binutils-2.13.2.tar.bz2 以下のビルドで必要ですので、/usr/local/v850/bin にパスを通しておきます。 $ export PATH=/usr/local/v850/bin:$PATH ■gcc, newlib のビルド $ tar jxf gcc-3.2.3.tar.bz2 ■gdb のビルド $ tar jxf gdb-6.6.tar.bz2 ■動作確認 開発環境を構築したものの、あいにく Linux からフラッシュROMへの書き込みをどうするかが未解決なので(爆)、gdb シミュレータでの動作確認とします。 お約束の "Hello, world!" をコンパイルして実行しました。 $ /usr/local/v850/bin/v850-nec-elf-gcc hello.c 無事動作しました。 気になったのが a.out のサイズ。177235バイトもありました。strip してから実機に転送する習慣が必要ですね(35328バイトになりました)。また、printf ではなく puts を使うと約半分のサイズになりました。 組み込みの場合、リッチなターゲットでなければ、標準ライブラリは極力使わない、使うとしても必要最低限にするという開発方針でないと駄目なんでしょうね。 ■参考リンク 組み込み向けクロス開発環境の構築 組込み技術者向け「初めてのC言語」
今回は Interface 5月号付属の V850 基板と Linux PC との間のシリアル通信の確認です。Linux は FC6、カーネルは 2.6.19-1 です。
■デバイスの確認 USBケーブルで基板とPCを接続し、dmesg でデバイスを調べます。僕の環境では /dev/ttyUSB0 でした。 $ dmesg | grep usb■minicom の設定 root で minicom の設定を行います。 # minicom -sシリアルポートの設定を選択し、デバイスを /dev/ttyUSB0、速度を115200に変更した後、「"dfl"に設定を保存」を選びます。(/etc/minirc.dfl に保存されます) ■minicom 起動 まず、使用するユーザを uucp グループに追加します(追加しないとデバイスにアクセスできません)。ログインし直して minicom を起動すると、出荷検査用プログラムの出力が表示されます。 $ minicom minicom へようこそ 2.1 |
ブログ内検索
カレンダー
最新記事
(11/10)
(09/17)
(09/17)
(09/16)
(09/13)
最新コメント
[07/07 tiffany jewelry uk]
[09/17 車載モニター・阿蘇テック]
[08/30 愛]
[06/12 シモネッタ]
[06/11 arms22]
最新トラックバック
プロフィール
名前:
シモネッタ
性別:
非公開
カウンター
アクセス解析
|