[自作] FM3マイコン
階段波を作る STM32VL Discovery
FM3 AD変換でLEDチカチカのスピードを変える
FM3を動かしてみる 富士通MB9BF618T 32bit CPU
書庫FM3(6)
カテゴリその他コンピュータ
2012/5/2(水) 午後 10:07
インターフェース(Interface)6月号に付属しているFM3マイコンをさっそく動かしてみました。
FM3はARM社の32bit CPUコア CoreTex-M3をベースにした富士通のCPUです。
インターフェース6月号に付属したFM3 評価ボード
今回インターフェース誌に付属したボードに搭載されているのはMB9BF618TというモデルのCPUです。
ちょっと見たとこ、STマイクロシステム社やNXP社のCPUとそんなに変わりません。
みんなARM社のCPUコアを採用するようになって、ドングリの背比べになってしまいました。
日本の会社が出すとココが違うってのを、ドカンとブチまかしてほしかったなぁ!
モード切替えのジャンパーと、リセットボタンを乗せた。赤いリセットボタンは宙ぶらりん。4Pタクトスイッチも乗せられるようにしといてよ!
それはそうと、
今回は開発環境として、IAR社のEWARMを使用しました。といってもEWARMでできるのは、コンパイル、リンクまでです。オンラインデバッグとダウンロードは使えません。トホホ
出来上がった実行ファイルは、富士通の提供する「USB Direct Programmer」というソフトを使ってFM3にダウンロードしなければなりません。
FM3にはSTマイクロシステム社のディスカバリーのようなST-LINKに相当するものが無く、単にCOMポートからダウンロードするローダーが書き込まれているだけ。COMポート経由だからとにかく遅い。ST-LINKだとUSBだから一瞬で終わるのだが、FM3はこの辺がかったるいですね。雑誌の付録のため安くあげないといけないので仕方ないですね。(インターフェース6月号は2310円もするので、決して安くないが...)
オンラインデバッグができないのは、ちょっと悲しいですね。
試したプログラムは、マイコン界の"Hello World"に相当するLEDチカチカ。
インターフェース誌に載っていたのを打ち込んで走らせてみました。
#include "mcu.h"
static void InitPort(void);
int32_t main(void)
{
uint32_t period;
InitPort(); //GPIOのPin3のみ初期化する
period = SystemCoreClock / 100;
SysTick_Config(period); //10msのティックを得る
for( ;; ) {}; //永久ループ あとはSystick割り込みで
}
static void InitPort(void)
{
FM3_GPIO->PFRF_f.P3 = 0;
FM3_GPIO->PZRF_f.P3 = 1;
FM3_GPIO->DDRF_f.P3 = 1;
FM3_GPIO->PDORF_f.P3 = 0;
}
void SysTick_Handler(void) //SysTickの割り込み処理 10ms間隔でエントリ
{
static uint8_t cnt = 0;
cnt++;
if (cnt >= 50) { //10 x 50 = 500ms
FM3_GPIO->PDORF_f.P3 = ~FM3_GPIO->PDORF_f.P3; //500msごとに反転させる
cnt = 0;
}
}
本に書いてある通りやれば動きますが、
注意する点は、EWARMのメニューで「プロジェクト」->「ビルド構成の編集」に入って、MB9BF618T Releaseを選んでおく必要があることです。
これが他のCPUになっていたり、debugになっていると動きません。
FM3に期待するのは、その性能(性能はドングリの背比べ)より、国産ということで、日本語マニュアル類や、日本語のアプリケーションノートなどの充実です。
まだまだこれからのようですが。
2310円払ったのは、ちょっと高かったなぁ。
(JF1VRR)
JF1VRR(also JR3QZS)の無線日記