gombeのブログ

マイコンの電子工作系PIC32/KiCad/C/C++/3D/

NUCLEOとか

マイコンで3D表示(図解)

3D表示に関してここにまとめておきます。 1、座標変換 3DのCGの世界ではカメラを回すのではなく、世界を回します。また、世界を歪めます(透視投影)。しかし線形変換では透視は与えられないので別の方法を使います。 透視はzで割ることで与えられます。しかし…

I2Cの使い方 回路編

0、なぜI2C? I2Cは2本の信号線によるシリアル通信の一種です。低速ではあるものの、多数のスレーブに接続できるためセンサーの接続やコントロールICの制御など様々なところで使われます。 I2Cは通信方式がシリアル通信の中でも特殊なため使用する前にその仕…

組み込みでのC++の勧め

PICならxc32++,armならarm-g++,など、さまざまなマイコンでc++を利用可能です。例えば32bitCPUならアドレスがリニアに取れることが多いため、オーバーヘッドが少なくてすみます。 そこでc++をつかったプログラミングのススメを書きます。ではなぜC++なのでし…

CubeMX コードジェネレータチュートリアルもどき

CubeMXはST社のコードジェネレータです。このジェネレータはライブラリとその設定(初期化)、クロックの設定、RTOSなどのミドルウェアを生成します。そのことについてメモメモ。

マイコンのDMAでの断続的な転送

DMA 単一のアドレス空間上にはFlashやペリフェラル(周辺機器)のレジスタ、RAMメモリがある。この空間の間は通常CPUなどがアクセスしてメモリ間転送している。 これはCPUにやらせてもいいのだがCPUはリソースを取られるし一定時間内で転送しなければならない…

NUCLEOでFONTX形式を埋め込む(日本語表示)

ARM系でNUCLEOシリーズは有名ですね。最近は膨大なFlashメモリーを有し、日本語フォントまで置けるようになりました。 最近の電子工作でよく使われる形式であるFONTX形式の解説等はelm-chan氏がかいたFONTXの使いかたにあります。だからこれと言って説明する…