2009-01-01から1ヶ月間の記事一覧

多重割り込み対応

うーん。多重割り込みは最低でもほしい。 とりあえず高速割り込み、多重割り込みは最低限対応がもくひょうかな。 まぁ、暇を見つけて、かきはじめる。多重割り込みについてはWINARMのソースが対応してるみたいだしな。FIQは、多重割り込みは対応させないつも…

Roboshellの割り込み

__attribute__ ((interrupt ("IRQ"))) はつかってないのでどうしてるかと思ったら、 #define ISR_ENTRY() asm volatile(" sub lr, lr,#4\n" \ " stmfd sp!,{r0-r12,lr}\n" \ " mrs r1, spsr\n" \ " stmfd sp!,{r1}") とかを定義してるのか。 単純にリンクア…

FIQの最速処理

ベクタテーブル最後にあるFIQを最高速で処理するには、要因をひとつにして、ベクタテーブルの最後のアドレスから処理を開始すればいいが、その時に制約が出てくる。まずコードサイズ、ベクタテーブルのジャンプテーブルをしてる場合にジャンプできる幅も決ま…

EABI

そういえばarm-none-eabi-gccのeabiって何じゃそらと思い検索。 ARM gcc ¥Ð¥Ã¥É¥Î¥¦¥Ï¥¦½¸: EABI ¤È legacy ABI どうやらARMの新しいABIらしい。 要はeabiをつかわないでgccコンパイルすると言うことか。」 間違えたー! arm-none-eabi-gccはOSなし、eabiとい…

統合開発環境じゃなくてもいいか

ARM開発環境どうするか。考え中だが、もういっそのことInsightでのデバッグでもいいかという後ろ向きな発想が出てくる。正直なところcygwinの導入なので気が進まないのでそれならlinux上で作った方がいいかという気にもなる。 正直な所eclipseの環境は統合開…

組み込みlinuxの本

そういえば無いよな。コレガのあのボードが売れるんだから、そういう人向けに本をまとめればうれるんじゃないというはなしになった。確かにそうだよな。armadillo220とかに関することを書けば、そこそこ売れるのかもしれないし、少なくとも救われる人は多い…

linuxマシン

linuxマシンというよりかはGCCマシンがほしいと思う。 最近はほとんどputtyを使ってlinuxの作業だったのだけど、もういっそのことメインlinuxにして良いんじゃないかなとか考え始める。ネックはHEWとかかな。 しかしUSBシリアル変換はほんとうにひどい。ブチ…

終わり

後はDDしたイメージとかカーネルイメージを共有フォルダにおいて終了。 後はしらんといいたいけどそうはいかないだろうな。 あと開発環境は・・・・、めんどいからセルフコンパイルできますよでいいか。 とりあえず動く物にはなってるはず。 若干カーネルと…

KONDO シリアルUSBアダプターをlinuxで使う

とりあえずソースのftdi_sio.cの500行あたりにある //前略 { USB_DEVICE(FTDI_VID, FTDI_RRCIRKITS_LOCOBUFFER_PID) }, { USB_DEVICE(FTDI_VID, FTDI_ASK_RDR400_PID) }, { USB_DEVICE(ICOM_ID1_VID, ICOM_ID1_PID) }, { USB_DEVICE(PAPOUCH_VID, PAPOUCH_TM…

リードができない

なので、シリアルUSBアダプタのドライバをarmadillo500に入れることにした。 というかベンダーIDとプロダクトIDをついかするだけ。だと思う。 うーくだらないことに時間つかってて悔しい。 ライトも毎回確実にできないのもなんかRCB3自体がコマンド間を17mse…

USB無線LANが落ちるタイミング

うーん。もう片方のUSBポートを抜き差しするとよく飛ぶ。

EAGAINエラー

うーん。なんか知らんが1バイト書き込みの後リード使用としたら出てきた。 単純に何だろう? 普通にバッファが空だからか? うん、たぶんそんな気がする。

rt73その後

うーん、結局今使ってるのはid:odawaraさんのところで紹介されてる。 rt73 GW-US54Mini2をLinuxで使う - odawaraの「はてな de メモ」 の方だけど、ほっておくとたまに無線が解除されていることがある。 といってもこないだやったarmadillo500でrt73 - ippei…

Clock skew detected.

makeをしたら言われた。 make: Warning: File `Makefile' has modification time 2e+03 s in the future make: Nothing to be done for `all'. make: warning: Clock skew detected. Your build may be incomplete. うーん問題なかったんだけどな。 533Mhzに…

コマンドライン引数

何となくコマンドライン引数を使って動作を決めるプログラムを書いてみた。 -p=[数字]という形のコマンドライン引数をどうやってやろうかと考えた結果 int i; unsigned int num; char cap_f=0,first_f=0,play_f=0; char *sp; for(i=1;i

シリアルUSBアダプター

FTDIのチップが一個のってるだけだから5Vレベルか?

rc.d

とりあえず/etc/rc.dにシンボリックリンクをS99start.shみたいな感じでinit.dにあるstart.shに張っておけば、起動時の最後に実行されると思うけど。 armadilloとかのユーザーランドイメージだとクロス環境でユーザーランドつくるからdebianのスタートアップ…

ARMリンカの謎のセクション

ARMのリンカスクリプトを見てると.glue_7と.glue_7tというよくわからないセクションがあるけど。調べてもあまり情報がでない。objdumpで見てもmain.oとかスタートアップのオブジェクトファイルにもそんなセクションは見あたらない。 olimexのリンカスクリプ…

割り込みのCでの実装

とりあえずgnu-armのマニュアルを探してたら見つかった。 void f () __attribute__ ((interrupt ("IRQ"))); という形みたい。 ただ、昨日見つけたサンプルプログラムだと↓の用になってる // #define __irq __attribute__ ((interrupt("IRQ"))) // #define __…

VIC

どうやらVICというのがLPC系のARMでは割り込みの鍵を握ってるみたい。見た感じだとVICは16個のアドレスが保持できてそこに割り込み処理の先頭アドレスを入れてやってるみたい。後は割り込み要求が入ればVICが勝手に処理してくれて割り込みのハンドラに飛ばし…

ARMのスタートアッププログラム

とりあえず割り込みにも対応したスタートアッププログラム類を探してたら gcc-Port of the LPC2000 Example Code Bundle (LPC213x/LPC214x) を見つける。 とりあえず.ifをつかって、いろいろと対応してるコードなので、少しずつ読んでいる。 とりあえずこれ…

Beagle board で Android

BeagleBoard.org - community supported open hardware computers for making 149ドルでここまでできるとほしくなる。

起動スクリプトにする

/etc/init.d/rcに直書きは力業すぎるかと思い 起動時に無線LAN設定をするwlan.shのスクリプトをinit.dにおいて update-rc.d wlan.sh defaults 99 1で対応してみた。とりあえず問題無くできる。

armadillo500で起動時にスクリプトおよびコマンドを呼ぶ

とりあえず、ユーザーランドはSD上のdebianで /etc/init.d/rcを編集かな?

armadillo 500microSDでユーザーランド

にした方がやっぱ楽かなぁ。 iwconfigの設定とか最初にUSB無線LANの接続をして、SSHログインするとすれば、その方が楽だよな。追記 ユーザーランドをマイクロSDにしたらすでに起動したときにドライバが組み込まれてた。 それって起動スクリプトに記述してた…

armのベクタ

IRQが4バイトしかないってなんか変わってる気がするけど、armはその方がつごう良いということにきづく

armのmakefile

とりあえずなんとなく分かった。 そういえばブートプログラムとかリンカスクリプトは書いたこと無いなぁ。 まぁ、理想はやっぱり書かなくて済むことなんだろうけど。

OpenOCDでのフラッシュ書き込み確認

とりあえずできた。 手順は openOCD起動 コマンドプロントからtelnet localhost 4444で接続 arm7_9 dcc_downloads enable wait_halt poll flash probe 0 flash info 0 でセクタ数確認 flash erase 0 0 (セクタ数) flash write 0 (書き込みファイルまでのパス…

EclipseでARM開発環境

そろそろやるかと思い、始める。 基本の参照は404 Not Found とりあえずOpenOCDまではできてる物として始める。 とりあえずEclipseをダウンロード Eclipse Downloads ここでおすすめはZylin CDTを使うのでzylinCDTが推奨してるeclipseのclasic版(3.x)を使う …

コレガのlinuxボードが売れてるらしい

id:odawaraさん経由で知ったけど BCN Bizline-ITを売るパートナービジネスの創造を | BCN Bizline 自分も買ったけど、そういえばどこやったかなぁ。 その直後に運良くarmadillo220を入手したから、めんどくさくていじる気になれない。 だいたい本買わなきゃ…