スマホとマイコンを連動させるサービスの一つにBlynkサービスと言うのがある。 https://blynk.io/ 今回はBlynkについては説明を省略するが、スマホでUIを簡単に作成し、マイコンと通信し制御やデータの表 …
Arduino
ATmega 32U4で遊ぶ Part 5 キーボード応用
ATmega 32u4を使ったマウス応用同様、キーボードもレポート形式でデータを送信する事で複雑な制御が出来る。 ただ、マウス同様HID-Projectのライブラリそのままではレポート形式での送信が出来ないので、ライブラ …
Arduinoに書き込んだスケッチデータをプロテクトする
前回の記事でArduinoからスケッチデータを読み取る方法を紹介した。 逆アセンブリしてスケッチの内容を解析する事は簡単ではないが、読み取ったデータを他のArduinoに書き込んで複製する事は容易に出来る。 読み取りを防 …
Arduinoのマイコンから書き込んだスケッチやEEPROMデータを吸い出す
スケッチはArduinoに書き込む際、コンパイラとアセンブラで機械語に変換されてマイコンのフラッシュに書き込まれる。 マイコンに書き込まれたデータを吸い出す事は可能である。ただ、disassemblerを使ってある程度読 …
2軸ジョイスティックをアナログピン一つとデジタルピン一つで読み取る
2軸アナログジョイスティックは縦軸と横軸で可変抵抗があり、抵抗値をアナログで読む事で傾き情報を取得できる。 しかし、ESP8266(ESP-WROOM-02)のマインはアナログ入力が一つしかないため、そのままでは1軸しか …
Arduinoでボタンを押し続けるとキーリピートが加速する処理
ArduinoやESP8266等でボタン入力する方法は色々あるが、簡単な方法は としてピンモードをINPUT_PULLUPとする事でArduinoマイコン内でピンのプルアップが有効となり、ボタンは該当ピンとGNDの間に接 …
ATmega 32u4がUSB認識しなくなった場合の対処
ATmega 32u4はチップ単体でArduino互換マイコンとUSB通信を行う事が出来、スケッチの組み方によりUSBマウスやキーボード等のデバイスとして動作させる事が出来る。 USBデバイスとして動作する際、USBシリ …
ATmega 32U4で遊ぶ Part 4 マウス応用
ATmega 32u4を使った簡単なマウス操作をPart 2、Part 3で紹介したが、もう少し細かく制御したい場合に標準関数だともの足りない事がある。 マウス移動、複数マウスボタンのダウン/アップ状態、ホイールの移動を …
ATmega 32U4で遊ぶ Part 3 マウス基本 相対位置版
ATmega 32u4を使ってUSBデバイスをエミュレーションする、今回は一般的なマウスである相対位置を送信するバージョン。 マウスカーソルを移動させるにはmove関数を使う、引数はchar型なので渡せるのは-127~1 …
ATmega 32U4で遊ぶ Part 2 マウス基本 絶対位置版
今回はATmega 32u4を使って疑似USBマウスとして動作させるサンプル。 マウスには方式があり、位置を相対的に伝えるものと絶対位置で伝えるものがある。一般的なマウスは相対的位置で、マウスを動かすと「現在のマウスカー …