Keil µVision3 で GNU C を使う (3) ― 2009年03月04日 22時20分16秒
期待していたので少しがっかりした。
まあ、労せずして利を得ようとしたのが間違いだったかも知れない。
keil の GCCARM331.EXE は古いので 'cortex-m3' などがサポートしてないようだ。
それ以外に手間なのは新しいCPUのほとんどが
startup file
Linker script
Header file
などをそのつど用意しなければならないことだ。
また、プロジェクトジェネレータの設定はどうも uv3.cdb に書いてあるらしく、これを編集するのも大変だ。
何しろ内部構造が分からないし
まだある、
ディレクトリ名にスペースを含むと動作がおかしい。
これはあきらめよう。
Ride7 に NXP、 Atmel、 Analog Devices などを入れることに挑戦してみよう。
でも、少し未練がある Keil uVision3 はRaisonance Ride7 に比べて早い。
まあ、労せずして利を得ようとしたのが間違いだったかも知れない。
keil の GCCARM331.EXE は古いので 'cortex-m3' などがサポートしてないようだ。
それ以外に手間なのは新しいCPUのほとんどが
startup file
Linker script
Header file
などをそのつど用意しなければならないことだ。
また、プロジェクトジェネレータの設定はどうも uv3.cdb に書いてあるらしく、これを編集するのも大変だ。
何しろ内部構造が分からないし
まだある、
ディレクトリ名にスペースを含むと動作がおかしい。
これはあきらめよう。
Ride7 に NXP、 Atmel、 Analog Devices などを入れることに挑戦してみよう。
でも、少し未練がある Keil uVision3 はRaisonance Ride7 に比べて早い。
Keil µVision3 で GNU C を使う (4) ― 2009年03月05日 23時11分00秒
「あきらめよう」と言ってはみたもののもう少し調べてみた。
1.プロジェクトジェネレータの設定は uVision3 のメニューの中にあった。
よく調べないとだめだ。
File ⇒ Device Database で見ることができる。
もちろん、変更も、追加もできる。
2.エディタの設定
Edit ⇒ Configurayion
Editor Tab の Virtual Spaces のチェックを外す。この方が使いやすい。
Colors & Fonts Tab の Font を日本語表示可能な Font にする。
3.プロジェクトの設置 (一番よく使うところ)
Project ⇒ Components. Environment and Books (環境)
Project ⇒ Options for Target (ターゲット)
ここの Utilities に FlashMagic を登録しておくとよい。
出力フォーマットを追加したいなら
User Tab の Run User Programs After Build/Rebuild に設定する。ツールメニューに登録してもよいけど...
arm-glue-objcopy.exe -O binary !L.elf !L.bin
arm-glue-objcopy.exe -O srec !L.elf !L.s19
4.ツールメニュー
Tools ⇒ Customize Tools Menu
ここに ツールを登録しておくと便利
参考: IN-SYSTEM PROGRAMMING USING FLASHMAGIC
1.プロジェクトジェネレータの設定は uVision3 のメニューの中にあった。
よく調べないとだめだ。
File ⇒ Device Database で見ることができる。
もちろん、変更も、追加もできる。
2.エディタの設定
Edit ⇒ Configurayion
Editor Tab の Virtual Spaces のチェックを外す。この方が使いやすい。
Colors & Fonts Tab の Font を日本語表示可能な Font にする。
3.プロジェクトの設置 (一番よく使うところ)
Project ⇒ Components. Environment and Books (環境)
Project ⇒ Options for Target (ターゲット)
ここの Utilities に FlashMagic を登録しておくとよい。
Command: FM.EXE Arguments: DEVICE($D,$X) ERASE(DEVICE,PROTECTISP) HEXFILE(!H,NOCHECKSUMS,NOFILL,PROTECTISP) COM(1,230400)デフォルトは LPC210x_ISP.exe こちらはもうサポートしてないようだ。
Command: LPC210x_ISP.EXE Arguments: "#H" ^X $D COM1: 38400 1
出力フォーマットを追加したいなら
User Tab の Run User Programs After Build/Rebuild に設定する。ツールメニューに登録してもよいけど...
arm-glue-objcopy.exe -O binary !L.elf !L.bin
arm-glue-objcopy.exe -O srec !L.elf !L.s19
4.ツールメニュー
Tools ⇒ Customize Tools Menu
ここに ツールを登録しておくと便利
参考: IN-SYSTEM PROGRAMMING USING FLASHMAGIC
Keil µVision3 で GNU C を使う (5) ― 2009年03月06日 22時42分46秒
ここらでちょっとサンプルをコンパイルしてみよう。
gcc はサンプルがたくさんある WinARM にする。
インストールしたWinARM の中に STM32 と LPC23xx のサンプルがあるのでそれでいいかな。
まず、 STM32 から
C:\WinARM\examples\STM32F103VHB6_RevZ_Demo1 の中に
・New μVision Project で空のプロジェクトを作成。
Target は STM32F103VB を選択する。(CQ-STARM を想定)
・Add File to Group 'Source Group1' で以下のファイルを追加する。
main.c
stm32f10x_it.c
・Project ⇒ Options for Target の
CC Tab :
Include Path : .\lib\inc を指定
Compile Thumb Code :チェックを入れる
Linker Tab :
Linker Script File : .\stm32.ld を指定
Include Libraries : stm32 を指定
Include Path : .\lib を指定
この設定でエラーなしにリンクできるが、うまく動くかどうかは未確認
次に、LPC2388
C:\WinARM\examples\uvision_glue_test の中から
・Open Project で gluetest.Uv2 をオープンする
・Project ⇒ Options for Target で
Device Tab : LPC2388 を選択する。(CQ-FRK-NXP-ARM を想定)
これもエラーなしにリンクできるがうまく動くかどうかは未確認。
まだ現物も手に入ってないし...
最後は ADuC7026 これはAnalog Devices ARM Projectsの中の ADuC7026 GPIO Example
・New μVision Project で空のプロジェクトを作成。
Target は ADuC7026 を選択する。(FRK-ADuC を想定)
・Add File to Group 'Source Group1' で以下のファイルを追加する。
blinky.c
irq.c
startup.S
・Project ⇒ Options for Target の
CC Tab :
Include Path : .\include を指定
Linker Tab :
Linker Script File : .\ADuC7026-ROM.ld を指定
動作は未確認
それはそうと、この Keil µVision3 はよく落ちる。
エラー処理が弱いのだろう、もう少し完成度を上げてほしい。
µVision4 Beta も出てきているけど
STM32F103VHB6_RevZ_Demo1
LPC2388 uvision_glue_test
ADuC7026 blink
参考: ARM projects
gcc はサンプルがたくさんある WinARM にする。
インストールしたWinARM の中に STM32 と LPC23xx のサンプルがあるのでそれでいいかな。
まず、 STM32 から
C:\WinARM\examples\STM32F103VHB6_RevZ_Demo1 の中に
・New μVision Project で空のプロジェクトを作成。
Target は STM32F103VB を選択する。(CQ-STARM を想定)
・Add File to Group 'Source Group1' で以下のファイルを追加する。
main.c
stm32f10x_it.c
・Project ⇒ Options for Target の
CC Tab :
Include Path : .\lib\inc を指定
Compile Thumb Code :チェックを入れる
Linker Tab :
Linker Script File : .\stm32.ld を指定
Include Libraries : stm32 を指定
Include Path : .\lib を指定
この設定でエラーなしにリンクできるが、うまく動くかどうかは未確認
次に、LPC2388
C:\WinARM\examples\uvision_glue_test の中から
・Open Project で gluetest.Uv2 をオープンする
・Project ⇒ Options for Target で
Device Tab : LPC2388 を選択する。(CQ-FRK-NXP-ARM を想定)
これもエラーなしにリンクできるがうまく動くかどうかは未確認。
まだ現物も手に入ってないし...
最後は ADuC7026 これはAnalog Devices ARM Projectsの中の ADuC7026 GPIO Example
・New μVision Project で空のプロジェクトを作成。
Target は ADuC7026 を選択する。(FRK-ADuC を想定)
・Add File to Group 'Source Group1' で以下のファイルを追加する。
blinky.c
irq.c
startup.S
・Project ⇒ Options for Target の
CC Tab :
Include Path : .\include を指定
Linker Tab :
Linker Script File : .\ADuC7026-ROM.ld を指定
動作は未確認
それはそうと、この Keil µVision3 はよく落ちる。
エラー処理が弱いのだろう、もう少し完成度を上げてほしい。
µVision4 Beta も出てきているけど
STM32F103VHB6_RevZ_Demo1
LPC2388 uvision_glue_test
ADuC7026 blink
参考: ARM projects
Keil µVision3 で GNU C を使う (6) ― 2009年03月07日 21時00分26秒
Keil µVision3 から GNU C のアーカイバが使えなかったので使えるようにした。
インストールした bin ディレクトリに入れる。
もちろん WinARM の glue-package と一緒に
WinARM_ar_uVision.ZIP
設定は Components, Environment and Books とバッチファイル
まず Components, Environment and Books の Folders/Extensions を以下のように設定
GNU-Tool-Prefix: arm-glue-
Cygnus Folder: インストールしたディレクトリ
次に arm_glue_prefix.bat の内容をインストールした gcc に応じて変更する。
CodeSourcery G++ ならば
set ARM_GLUE_PREFIX=arm-none-eabi-
GNUARM V4 ならば
set ARM_GLUE_PREFIX=arm-elf-
WINARM ならば
set ARM_GLUE_PREFIX=arm-eabi-
Cygnus ならば
set ARM_GLUE_PREFIX=arm-uclibc-
もうひとつあった
GNUARM の場合 Project ⇒ Options for Target の Assembler タブの Misc Controls に
-mfpu=softfpa を追加しなければならない場合もある。
インストールした bin ディレクトリに入れる。
もちろん WinARM の glue-package と一緒に
WinARM_ar_uVision.ZIP
設定は Components, Environment and Books とバッチファイル
まず Components, Environment and Books の Folders/Extensions を以下のように設定
GNU-Tool-Prefix: arm-glue-
Cygnus Folder: インストールしたディレクトリ
次に arm_glue_prefix.bat の内容をインストールした gcc に応じて変更する。
CodeSourcery G++ ならば
set ARM_GLUE_PREFIX=arm-none-eabi-
GNUARM V4 ならば
set ARM_GLUE_PREFIX=arm-elf-
WINARM ならば
set ARM_GLUE_PREFIX=arm-eabi-
Cygnus ならば
set ARM_GLUE_PREFIX=arm-uclibc-
もうひとつあった
GNUARM の場合 Project ⇒ Options for Target の Assembler タブの Misc Controls に
-mfpu=softfpa を追加しなければならない場合もある。
STM32F105/107xx ― 2009年03月11日 22時28分23秒
昨年から今年リリースされる予定と聞いていたがやっと登場したようだ。
LPC1768 に似ているので選択に迷うところだ。
おっと、LM3S9B95 こんなのもあった。
ttp://www.st.com/mcu/familiesdocs-110.html#Datasheet
ttp://www.luminarymicro.com/products/LM3S9B95.html
LPC1768 に似ているので選択に迷うところだ。
おっと、LM3S9B95 こんなのもあった。
ttp://www.st.com/mcu/familiesdocs-110.html#Datasheet
ttp://www.luminarymicro.com/products/LM3S9B95.html
CQ-FRK-NXP-ARM (LPC2388) ― 2009年03月16日 22時57分39秒
「I/F誌付録LPC2000基板の試食」という記事があった。
あ、もう発売されたのか買いに行かなくちゃ...
と思ったが今日は3月16日
まだ発売されてないよね
何でこんなに早いの
記事によると今回もUSB-シリアル変換ICが載っているらしい
USB-B が二つ、USB-A が一つ
また混乱してしまいそうだ。
どうもこのあたりがすっきりしない。
また、井倉将実か?
ここは、USB Bootloader か Ethernet Bootloader を使うのがスマートだと思うが...
話は戻って、先程の続き lpcsp.exe もある。
使わせてもらいます。
mplpc も Keil µVision3 + GCC でコンパイルしてみた。
エラーなしでリンクまでできる。(動作は未確認)
mplpc.zip を解凍した同じディレクトリに Keil_uVision3_Project.ZIP を入れて解凍する。
後は Keil µVision3 から Open Project で開くだけ。
mplpc Keil uVision3 GNU Project file
あ、もう発売されたのか買いに行かなくちゃ...
と思ったが今日は3月16日
まだ発売されてないよね
何でこんなに早いの
記事によると今回もUSB-シリアル変換ICが載っているらしい
USB-B が二つ、USB-A が一つ
また混乱してしまいそうだ。
どうもこのあたりがすっきりしない。
また、井倉将実か?
ここは、USB Bootloader か Ethernet Bootloader を使うのがスマートだと思うが...
話は戻って、先程の続き lpcsp.exe もある。
使わせてもらいます。
mplpc も Keil µVision3 + GCC でコンパイルしてみた。
エラーなしでリンクまでできる。(動作は未確認)
mplpc.zip を解凍した同じディレクトリに Keil_uVision3_Project.ZIP を入れて解凍する。
後は Keil µVision3 から Open Project で開くだけ。
mplpc Keil uVision3 GNU Project file
Raisonance Ride7 & ARM Tools (8) ― 2009年03月18日 22時50分21秒
Raisonance Ride7 & ARM Tools で LPC2388 をコンパイルする。
CQ-FRK-NXP-ARM を使うための準備だ。
手順は
1.C:\Program Files\Raisonance\Ride\Sim\ARM に LPC2388.sim をコピーする。
2.C:\Program Files\Raisonance\Ride\Config\ARM\HFARM.XML に LPC2388 を追加する。
3.レジストリに LPC2388 を登録する。
Ride_LPC2388.ZIP
実際にコンパイルできるかどうか試してみよう。
サンプルは WinARM の中にある uvision_glue_test を使うことにする。
コンパイルはできるが動作は未確認。
Raisonance Ride7 & ARM Tools も何とかなりそうだ。
今は無理やりねじ込んだといった感じだ。
やはり、汎用リンカースクリプトとスタートアップを作りたい。
Keil µVision3 + WinARM とどちらが使いやすいかな...
そういえばいつの間にか Keil の評価バージョンはコードサイズ制限が32kbになっていた。
参考:
Ride7 IDE (7.16.0000)
Rkit-ARM for Ride7 (1.16.0930)
※スクリプトファイルはオリジナルから変更あり。(以前の記事参照)
CQ-FRK-NXP-ARM を使うための準備だ。
手順は
1.C:\Program Files\Raisonance\Ride\Sim\ARM に LPC2388.sim をコピーする。
2.C:\Program Files\Raisonance\Ride\Config\ARM\HFARM.XML に LPC2388 を追加する。
3.レジストリに LPC2388 を登録する。
Ride_LPC2388.ZIP
実際にコンパイルできるかどうか試してみよう。
サンプルは WinARM の中にある uvision_glue_test を使うことにする。
コンパイルはできるが動作は未確認。
Raisonance Ride7 & ARM Tools も何とかなりそうだ。
今は無理やりねじ込んだといった感じだ。
やはり、汎用リンカースクリプトとスタートアップを作りたい。
Keil µVision3 + WinARM とどちらが使いやすいかな...
そういえばいつの間にか Keil の評価バージョンはコードサイズ制限が32kbになっていた。
参考:
Ride7 IDE (7.16.0000)
Rkit-ARM for Ride7 (1.16.0930)
※スクリプトファイルはオリジナルから変更あり。(以前の記事参照)
ちょっと便利な tools (1) ― 2009年03月20日 22時54分16秒
ちょっと便利な tools (2) ― 2009年03月20日 23時04分24秒
ホームページ ― 2009年03月21日 20時07分18秒
ホームページが他人によって書き換えられたいた。
どうやって書き換えるのかは知らないが
知識を持った人には簡単なことなのだろうか?
iframe タグを使って別のサイトへ誘導するものらしい。
どうやって書き換えるのかは知らないが
知識を持った人には簡単なことなのだろうか?
iframe タグを使って別のサイトへ誘導するものらしい。
最近のコメント