2

LinkSprite JPEG Color Camera を使用して写真を撮っています。UART から C Sharp の文字列として画像データの 16 進値を取得しています。カメラのユーザー マニュアルには、画像のデータ構造が 16 進数の FFD8 で始まり、FFD9 で終わると説明されています。私が得ている値は、この説明に適合しています。この 16 進値を ByteWriter を使用してファイルに保存すると、出力ファイルが無効になり、画像が表示されません。これらの値を JPEG ファイルに変換するにはどうすればよいですか?

HCS12 マイクロコントローラー ベースの DRAGON トレーニング ボードを使用しています。UART経由でカメラデータを取得しています。そして、Cを使用してDRAGONボードにコードを記述しています。これが私のコードです:

http://pastebin.com/dR4BJMBZ

カメラ情報:
http://www.sparkfun.com/products/10061

ユーザーマニュアル:
http://www.linksprite.com/upload/file/1333187137.pdf

私のC#コード:

http://pastebin.com/WXnTL7jd

4

1 に答える 1

1

Olcay Ertaş さん、そうです、それは生データではありません

私の友人と私は、カメラで作業しているときに同じ問題に直面しました。あなたと同じように、UART を使用して HEX データを抽出しましたが、あなたと同じように画像は表示されませんでした。私たちにとっての問題は、メモ帳を使用して 16 進データを保存すると、ASCII 文字列としてしか保存されないことでした。(メモ帳を使用して生データを保存しました)

これを解決する方法は次のとおりです。

  1. XVI32 hex-editor プログラム (無料) を使用しました。
  2. 16 進データを取得し、FF D8 から FF D9 までコピーします。
  3. プログラムを使用して、文字列を新しいファイルに挿入します。
  4. ファイルを .jpg ファイルとして保存します。

私たちと同じように、あなたにとってもうまくいくことを願っています。

于 2012-06-28T13:52:13.390 に答える