2024-04

スポンサーリンク
Programming

Arduino IDE 2.3.2を最速インストール!日本語化からLチカ動作確認まで完全ガイド

要約まとめ 最新版 Arduino IDE 2.3.2 は旧1.x系と比べてコンパイルが約2〜3倍高速。UIもモダン化し、ライブデバッガーを標準搭載。 公式サイトから無料でダウンロード。Windows/macOS/Linux いずれもインストーラ or ZIP/AppImage を選択できる。 Preferences → Language を 日本語 に変更後、再起動すれば一瞬で日本語化OK。 最短3ステップ(ボード接続▶ボード選択▶ポート選択)で動作チェックが完了。 サンプル「Lチカ」をアップロードすれば、IDEとボード双方の通信確認が一気にできる。 旧IDEから移...
Programming

ATmega328PB徹底比較:328Pから乗り換えるべき7つの理由と注意点

最初にざっくり要点 ATmega328PBは 328Pと完全ピン互換を保ちつつ、通信×2・PWM×8・ADC×8に強化。 Timer3/Timer4の追加で10-bit高解像度PWMがネイティブに使える――LED調光や精密モータ制御が一気に楽! PE0/PE1は元GND/VCCピンがI/O化。旧基板流用派はショート破損リスクに要注意。 UART/SPI/I2Cが2ポートずつ。GPS+BLEなど同時接続の配線地獄を一蹴。 タッチセンサ16ch内蔵で静電容量スイッチがライブラリ一発。 筆者実測でArduino IDEビルドはそのまま。328P用ソースを9割流用可。 パ...
Programming

Arduinoサーボのハンチングを完全解決!writeMicroseconds活用ガイド

要約まとめ サーボが〈プルプル〉震えるハンチングはPIDゲイン過多と急加速/急減速が主因。 Servo.write()だけだとコントローラが粗く、ハンチングが顕在化しやすい。 ソフト加速(softMove)でステップを細かく切ると大幅に低減。 writeMicroseconds()でパルス幅を直接制御すれば解像度が5〜10倍に向上。 さらに独自関数new_writeMicroseconds()で“なめらか全域制御”が可能。 ハンチングの正体と根本原因 結論から言うと、ハンチングは「PIDコントローラのD(微分)成分が効きすぎ+速度ステップが粗すぎ」で起こる軽い振動現象。...
Programming

Arduino UNOをインラインアセンブラで爆速Lチカ!標準関数との実行速度・バイナリサイズ徹底比較

要約まとめ Arduino UNO でインラインアセンブラを使うと、LED 点滅 1 万回が4 msで完了。標準関数では67 ms ― およそ 1/16 の高速化 コンパイルサイズも640 B → 924 Bと 284 B 削減。メモリ節約は地味に効く asm volatile() ひとつでレジスタ直叩き。レジスタ名・ビット位置は ATmega328P のデータシートで必ず確認 ハードウェア制御・厳密タイミングが必要な場面では「C+インライン ASM」が最後の切り札 ただし可搬性ゼロ。ボードが違えばレジスタも違う ― “高速化の前に保守性” のジレンマも要チェック ア...
スポンサーリンク