FRマイコン
FRマイコン、来たー†
- interface 2008.5付録基板。
- 早速コネクタだけ繋いでみた。
- 通電はOK。電源レギュレータが3.3Vと2.5Vを出力しているのも確認。リセットするとその間LEDが消える。とりあえず動いているのか?
- ただ、USBコネクタを繋いでもLEDが点かないことがときどきある。暴走してるのか?
富士通FRマイコンの諸元 | ||
FLASH ROM | 512kB | |
RAM | 16kB | |
内部レジスタ | 32ビット×16本 | R13=ACC,R14=FP,R15=SP |
cache | 1kB | ? |
CPUクロック | 40MHz | 水晶は10MHz4逓倍動作 |
VGAのOSD用のCGROM | 512kB | おそらく漢字フォントを入れるものらしい |
USB | ホスト+デバイス | IF基板ではflash書き込み用にCP2102が付いているので都合3コネクタ |
UART | 5ch | なんでそんなにいるの? |
外部バス接続 | 8,16,32bit幅、ROM,FLASH,SRAMなど。最大4Gまで。チップセレクト生成可能 | 残念だがこの石には外部バスは出ていない。かわりに内部でOSDとの接続に外部バスが使われている。(じゃあ内部バスなの?) |
- アーキテクチャ的にはRISC。
- メモリー空間4G。
- ビッグエンディアン。
- 40MHz動作。1命令は1クロック実行。
- CGRAMは24x32dotが1792文字分あるらしい。
これの使い道ってどうよ?
- デジタル家電、PC周辺、および車載って、書いてあるけど。
- 実のところ、OSD専用チップなのかも。
- USBの使い道がよう分からん。液晶モニタにUSBって、汎用ハブでいいんじゃぁ?
- CPUはたしかに高性能だが、この石はOSDに割くリソースがでかいので、OSD用に使わないなら、無駄が多いチップだといえる。
- OSD抜きで考えると、まあカーナビの心臓部とか家電制御で割りと演算が速い必要があるやつ(そんなのあったっけ?)USBは付いてるけどプリンタに使うには性能不足だし(ああ、スキャナーか。使うとしたら)デジカメっていうのも書いてあったけど・・・。
なんかH8の20MHzと比べると、性能は断然良さそう。†
- これが1980円で買えるとはね。使うの大変そうだけど。
- PIC18F2550よりも断然良いよね。
- H8/3694Fがゴミに見えてきた。
DWM2008.5付録基板はどうなんだ?†
- STM32(ARM Cortex-M3)が付くらしい。http://www.cqpub.co.jp/dwm/advertise/0125arm.pdf
- クロックは72MHzくらい?メモリーはFlash128k+RAM20kB http://www.tomen-ele.co.jp/ten/ten129/STM.pdf
富士通RISCと比べてどうなんだろう?
- フリーな開発環境(gcc)が存在しないFRのほうが不利。
- USBホストが欲しい->FR
- あとあと、いろいろな事例で活用したい->STM32 Primerとかが安価(3800円くらい?)で入手できるしOlimexとか苺でも買えるので、ARMにしといたほうがよい。
- というかFRの利点はOSDとUSBホストの2点だけ?
- FRは、外部にメモリー増設出来るのでこれも利点。
- 対するSTM32のほうは、加速度センサが付いている。
順当に考えると、あとあとの入手性の高さでは圧倒的にARM(STM32)が有利。
開発環境とかもね。
FRで何か作ろうとしても、付録基板しかないんじゃあ、ね。(個人でFRマイコンを発注したり入手するのはまず不可能なので)
- デバッガは3種類ある
- シミュレータ、エミュレータ(2種類)、モニタデバッガ
- 付録基板で出来るのはモニタデバッガのみ。
- どうやらアプリケーションのリンク時にモニタデバッガのrelファイルを一緒にリンクすることでSOFTUNEデバッガを使用可能とするものらしい。
- skeltonのmain.cにて、
#define USE_MODFR60
- という定義がされている。
- これを有効にしておく(コメントアウトしないでおく)と、モニタデバッガに制御が移る。
- テクニックとしては、main.cの初期化時に、
#ifdef USE_MODFR60 mod_uart_init() ; /* ホスト通信用UART(USBに変換される)初期化 */ mod_timer_init() ; /* 計測タイマ初期化 */ #endif
- とやって、
#ifdef USE_MODFR60 __asm( " int #10" ) ; /* モニタデバッガ起動 */ #endif user_main() ; /* ここに目的の処理を記述する。 */
- でuser_main()に行く直前にモニタに制御を移すわけだ。
- デバッグ時とそうでない実行時では、
#define USE_MODFR60
- を書き換えてコンパイルし直さないといけないらしい。
- デバッガの仕組みとしてはチープだが、付録基板(あるいは試作基板)だけで デバッガが使えるのでよし。
- gdbスタブみたいなもん。
- とりあえず何かを焼いてみる。
FM音源を焼いてみた。最初は焼き方が分からなかった。
- Softuneではなく、FUJITSU flash MCU Programmerのほうを起動して、full operationを実行する。
- このとき、JP3をCLOSEしておいて、さらに焼き開始後にJP4(RESET)を手動でCLOSE,OPENし、「OKボタン」を押さなければならない---面倒だが。
ついでにOSDサンプルも焼いてみた。
- VGAに出力出来た。
- スプライトみたいなやつが動いているがこれは1つしか出せない??いわゆるカーソルのことか。
OSDは、機能的に微妙だ。
- いわゆるテキストVRAMは42桁×16行分しか用意されていない。
- 例えば、MZ80Kエミュレータを書きたい、と思ったとしよう。
- フォントは1700種も用意できるが、行数が25行用意できない。
- 例えば、オシロスコープのようなアプリを書きたいとしても、
- 任意の位置にドットを打つといったようなことは出来ない。
- キャラジェネでパターンを工夫したとしても無理臭い・・・。
- 例えば、VT100みたいなものを作ろうと思ったとしよう。
- 42×16文字で我慢するとしよう。ANKまでなら作成可能だ。
- 漢字Terminalにするには1700文字だと第一水準JISが全部入らない。帯に短し!
- 残念だが、VDP機能はファミコンにも劣る。(その代わり、文字の解像度は細かい(24x32)が)
- Flashの書き換え回数の保証値
H8/3694F MIN 1000回 typ 10000回 FR60 1万回保証 。要望に応じて10万回保証も可能らしい
FRマイコン・リンク集†
- 早速アプリを公開しているサイト。
Joy Of MIDI FM tone generator
- http://www.geocities.jp/pcm1723/
- 2オペレータのFM音源をエミュレート。入力はシリアルMIDI(38400bps)。デモ曲あり。