04-02-2025 02:24 AM
走査型トンネル顕微鏡の先端を動かしながら、1μs間隔でデータを取得しています。
データ数は198×256×256=12976128です。
このデータから、1,199,397,595...というように198個間隔でデータを抽出したいです。
これにより、65536個のデータが抽出されるはずです。
これを256×256ピクセルに配置して画像を作ります。
まず、x軸方向に0ピクセルから255ピクセルまで配置する。次にY軸方向に1ピクセル移動して配置する。次に255ピクセルからx軸方向に0ピクセルまで戻す。次にy軸方向に1ピクセル移動して配置を繰り返す。添付したファイル(scan1.pdf)に挙動を示しました。また、現在使用しているプログラムを添付します。
上記を踏まえて具体的に変更したい個所は、host_test3.viのFIFO.データ読み取りのデータから出た先にあるforループの中身です。
ぜひアドバイスいただけると幸いです。
04-02-2025 07:00 AM
1000ずつデータを読み取っているのでしょうか?Forループ内の処理が、おそらく測定データに埋め込まれている座標データを元に割り振られているようですが、ちょっとどのような処理をされたいのかがよくわかりません。
ひとまずおっしゃっているお題はこんな感じで配列データを再配置することで実現できるかとは思います。
04-02-2025 09:40 PM
アドバイスありがとうございます。
私自身も3,4年前に作られたこのプログラムを引き継いだばかりなので、すべてを理解できていません。ですので、1000ずつデータを読み取っているのかは現状わかっておりません。申し訳ございません。
プログラムの方ありがとうございました。
頂いたプログラムを現状のものに加えるとなると、実時間で取り続けているデータ(FIFO読み取りから出ているデータ)をどのようにしてForループに入れればよいでしょうか。
ご教授いただければ幸いです。