先日手に入れたFRDM-KL25Z ちょこっといじってみた記録です。
しかし、単体ではイーサもついてないし、この後どうしようか応用が浮かばない。。。
FRDM-KL25Zを使ってみる
freescaleのCortex™ -M0+コア搭載マイコンKL25Zのリファレンスカードである、FRDM-KL25Zを手に入れましたので、ちょっとだけいじってみた記録です。
開発環境
開発は何でするのか?
他にもあるんでしょうが、mbedがサポートしているとのことなので、mbedで行ってみます。
mbedはオンラインでコンパイルが出来て特別なインストール等必要無いので小規模であれば楽みたいですね。
mbed導入
mbedを使用するには登録が必要ですので、あらかじめ登録&ログインしておきます。 私は以前登録してました。なんの時かなぁ。覚えてないくらい前かな。。。
FRDM-KL25Z。購入直後はmbedファームウェアが入ってないので、mbedファームウェアを書き込みます。
手順は↓(Firmware FRDM KL25Z)を参考にします。
手順はいたって簡単。
まず、リセットスイッチを押しながらSDAの方のUSB端子にケーブルを接続します。
エクスプローラからBOOTLOADERという名前のディスクが見えるはずです。
先の手順のページにあるThe latest mbed interface upgrade file for the FRDM-KL25Zのファイルをダウンロードします。 現在のファイル名は、mbed_if_v2.0_frdm_kl25z.s19 でした。
このファイルを先のBOOTLOADERのディスクのルートにコピーします。
そしてUSBケーブルを抜いて、今度はリセットを押さずに差し込みます。
すると、エクスプローラからは、今度はMBEDという名前のディスクが見えるはずです。これでファームの変更はOKです。
Hello World!
エクスプローラで見えるMBEDの中のmbed.htmをクリックしてみます。
mbed FRDM KL25Z Getting Startedっていうページにリダイレクトされます。
その最後の方に Where Next? とあり、Downloading a Programというリンクがありますので、これをクリックしてみます。
mbed FRDM KL25Z Downloadingっていうページに飛びました。
最初の説明はbinaryをダウンロードしろって書いてありますので、ダウンロード。
保存先はファームの時と同じ、MBEDディスクのルートです。
保存時は緑のLEDが点滅します。このLEDがアクセスランプみたいです。そして終わると点滅が終わり点灯に変わるのでリセットを押してみます。
すると、カラーLEDが青く点滅始めます。これがHello Worldのプログラムの実行結果らしいです。Hello Worldっていう文字が出るわけじゃないんですね。
さぁ Next Step は、Creating a programです。リンクをクリックしてみます。
Create a program
ここでは新規のプログラムの作成方法が載ってます。
mbedのオンラインコンパイルを試してみます。ページ右上のCompilerをクリックします。
ブラウザの中に開発環境が出て来ました。右上にはKL25Zとなっています。
空のMy Programsってのがあるので、その下に新規でプログラムを作ります。名前はtestとか適当に。
このようにサンプルプログラムが勝手に出来上がります。main.cppの中はLED点滅プログラムのようです。
testを選択して、Compileボタンを押してみます。 binファイルが出来て保存先を聞いてくるので、MBEDのルートに保存。 緑LEDが点滅終わってからリセットボタンを押すと、LEDが点滅するプログラムが起動しました。
ソースは簡単なので見てると内容はわかるかと思います。 試しにwait時間を変えてみます。
waitのカッコの中がwait時間なので、適当に変えてみますと点滅時間が変わります。 また、LED1ってのが青色LEDのようですので、3色LEDということで、LED2にすると緑に、LED3にすると赤に色が変わりました。
ちなみに、myled=1ってのが消灯で、0にすると点灯でした。これはポートをLにすると光るような回路になっているからでしょう。
また、コンパイルの時に、cmsis.hっていうファイルが無いってエラーになった時がありました。
その場合は、mbedをUpdateすると治りました。
Serial Communication with a PC
ちょっと手間取りましたが、次の項目に行ってみます。
これが本当のHello Worldですね。
PCにシリアル通信するみたいです。しかし、その前にPC側にドライバー入れないといけません。
Windows-serial-configurationでインストール。
インストールすると、mbed Serial Portってのが出来ました。
そこに、ターミナルソフト(Tera Term)で接続してみます。 コンパイルしたソフトを起動してみたら、このターミナルソフトにHello World!って表示されました。
次にConnect to your mbed Microcontroller with a Terminal program and uses the ‘u’ and ‘d’ keys to make LED1 brighter or dimmer っていうuとdでLEDの明るさが変わるっていうサンプルを試してみます。 uで明るく、dで暗くってのが逆だったけど、一応OK。
ソースを見ると、先のLED点滅はデジタルモードだったけど、今回のはアナログモード(っていうか多段階モード?)。 PWMで明るさを制御してるみたいです。 1で消灯なので、uとdが逆になってたのかな。
mbed FRDM KL25Z Examples
せっかくなので、このFRDM-KL25Zに特化したサンプルも試したいですよね。
mbed FRDM KL25Z Examples に、いろいろなサンプルがありますので、これをみればそれなりに遊べるんじゃないかと思います。
Touch Sensor – Hello World!
試そうとしたら、TSISensor.hってファイルが無いって出てきた。 どのライブラリを入れればいいんだろう。わからんなぁって見てたらImport this programっていうリンクをクリックすれば全部Importしてくれるから出来るようになった。
Accelerometer Example – Hello World!
これもImport this programをすればよかったんだろうけど、単にソースをコピーしただけだからMMA8451Q.hが無いって怒られた。Importしたら問題なくコンパイルできた。動作もOK。
Others
残りはソースは表示されていない。全てImport this programで行う。 しかし、LEDが明るすぎて目に痛い。RGBバランスも取れてないし。とりあえず抵抗値変えたいなぁ。
おまけ:基板について
回路考察
回路図をさっと眺めましたが、それなりにきっちりと作られている印象です。 最近この手の他のキットの回路図を眺めた記憶が無いので比較はできませんが、 USBコネクタにノイズ対策や静電対策が入っていたりするのは意外でした。
電流制限抵抗変更
改造ってほどではありませんが、LEDがあまりにも眩しいので、抵抗を大きくしました。
RもGもBも同じ220Ωが入ってますね。ここは手抜きかな。 まぁそれはともかく、手元で光らせるにはこの抵抗値での明るさは眩し過ぎです。 私の作る基板ではだいたい数mA程度しか流しませんが、最近のチップLEDはそれでも結構光るものです。
コメント