私は組み込みシステムを初めて使用しており、MP3変換プログラムをARMベースのSTM32L476G-DISCO開発ボードに移植しようとしています。また、Eclipseに基づいた無料のSystem Workbenchソフトウェアも使用しています。私はプログラムをコンパイルして、それをボード上にフラッシュするという点で成功しました。プログラムがファイル入力(.wav)を要求するまで実行されます。STM32 ARMプラットフォームのフラッシュメモリにファイルを埋め込みます
私の質問は、ファイル処理部分をどのように実装するのですか?以前は、元のWindowsコンソールアプリケーションを実行しているときに、 "'> C:\ file.wav < C:\ file.mp3"のようなコマンドライン引数を送信するだけでした。
このボードには、内部フラッシュと同様にQSPIを利用した128Mビットのフラッシュメモリが搭載されています。プログラムにファイルを読み書きするためにファイルシステムが必要ですか?私は単純に始めてファイルを埋め込むことを考えていましたが、私のコードでどのように呼び出すかわかりません。私はプログラミングソフトウェアを介して手動でメモリをプログラムすることができますが、私が知っているのは、データをフラッシュした場所のアドレスです。
私にとっては明らかではありません。アプリケーションは常に同じファイルを再生することになっていますか、別のファイルを時々送信する必要がありますか?再生するファイルを格納するのに十分な埋め込みプラットフォームの空き容量ですか? – LPs
最終的に私は毎回別のファイルを送信しますが、開始するには同じファイルを読み込んで変換したいだけです。ボードには1MBの内部フラッシュがあり、そのうち80KBのみがアプリケーションコードによって使用されています。 .mp3ファイル自体は148KBです。 – sam
@Cliffordの答えは「バイトの大きな配列」として扱うことができ、wavファイルをアプリケーションコードにリンクすることができます。将来の使用のために、変換して再生するwavファイルの "バイト"を保存するフラッシュ上にスペースを予約します(例:likerスクリプトを使用)。 – LPs