Arduino IDEでESP32-DEVKITCを動かし,SDカードからBitMapデータを読み込んでLEDパネルに表示させています。
1年ほど前に作ったプログラムを少し直して,さて画像データを読み取ろうとするとコンパイルエラーが出てしまいました。
プログラムの触った部分が悪いのか,先日再インストールしたボードマネージャの入れ方が悪かったのか,,原因を探して大ハマりです。
結果,「SDライブラリが2つある」エラー表示の同じ記事を読んで SDカードを使う記述が変わったことに気がつき,やっと動くようになりました,,。
参考→ ESP32(ESP32-DevKitC)でmicroSDカードを使う SOAR130650
なんとか動くようになってSDから読み込んだ画像を表示したところです。

以下は,現況と注意点のメモです。
現在の環境
・Arduino IDE Ver. 2.0.4
・ESP32 ボードマネージャ Ver. 2.0.7
ESP32とSDカードモジュールとの接続
・ESP32のデフォルトのVSPIの PInを使っています
・VCCは5V,ロジックは3.3V仕様のモジュールです

ちなみに,以前にパラレル出力用にまとめてみた出力可能Pinの配置図です

現在のプログラムと追加・変更点
1) インクルードファイルの追加
・"FS.h"の追加が必要です。

2) プログラムのSDからの読み込み部の変更
・以前のような SD.open(ファイル名)は直にはできないようですね。
・サンプルプログラムを参考に,getOrg()関数を作って呼び出す形式にしました。

よく理解できない点
1) どうして SD.begin()は書けるのに,SD.open()は書けなくなったのだろう?
SDライブラリを新規に自前で追加したが,Arduinoの機能も一部使っていて,機能によって使い分けているからなのだろうか,,。
2) 関数を呼び出す際にSDを引数に書き,関数側でもややこしい事を書かなければいけなくしてまでなにか機能がアップしたのだろうか?
SD から fs::FS &fs に,そして fs.open の流れがどうしても私の頭ではスッキリ理解できないのです。
こんな流れが分かっているぐらいの人なら,SD.open()も動く互換性を持たせるぐらい簡単な事ではないでしょうかね。
そうしないと今までのESP32の解説書やWebで紹介されたプログラムは動かないのがたくさんあって,役に立たなくなりますよね。
ま,オヤジの愚痴っぽくなりましたが,久しぶりの大ハマりで丸2日はかかり,血圧も上がりましたので刺激にはなりました(^^;;;;;;
また次の試作に移りましょう。
1年ほど前に作ったプログラムを少し直して,さて画像データを読み取ろうとするとコンパイルエラーが出てしまいました。
プログラムの触った部分が悪いのか,先日再インストールしたボードマネージャの入れ方が悪かったのか,,原因を探して大ハマりです。
結果,「SDライブラリが2つある」エラー表示の同じ記事を読んで SDカードを使う記述が変わったことに気がつき,やっと動くようになりました,,。
参考→ ESP32(ESP32-DevKitC)でmicroSDカードを使う SOAR130650
なんとか動くようになってSDから読み込んだ画像を表示したところです。

以下は,現況と注意点のメモです。
現在の環境
・Arduino IDE Ver. 2.0.4
・ESP32 ボードマネージャ Ver. 2.0.7
ESP32とSDカードモジュールとの接続
・ESP32のデフォルトのVSPIの PInを使っています
・VCCは5V,ロジックは3.3V仕様のモジュールです

ちなみに,以前にパラレル出力用にまとめてみた出力可能Pinの配置図です

現在のプログラムと追加・変更点
1) インクルードファイルの追加
・"FS.h"の追加が必要です。

2) プログラムのSDからの読み込み部の変更
・以前のような SD.open(ファイル名)は直にはできないようですね。
・サンプルプログラムを参考に,getOrg()関数を作って呼び出す形式にしました。

よく理解できない点
1) どうして SD.begin()は書けるのに,SD.open()は書けなくなったのだろう?
SDライブラリを新規に自前で追加したが,Arduinoの機能も一部使っていて,機能によって使い分けているからなのだろうか,,。
2) 関数を呼び出す際にSDを引数に書き,関数側でもややこしい事を書かなければいけなくしてまでなにか機能がアップしたのだろうか?
SD から fs::FS &fs に,そして fs.open の流れがどうしても私の頭ではスッキリ理解できないのです。
こんな流れが分かっているぐらいの人なら,SD.open()も動く互換性を持たせるぐらい簡単な事ではないでしょうかね。
そうしないと今までのESP32の解説書やWebで紹介されたプログラムは動かないのがたくさんあって,役に立たなくなりますよね。
ま,オヤジの愚痴っぽくなりましたが,久しぶりの大ハマりで丸2日はかかり,血圧も上がりましたので刺激にはなりました(^^;;;;;;
また次の試作に移りましょう。