以下の内容はhttps://gijin77.blog.jp/archives/2022-10.htmlより取得しました。



 raspi
◆各種液晶ディスプレイ(HDMI,SPI,OLEDetc)

 各種RPi液晶ディスプレイほか

◆主要マイコンボードの回路図・ピンアサイン総まとめ

 【保存版】主要マイコンボードの回路図総まとめ

 【保存版】主要マイコンボードのピン配総まとめ

◆以下のマイコンボードがまとめて有ります。(先人に感謝感激)

◆Arduinoシリーズ
 Arduino Uno
 Arudino Mega2560
 Arduino DUE
 Arduino Nano
◆RaspberryPiシリーズ
 Raspberry Pi B+
 Rapsberry Pi 2、Rapsberry Pi 3、Rapsberry Pi 4 Model B、Raspberry Pi Zero WH
 Raspberry Pi Pico
◆M5Stack
 BASIC
 CORE2
◆Microbit
◆obniz

以上


ブログトップへ

・Micro-B Type-C OTG (On the GO) ホストケーブル を自作

◆スマホやタブレットにUSB機器を接続する為のOTG(On the GO)
 ホストケーブルを自作してみました。

◆自作したホストケーブルは、下記ブログ内記事オシロスコープで使いました。
 ・Raspberry Pi Pico と スマホ で オシロスコープ を試してみた

  ①OTGホストケーブル Micro-B <--> Micro-B 
 otg-micro-b-2

  ②OTGホストケーブル Type-C <--> Micro-B
 otg-type-c-b-2

1.Micro-Bについて
 ①Micro-Bは5ピンあります。普通USBケーブルが4線なので1ピン余ります。
 でも残りの1ピンが有る役目を持っています。この4ピンをGNDと繋げることで
 ホストケーブル(OTG)として動作します。

 ②OTGホストケーブル Micro-B <--> Micro-B ケーブル 
 OTG-Micro-B-Micro-B
 ➂100均のType-A - Micro-Bケーブルを約25cmiに切りMicro-Bのオスを
  上記の通り半田付けしました。
 micro-b

 ◆完成写真 半田付け後、グルーガンで固めて熱収縮チューブで防護しました。
  (緑がHOST側、赤が端末側)
 micro-b-b

2.Type-Cについて
 ①Type-Cは24ピンあり高速伝送や高速充電や色々な機能が有ります。
  詳しくは、下記の記事を参照してみて下さい。

  ◆Type-Cのピンアサインを下記に示します。
  (ネットより引用)
 type-c-10

 ②OTGホストケーブル Type-C <--> Micro-B 
 Type-Cオスの、CCピンとGND間に5.1KΩの抵抗を接続します。
 これでホストケーブル(OTG)になり得ます。
 OTG-Type-C-Micro-B

  ◆実際に使った抵抗は、手持ちの関係で4.9KΩ+220Ω=5.12KΩで作成しました。
   また、Micro-Bの方でGNDに落としました。
 OTG-Type-C-Micro-B-J

 ➂100均のType-C - Type-Cケーブルを約25cmiに切りMicro-Bのオスを
  上記の通り半田付けしました。線の色がMicro-Bの時と違っていました
  ので注意が必要でした。
  type-c

 ◆完成写真 半田付け後、グルーガンで固めて熱収縮チューブで防護しました。
  (緑がHOST側、赤が端末側)
 type-c-b

以上



ブログトップへ

◆マイコンでのオシロスコープを色々ネットで探していたところ
 ラズパイピコとスマホのアプリでオシロスコープが出来ることを
 発見し、さっそく試してみました。
 pico_Oscilloscope-0

  ◆8インチタブレットでの様子(画面が大きく見やすいです)
 pico_Oscilloscope-7

1.まずはラズパイピコに計測用のプローブ(端子)を繋ぎます。
  抵抗3本の簡単なものです。
  下記写真のように、
  ①GP26_A0に100kΩの抵抗を繋ぎプローブの+端子とします。
  ②GNDと3V3にそれぞれ1KΩを繋ぎ二つを合わせ-端子とします。
 pico_Oscilloscope-1

  注意)上記は、簡易的ですので測定範囲は、3.3Vまでで、±1.65Vと
     なります。
デフォルト (0-3.3V) とは異なる電圧範囲 (例: -5V から +5V
     または0V から 0.1V など) を測定するには、Pico の前に追加の回路を
     追加して信号を減衰/増幅する必要があります。

     アナログ フロントエンドの例

 ◆アナログ フロントエンドの例4:シングルチャンネル、複数の電圧範囲
                      および過電圧保護
 回路図4

 ◆上記回路を2チャンネル分作り、ケースに入れました。
 pico_Oscilloscope-11

 ◆側面 2チャンネル分のBNCコネクタ
 pico_Oscilloscope-12
 ◆後部 ロジックアナライザの入力ピン
 pico_Oscilloscope-13
 ◆内部基板の様子
 pico_Oscilloscope-14

 ◆アナログ フロントエンドの例5:過電圧保護付きの 2 チャンネル。
 回路図5

2.ラズパイピコにファームウェアを下記よりダウンロードし、
  ピコにインストールします。
  ◆ラズパイピコをPCに繋ぐとドライブが現れますので
  その中にダウンロードしたファイルをコピペします。
  また、詳しい説明もありますのでgoogle先生に翻訳して
  もらって分かりやすいでした。(先人に感謝感激です。)
  Scoppy-オシロスコープとロジックアナライザー

 pico_Oscilloscope-2

3.microUSBケーブルをType-A --> Type-C用の変換コネクタ(OTG対応)
  通してスマホに繋ぎます。(ダイソーなどで100均に売っています。)

 ◆スマホ、タブレットとの接続用のOTGケーブルを作ってみました。
  下記ブログ内記事も参照してみてください。
  ・Micro-B Type-C OTG (On the GO) ホストケーブル 自作
  
 pico_Oscilloscope-3

4.スマホ用のアプリをストアで検索しスマホにインストールします。
  アプリ名は、「Scoppy-Oscilloscope」です。

 pico_Oscilloscope-4

5.準備できたら動かしてみます。
  信号発生器は、下記の以前作ったものを使いました。
  ・AD9833をArduinoで制御して信号発生器を作ってみた。

 ◆信号源として、GP22に1Khzの矩形波が出ていますので
  試験出来ます。


 ①正弦波を表示しています。
 pico_Oscilloscope-0

 ②三角波を表示しています。
 pico_Oscilloscope-5
 
 ➂矩形波を表示しています。
 pico_Oscilloscope-6

 今回の簡易的なプローブでは100Khzになると波形が崩れました。
 でもオーディオ帯域を計測するには、十分かなと思います。
 さらに、ロジックアナライザの機能もあります。
 有料で2chにもなるようです。
 以前ESP32を使ってのオシロより何倍も良く出来ていると思います。 

6.仕様と特徴
 ①オシロスコープ
 ・最大サンプリングレート:500kS/s(チャンネル間共有)
 ・時間/分割: 5us - 20 秒
 ・メモリ長はサンプリング レートによって異なります。
  実行モードでは 2kpts (チャネル間で共有) から 20k
 ・pts の範囲で、シングル ショット キャプチャでは最大 100kpts の範囲です。
 ・2チャンネル
 ・自動および通常のトリガー
 ・カーソル
 ・XY モード
 ・FFT
 ・ワイヤレス接続

 ②ロジックアナライザー
 ・最大サンプリングレート: 25MS/s (チャンネルあたり)
 ・時間/分割: 50ns - 100ms
 ・8チャンネル

 ➂広告とアプリ内購入
 ・アプリの無料 (無料) バージョンは、1 つのチャネルと USB に制限されています。
 ・画面の上部に 1 つのバナー広告が表示される場合があります。
 ・追加のチャンネルとワイヤレス サポートを有効にして、すべての広告を削除する
  には、少額のアプリ内購入が必要です。
  (生涯購入で約 2 米ドル - 正確な価格は場所によって異なります)。

7.必要なもの
 ・Android バージョン 6.0 (Marshmallow) 以降を実行している Android デバイス。
 ・デバイスは USB OTG (On-The-Go) をサポートしている必要があります。
 ・ほとんどの最新の携帯電話/タブレットはサポートしています。
 ・ (Play ストアをブラウジングするときにアプリが表示されない場合、
  お使いのデバイスはおそらくこの機能をサポートしていません)。
 ・携帯電話/タブレットと互換性のある USB OTG アダプター/ケーブル
   (100均で入手可能)
 ・Rasperry Pi Pico または Pico W ボード

8.下記に取り扱いについて詳しく説明が有ります。
  私は、google先生に訳してもらっています。
  取扱説明書「Scoppy オシロスコープとロジックアナライザー」

9.その他
 ◆ちなみにAndroid 4.1.4のタブレットでは、アプリが表示されませんでした。 
  iPhone 版について
  「残念ながら現時点(2022/4/1)では iPhone バージョンに取り組む時間が
  ありません。でも、やることリストには間違いなくあるので、いつの日か
  起こるかもしれません。」
との事

10.オシロスコープを2chに対応する為に、210円課金しました。
  円安なのに210円で済みました。(2022/10/22時点)
  又、ロジックアナライザも8chまで使えるようになりました。


11.参考 Raspberry Pi Pico資料
 ①データーシート
   Raspberry_Pi_Picoデーターシート(PDF)

 ②ピンアサイン
 raspi_picoピンアサイン

 ➂回路図
 raspi_pico回路図

以上


ブログトップへ

◆IRリモコンを使って制御したい時、リモコンのコードを
 調べる為にESP32とIR受光器で赤外線リモコン解読器作ってみました。

  リモコンの応用として下記ブログ内記事も参照してみてください。
 ①・M5STAMP Pico で 小型インターネットラジオ を作ってみた
 ②・ESP32-3248S035 で 多機能インターネットラジオ を作ってみた

 ◆OLED表示付き
 ir_remocon_2

 ◆シリアルモニタ表示
 ir-2
 
1.ハードはESP32 DevkitにIR受光器を付けただけの物です。
 また、IR受光器のOUTPUTに並列に抵抗入りLEDを付けて
 受信したとき点灯するようにしました。
 ir-10
  ◆使用部品とデーターシート
  ①・赤外線リモコン受信モジュールOSRB38C9AA(2個入)
   ・OSRB38C9AAデータシート(pdf)

  ②・抵抗内蔵3mmLED5V緑色OSG5DA3134A-5V(10個入)
   ・OSXXXX313XAシリーズPDFデータシート(pdf)

2.スケッチは、下記の通りです。
  (保障無しの自己責任で)  IR_Decoder.ino

3.シリアル出力の画面です。
 リモコン釦に応じて、16進で表示しますので、これを控えて制御用プログラムを
 修正します。
 ir-1

4.OLED SSD1306を接続してリモコンコードを表示してみました。
 ①表示している様子
 ir-20

 ②接続図
 ir-21
 

 ➂OLED SSD1306表示バージョンスケッチ
  (保障無しの自己責任で)  IR_Dec_ssd1306.ino

 ④下記リモコンコード表
  aitendo リモコン [KEYES38K06]

 ir_remocon_code
 
以上



ブログトップへ

◆M5STAMP Picoで表示部の無い小型のインターネットラジオを作ってみました。
 IRリモコン操作、ブラウザ操作(スマホ,iPadなどでも)で音量、選局等が出来ます。
 *起動時に音声合成によるIPアドレスを読み上げる様にしました。(2022/10/12)
 m-1

 以前作った「多機能インターネットラジオ」からLCD及びタッチパネル
 無しのバージョンです。
 なので、「TFT_eSPI」「efont」のライブラリは、必要有りません。
 下記ブログ内記事を参照して「AUDIO_I2S」「IRリモコン」
 ライブラリをインストールして下さい。
 ・ESP32-3248S035 で 多機能インターネットラジオ を作ってみた
 
1.実態配線図

 m30

2.パソコンweb上の操作画面
 ①シリアルモニタに表示されるIPアドレスにアクセスします。
 *起動時にIPアドレスを読み上げますのでシリアルモニタを使えない
  環境でもアクセスできます。

  表示部が無いので、再生中曲名をブラウザ上に表示するように
  しました。30秒毎更新します。
 m-31

 ②スマホからの操作画面
 i-34

 ➂iPadからの操作画面
 i-33


 ④あとIRリモコンでも同様の操作が出来ます。

4.最後に次のスケッチをコンパイル・インストールします。
  (保障無しの自己責任で)  M5STAMP_iradio2.ino

  ①本体SWで消音できます。
  ②LEDは、再生中青色表示で消音時滅灯、スリーブ時赤色となります。
  ➂起動時に音声合成によるIPアドレスを読み上げる様にしました。
   (2022/10/12)


以上


ブログトップへ

◆3.5インチ480 x 320 SPI TFT LCDディスプレイモジュール
 「3.5inch ESP32-3248S035」で操作方法を多数装備した
 多機能のインターネットラジオを作ってみました。
 i-1

◆AliExpressで液晶付きESP32モジュールー「3.5inch_ESP32-3248S035」
 を入手しました。
  ESP32 開発ボード3.5インチ320*480表示

◆このモジュールの詳しい解説は、下記URLにて
  macsbug ESP32-3248S035

◆このインターネットラジオの概要
 1.制御可能項目
  ①音量の+.-及び消音
  ②選局の+,-
  ➂スリープタイマー(60分後)での自動停止
 2.操作方法
  ①タッチパネル
  ②IRリモコン
  ➂ブラウザ上からの操作(スマホ、iPadなどもOK)
 3.その他
  ①web上で一時視聴URLを設定可能
  ②アーティスト名等の漢字表示
  ➂NTPによるカレンダー、時計表示
  ④WiFi情報の表示(SSID,IP,RSSI)

1.動作画面
 ①通常画面    
 i-9

 ②スリープタイマー起動時の画面
(60分後にディープスリープとなり再生を停止します。)
 i-8

 ➂パソコンブラウザ上の操作画面
 (画面に表示しているIPアドレスにブラウザからアクセスします。)
 iRadio-4

 ④スマホ上での操作画面
 i-34

2.使用ボード&モジュール
 ①I2Sの信号取り出し
  このボードの外部コネクタに出力ポートがI2S制御にに必要な3個無かったので
  青LEDのGPIO17を、コネクタの未使用ピンに写真のように配線しました。
  GPIO17は、青色LEDと共用となるのでスケッチでは、使用しないように
  しました。

      ◆macsbug.wordpress.comさんのサイトより引用
 i-5

 i-6
 
 ②Max98357 I2S 3W D級アンプとの接続
   I2S接続のアンプは、Max98357 I2S 3W D級アンプを使いました。
  最初内蔵のDACにて音声出力を試していたのですがどうにも
  プップッ音が出て気になり諦めました。
 i-7

    コネクタ - ESP32 pin -- MAX98357A
 -------------------------------------------------
    CN1   --  3.3V          --  vin
    CN1   --  GND          --  GND
                        オープン   --  SD
                        オープン   --  GAIN
    CN1   --  GPIO17    --  DIN
    P3      --  GPIO22    --  BCLK
    CN1   --  GPIO21    --  LRC

  *GAIN設定は、下記のように抵抗を繋ぐことにより出来る。
  ・15dB GAINとGNDの間に100Kの抵抗を接続の場合
  ・12dB GAINがGNDに直接接続されている場合  
  ・9dB GAINが何にも接続されていない場合(これがデフォルト)
  ・6dB GAINがVinに直接接続されている場合
  ・3dB GAINとVinの間に100Kの抵抗を接続の場合

  ・◆MAX98357データシート(pdf)

  ◆2022/10/11追記
  PCM5102Aでステレオにしてみました。
 PCM5102A-2

   ◆PCM5102Aデータシート(pdf)

        ◆macsbug.wordpress.comさんのサイトより引用
 PCM5102A
 
 ➂IRリモコン用IR受信素子と接続 
  あと、IR受光器のOUTPUTに並列に抵抗入りLEDを付けて
  受信したとき点灯するようにしました。

  コネクタ - ESP32 pin -- OSRB38C9AA --抵抗入りLED
  --------------------------------------------------------------------------
       P3          --    GPIO35      --  OUT    ---       カソード
    CN1       --     GND          --   GND 
       CN1       --     3.3V           -- VCC  ----      アノード

  ・赤外線リモコン受信モジュールOSRB38C9AA(2個入)(秋月)
  ・OSRB38C9AAデータシート(pdf)
  ・抵抗内蔵3mmLED 5V 緑色 OSG5DA3134A-5V(10個入)(秋月)
  ・OSXXXX313XAシリーズ データシート(pdf)


2.ライブラリのインストール
 (先人のライブラリを使わせてもらっています。感謝感激)
 ①「TFT_eSPI」「efont」のライブラリは、下記ブログ内を参照して
  インストールしておきます。
  ・ESP32 にて efont を使い 3.5inch ESP32-3248S035 に漢字を表示してみた
  
 ②TP タッチパッドライブラリ
 *TFTeSPIのタッチパッド部分は、上手く動かなかったのでスケッチ内に
  追加しました。
 
 ➂AUDIO_I2Sライブラリを下記よりZIPファイルをダウンロードしArduinoの
  ライブラリに登録します。
  schreibfaul1/ESP32-audioI2S

 i-21

 ④IRリモコンライブラリを下記よりZIPファイルをダウンロードしArduinoの
  ライブラリに登録します。
  schreibfaul1/ESP32-IR-Remote-Control

 i-22

  リモコンライブラリをそのまま使うには、それと同じリモコンが
  必要なので、手持ちのリモコン用に修正しました。
  修正箇所は、「"\libraries\ESP32-IR-Remote-Control\src\IR.cpp"」
  内の次の行です。
 i-20

  手持ちのリモコンコードを確認するには、コメントを取りexamples内
  "\Arduino\libraries\ESP32-IR-Remote-Control\examples\IR.ino"
  のスケッチを実行し、当該のリモコンを押し、コードを控え、
  IR.cppを修正します。

  ◆ブログ内下記の記事を参照してリモコンコードの解析も出来ます。
   ・ESP32 IR Decoder (赤外線リモコン解読器) を作ってみた

3.最後に次のスケッチをコンパイル・インストールします。
  (保障無しの自己責任で)  ESP32_iradio5.ino

 ◆スケッチがかなりの量になりましたのでコンパイル時のボード設定の
  Partition Scheme を「Default....」にすると使用率95%となり、何とか
  サイズ内に収まります。
  「Huge APP....」 にすると39%となり、かなり余裕が出来ますので
  登録サイトを、めいっぱい増やすことが出来ると思います。

  ①Default....でのコンパイル時
  最大1310720バイトのフラッシュメモリのうち、スケッチが1248377バイト
  (95%)を使っています。
  最大327680バイトのRAMのうち、グローバル変数が52964バイト(16%)を
  使っていて、ローカル変数で274716バイト使うことができます。
 i-30

  ②Huge APP...でのコンパイル時
  最大3145728バイトのフラッシュメモリのうち、スケッチが1248377バイト
  (39%)を使っています。
  最大327680バイトのRAMのうち、グローバル変数が52964バイト(16%)を
  使っていて、ローカル変数で274716バイト使うことができます。
 i-31

 ➂世の中には、たくさんのインターネットラジオサイトが有りますが、
  とりあえず10局を登録しました。
  自分の好みでスケッチを編集してください。
 ④スリープタイマーは、現在60分に設定してあります。これも自分に合わせて
  編集してください。
 ⑤日本にある局を探すにはブラウザで、下記をアクセスするとCSV形式が得られ
  ますので、Excel等に取り込んで、聞きたい局のURLをブラウザ操作画面で一時
  聞いてみて、好みによってスケッチに書き込めば良いかと思います。
  http://95.179.139.106/csv/stations/bycountry/japan
 
◆M5STAMP Picoで表示部の無い小型のインターネットラジオも作りました。
  下記ブログ内記事を参照してみてください。
  ・M5STAMP Pico で 小型インターネットラジオ を作ってみた


以上 ほぼ満足のゆく出来となりました。


ブログトップへ

◆IoT機器でWiFiを使って色々遊んでいて、他でデモなどする時に自宅の開発
 環境が使えた方が良い時があります。こんな時に役に立ちそうなESP32WiFi中継器
 です。
 (単純に自宅内のWiFiの電波の弱い所をカバーするWiFi中継器としても使えます。)

 ESP32_WiFi_Nat-0

1.最初に、下記より「esp32_nat_router」をダウンロードします。
  (先人に感謝感激です。)
  WPA2 Enterprise をサポートする ESP32 NAT ルーター

 ①次の画面になりますのでzipファイルをダウンロードします。
 ESP32_Nat

 ②ダウンロードしたら、解凍します。
 ➂すると下記のようなフォルダとなりますので、「build」を選択します。
 ④さらに「esp32」を選択します。
 ⑤この中の「bootloader.bin」と「firmware.bin」「partitions.bin」を
  ESP32に書き込みます。
 ESP32_Nat-1

2.次にESP32に書き込む為の「フラッシュダウンロードツール」を、
  下記よりダウンロードします。
  flash_download_tool_3.9.3.zip

  ◆上記でダウンロードできなかったら下記をみてみます。
  espressif/support/download

  ①ダウンロードしたら解凍します。

3.実際にESP32に書き込みします。
 1.解凍したフォルダ内の「flash_download_tool_3.9.3.exe」を実行します。
 flash_download_tool_1

 2.すると次の画面になりますので、「ESP32」を選択し、「OK」を押します。
 flash_download_tool_2

 3.更に下図のGUI画面になります。
 ①をクリックし、最初に解凍した「bootloader.bin」ファイルを選択します。
 ②の場所に、アドレス「0x1000」を入力します。
 ③をクリックし、最初に解凍した「firmware.bin」ファイルを選択します。
 ④の場所に、アドレス「0x10000」を入力します。
 ⑤をクリックし、最初に解凍した「partitions.bin」ファイルを選択します。
 ⑥の場所に、アドレス「0x8000」を入力します。
 ⑦の所をチェックします。
 ⑧の所が選択されているのを確認します。
 ⑨の所で、COMポートを指定します。
 ➉設定が終わったら「START」をクリックします。
 ⑪すると緑のバーが伸びていき「FINISH」が表示され
  書き込みが終わりますので「X」で終了します。
 flash_download_tool_3

4.ここで、ESP32をリセットします。
 ①iPad等でWiFiに接続しようとすると、WiFiのアクセスポイント
  「ESP32_NAT_Router」が現れます。
 ②「ESP32_NAT_Router」に、接続します。
 ESP32_Nat-4

5.次にブラウザで「192.168.4.1」に接続します。
  すると次の画面が表示されます。
  ◆「PW」が無い場合空白とします。
 ①まず、「uplink」の「SSID」と「PW」を設定し、「Connect」すると
  ◆ESP32 NAT Router Config画面を表示しESP32がリブートします。
  そこで、再度、WiFi接続で「ESP32_NAT_Router」に接続します。
 ②再度「192.168.4.1」に接続し、「AP Settings」で新しく
  自分用のSSIDとPWを設定し、「set」します。
     ◆ESP32 NAT Router Config画面を表示しESP32がリブートします。
 ➂最後は、先にセットした、自分用の「SSID」と「PW」に繋ぎます。

 ◆「192.168.4.1」画面
 ESP32_Nat-6

 ◆ESP32 NAT Router Config画面
 ESP32_Nat-7

6.完成したWiFi中継器経由でスピードテストしました所、
 「下りスピード 9.57Mbps」「上りスピード 5.08Mbps」で
  まあまあのスピードでした。
 ESP32_Nat-3

7.ビルトインLED(青色)は、次のように点灯/点滅します。
 ①ESP32がアップストリーム APに接続されている場合は、LEDが点灯し、
  そうでない場合は滅灯します。
 ②ESP32にデバイスが接続されている場合、LEDは接続されているデバイス
  の数だけ点滅し続けます。
 例:
 ◆ESP32に2つのデバイスが接続されていて、ESP32はアップストリーム
  にも接続されている場合
  *****.*.*****

 ◆ESP32に1つのデバイスが接続されていますが、ESP32はアップストリーム
  に接続されていない場合
  ....*....

 ◆ESP32に2つのデバイスが接続されていますが、ESP32はアップストリーム
  に接続されていない場合
  ....*.*.....

以上



ブログトップへ

◆ESP32のスケッチを開発していて動作がおかしいので「log_i();」を
 挿入してデバッグしてみました。
 
1.デバッグ用のレベルに応じて下記のようなレベルと関数があります。
 ①log_e() – Error (最低レベル)
 ②log_w() – Warn
 ➂log_i() – Info
 ④log_d() – Debug
 ⑤log_v() – Verbose (最高レベル)
 コンパイル時に「ツール」->「 Core Debug Level」で出力を制御できます。
 デフォルトの「なし」のときはどれも出力されません。
 log_i()等は、はprintf()の書式が利用できます。

log_i

2.試験中のソース中のlog_i(例)
 ・・・
 log_i("TP0 X=%i Y=%i",x,y);
 ・・・
 if(tp_rotation==3){tmpxy=y; y=h-tmpxy; if(x>w-1) x=0; if(y>h-1) y=0;}
 log_i("TP1 X=%i Y=%i",x,y);
 ・・・

3.シリアルモニタ出力
 [415364][I][ESP32_iradio2.ino:543] tp_loop(): TP0 X=67 Y=13
 [415365][I][ESP32_iradio2.ino:557] tp_loop(): TP1 X=312 Y=380

4.標準 C の中で使用できる、書式指定子をいくつか以下に示します。
指定子 用途
 %c 文字
 %s 文字列
 %hi short 型 10 進整数 (符号付き)
 %hu short 型 10 進整数 (符号無し)
 %Lf long double 型浮動小数点数
 %n 表示は何も行わず整数変数に出力済みもしくは入力済み文字数を格納
 %b 引数を正の整数として解釈して2進文字列に変換し出力する
 %d 10 進符号付き整数 (基数が 10)
 %ld 倍精度整数を10進で出力する
 %u 符号無し整数10進で出力する
 %lu 符号なし倍精度整数を10進で出力する
 %i 符号付き整数 (基数を自動的に検出)
 %o 8進符号無し整数 (基数が 8)
 %lo 倍精度整数を8進で出力する
 %x 16進符号無し整数 (基数が 16)
 %X 16進符号無し整数 (基数が 16)*表記が大文字になる
 %lx 倍精度整数を16進で出力する
 %p アドレス (または ポインタの値)
 %f (小数形式) 浮動小数点数
 %lf 倍精度実数を出力する
 %e 指数形式浮動小数点数
 %E 指数形式浮動小数点数 (指数記号は大文字 E)
 %% % 記号

5.書式指定子についての参考URL
 ①-C 言語の書式指定子について
 ②Arduinoでsprintfの書式とfloatの扱い方、0埋めとか
 ➂sprintf関数 - 文字列の書式指定

6.log_i();をソースに適宜挿入することでどのファイルのどの行までの
 動作状況が、把握できるようになりました。

以上


ブログトップへ



以上の内容はhttps://gijin77.blog.jp/archives/2022-10.htmlより取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14