MPU_Configの一部を取り込みましたが...(その3.1)
「ねむいさん」の
http://cid-36f4d1230f8a673c.onedrive.live.com/browse.aspx/.Public/src/Cortex/ST/STM32F746NGH6_Discovery/FatFs-LCD/
こちらのhw_config.cのMPU_config()をMicroPythonのboard_init.cに取り込んでみたのですが、やはりbus error起こります。キャッシュの問題じゃないんでしょうか?
MbedのLCDデモもオンラインコンパイラの吐き出したバイナリで普通に動いていたので、今度はLinux環境でねむいさんのサンプルコードをビルドすることにしました。
746Disco限定ですが、こうするとビルドできました。
https://box.yahoo.co.jp/guest/viewer?sid=box-l-ibqw55wboq3hijmw2pwz5pgyne-1001&uniqid=e818b072-e28d-420a-8705-78f4dca9af05&viewtype=detail
とにかくCoreUtils for Windowsは変数内の大文字を小文字にしてpathを解釈しています。(widowsのコマンドが区別しないのかもですが...)
Linuxではしっかり区別してます。
今晩動かしてみます。
ESPr® IR 赤外線リモコン
https://www.switch-science.com/catalog/2740/
を導入しました。
ファームはこちらを使わせて頂きました。
https://github.com/toskaw/ESP8266IRKit/blob/master/ESP8266IRKit.ino.generic.bin
IRKitシンプルアプリでの初期設定がなかなかうまく行きませんでしたが、USBシリアルのDTR信号で強制リセット&モニタして少し状況を確認して、無事初期設定が完了しました。
しかし、リモコンの学習がかなり難しいと言うか、成功しづらいです。
まずインジケータを付けます。
MicroPythonにCのモジュールを追加するぞ!(その2:ビルドできた)
もう半月も経ってしまいましたが、何とかLCDのCモジュールが出来ました。
2つの関数BSP_LCD_DrawPolygon,BSP_LCD_FillPolygonは
typedef struct { int16_t X; int16_t Y; }Point, * pPoint;
のpPointを引数にしているので、保留しています。
恥ずかしながら、座標x,yの配列をMicroPythonからCに渡す方法が分からなくて...
それ以外は
https://os.mbed.com/teams/ST/code/BSP_DISCO_F746NG/docs/tip/group__STM32746G__DISCOVERY__LCD__Exported__Functions.html
の関数をMicroPythonのモジュールから呼べるようにしています。
BSPってずっと何?と思っていましたが、Board Support Packageの略なんですね。
MicroPythonにCのモジュールを追加するぞ!(その1)
STM32F746G-DiscoのMicroPythonにLCDのモジュールを追加しようと思います。DRAMをフレームバッファにしたりかなり難易度が高そうです。
mbedにdemoがありますので、これをマージしたいと思います。
https://os.mbed.com/teams/ST/code/DISCO-F746NG_LCD_demo/
MicroPythonにCのモジュールを追加する方法は非公式のドキュメントがあります。
http://micropython-dev-docs.readthedocs.io/en/latest/adding-module.html
しかし、この内容に若干誤記もある様ですし、内容も不足していると思います。
ゴニョゴニョ調べていたら、Cモジュールの雛形を作るPythonスクリプトを見付けました。
https://github.com/prusnak/micropython-extmod-generator
これをフォークして若干機能追加に挑戦しています。
https://github.com/forester3/micropython-extmod-generator/tree/develop
完成したらpullリクエストしてみようかな?
On board ethernet driver for MicroPython
ほとんどソースを書いていないのにpull requestをしてしまいました。
https://github.com/micropython/micropython/pull/3671
でもethernet付きNUCLEOボードでMicroPythonを使っている人みんな使いたいと思うんじゃないかな?と考えまして...
Georgeさんにもお試しのPRを出した後に、オススメされましたので、やっと出せました。
https://github.com/dpgeorge/micropython/pull/6
でも英語力ほしいです。
F7disco ethernet driver for MicroPython
「楽しくやろう。」の
「NUCLEO-F767ZI ethernet driver for MicroPython」
http://blog.boochow.com/article/455508112.html
を参考にF7-discoのMicroPythonをオンボードethernetに対応させる挑戦です。
gitの使い方をもう忘れてしまい戸惑いましたが、今日は何とかビルド完了まで辿り着きました。