投稿、参照して欲しい。メモリーのR/W速度を一応簡単に計測した。記事にあるように、250KB/秒くらい出ている。これなら、オーディオ再生にも使えそうだ。関係は色々改修する部分が出てきそうだ。メモリを繋いだ場合など、色々と複雑な感じ。チャネルが二系統あり、片方は、ハイスピード対応(480MBPS)なので、どのくらい速度が出るのか興味があるところ。場合、ハイスピード対応では無いのが残念。今回の記事とは関係無いが、ワードプレスもマークダウン記法で記事が書けるようにプラグインを導入した。開発のキーになっているので、ドキュメントは、マークダウンで書く事が多くなり、慣れもあり、マークダウンで統一出来るのはありがたい。hiraコメントする最近、ようやくUSB関係を始めた。フレームワークは、ルネサス純正の物を試用して実験している。USBのフレームワークでは、イベント関係で割り込みを使っている。RX65Nでは、選択型割り込みを使っている。自分のフレームワークと、ルネサス社のフレームワークを合わせるのは、工夫が必要で、そのままではリンクが難しい。調べると、割り込み関係は、「basic/src/hw/r_usb_rx_mcu.c」で設定されており、これを改修すれば良さそうだ。それで、色々かち合う部分に手を入れ、USBマスストレージ関係をコンパイル、リンクする事が出来るようになった。動作検証するのだが、動かない・・・どうやら、割り込みがかからないようだった・・・よくよく調べると、選択型割り込みクラスにバグがあり、それが原因だった。※以前に実装していたが、選択型割り込みを扱うデバイスが無かったので、動作検証されていなかった・・RXマイコンでは割り込み要因は256個まで設定できるが、非常に沢山あるペリフェラルで発生する割り込みをアサインするのは無理があり、物理的に足りない。そこで、RXマイコンには、割り込みをシェアしたり(グループ割り込み)、使いたい割り込みをアサインしてプログラマブルに使う(選択型割り込み)などの仕組みが用意されている。同じようなペリフェラルでも、デバイスによって異なるグループだったり、要因が異なったり、複雑で、ドライバーを作る場合に個々に対応しなければならない。フレームワークでは、この問題を隠蔽して、簡単に扱えるように、色々な仕組みを実装してある。使う最大のメリットの一つと思う。※特殊なツールを使ってコード生成する必要が無い。CMT(コンペアマッチタイマー)を使いたい場合、「cmt_io」クラスを使う。周期を持ったタイマーを割り込みレベル「3」で起動している。CMTには、チャネルが4つあり、CMT0~CMT3まで使える。選択型割り込みを使う必要があるが、それらは隠蔽されていて、特別な設定を行う必要が無い。CMT3;#endifCMT0~CMT3の定義は、上記のようになっており、割り込み要因をデバイス毎に定義してある。CMT::CMCR.CKS.b(cks);}上記は「cmt_io」の割り込み関係を設定する部分で、「auto」を使って、割り込み型「ICU::VECTOR」、「ICU::VECTOR_SELB」を自動で再定義している。「set_interrupt」APIは、割り込み型の違いを定義してあり、それぞれ、割り込みの管理方法が異なる。レジスタに、割り込み要因番号を設定する事で行われ、割り込み番号144~207まで定義できる。インデックスカラーの場合でも、カラーパレットにアルファ値を含める事が出来る。ビルドは普通に出来ると思う。マイコンでは、動かす環境のハードルが高い)、ライブラリの構築には成功しているので、それで「ヨシ」とした。「libpng.a」とヘッダーなど必要な物を上げてあるので、それを利用するぶんには、自分でビルドをする必要は無い。