タグ

ブックマーク / kyab.hatenablog.com (5)

  • STM32F4DICOVERY+Wi-Fiモジュール+mrubyでWebサーバ - kyabの日記

    STM32F4DISCOVERYでmrubyを動かせましたが、次になにかしたいなと思っていたところ、簡単にマイコンに接続できるWi-Fiモジュールの存在を知りました。 GAINSPAN GS1011シリーズ このモジュールは、マイコンとシリアル通信上でATコマンドを使って簡単にWirelessの設定、TCP/IP通信ができるというものです。菅工房さんのページに詳しく解説されています。 菅工房 低消費電流 Wi-Fiモジュール ATコマンドの詳細なリファレンスの入手には来NDA契約の手続きが必要で、自分は契約書のコピーをファイルで送ったりしたのですが、うんともすんとも連絡が来ないので、WebでPDFを見つけて来ました^^; で、このGS1011とSTM32F4DISCOVERYを接続し、簡易Webサーバを書いて基板上にある4色のLEDを制御してみました。 実装 GS1011とのシリアル通信

  • ¥1,650で買えるARM基板STM32F4DISCOVERYでmrubyを動かす - kyabの日記

    今までchipKIT Max32でmrubyを動かして遊んでいたわけですが、最近STMicroelectronicsのSTM32F4DISCOVERYという評価ボードを知りました。 STM32F4DISCOVERY ARM Coretex-M4 STM32F407VGT6 Microcontroller 1MB Flash 128KB + 64KB RAM 秋月電子で\1,650で販売されています。色々人気なようで、動画プレイヤーを作っている方もいます。すごい・・。 この基板、RAMは合計で192KBあるのですが、メモリマップ上で128KBと64KBが分断されています。このためヒープ(mallocで使う場所)はどちらかしか使えないのですが、スタックを64KB側に置いたり色々工夫できるので、mrubyを動かすには今までより余裕がありそうです。 で、既にyamanekkoさんがmrubyを動か

    ¥1,650で買えるARM基板STM32F4DISCOVERYでmrubyを動かす - kyabの日記
  • mrubyのメモリ使用量(リベンジ) - kyabの日記

    2014/2/20追記 以下のメモリ削減はあくまで当時のmrubyに対する変更です。今でも有効かわかりませんし、#pragma packを使うと動作しない場合もあるとかないとか、、試す方は注意ください。また当時はmrbconf.hの#define を直接編集していますが、現在はbuild_config.rb内でcc.definesを使用するのが適切です。mrubyソースのexampleが参考になります。 少し前に、chipKIT Max32上でのメモリ使用量を調べたのですが、どうも間違ってるぽいので、やり直し+メモリ(RAM)削減を試みてみました。 前回:mrubyのメモリ使用量 on chipKit Max32 - kyabの日記 測り方 chipKIT上で計測するとアップロードに時間がかかって面倒なので、Mac上のllvm-gcc 4.2 32bitで試行錯誤。 次のようなコードで検証

    mrubyのメモリ使用量(リベンジ) - kyabの日記
    yuiseki
    yuiseki 2013/02/04
  • Arduino互換機+mrubyでラジコンを自動走行してみた - kyabの日記

    2014/2/20追記 下記はRSTRING_PTR()を誤った使い方をしています。mrb_valueにRSTRING_PTR()マクロを使った場合に取り出した文字列は終端がNULLとは限りませんのでご注意 前回までで、chipKIT Max32上でmrubyプログラムをさくさく開発できるようになりました。何かやることは無いかと考えて、昔遊んでいたラジコンのモータとサーボが制御できることがわかったので、自動走行してみました。 最初に円を描く走行、その次は8の字運転です。 ・・・残雪多すぎ+シャフトが外れて8の字は散々(笑) どちらもmrubyのコードで制御しています。雪がない時に調整すればもう少しまともに走るはず。 円走行(circle.rb) Serial.println("loading circle.rb....") class Circle include Arduino def

    Arduino互換機+mrubyでラジコンを自動走行してみた - kyabの日記
    yuiseki
    yuiseki 2013/01/20
  • mrubyでLEDを点滅させる - kyabの日記

    2014/2/20追記 下記はRSTRING_PTR()を誤った使い方をしています。mrb_valueにRSTRING_PTR()マクロを使った場合に取り出した文字列は終端がNULLとは限りませんのでご注意 Arduino互換機 chipKIT Max32でmrubyを動かす - kyabの日記でchipKIT Max32でのmruby動作に成功したわけですが、次にLEDを光らせてみました。 コードは以下のとおりです。 mruby_led(C側)。前のコードとほぼ同じですが、ruby側から呼び出せるdigitalWrite()とdelay()を実装して、mrubyに登録してます。 #define CHANGE_HEAP_SIZE(size) __asm__ volatile ("\t.globl _min_heap_size\n\t.equ _min_heap_size, " #size

    mrubyでLEDを点滅させる - kyabの日記
    yuiseki
    yuiseki 2013/01/11
  • 1