0

Arduino用のPTPISO 15740)ライブラリ(USBホストを介してカメラ設定を操作)を使用しています。この定数を使用します。これは、ある種のハッシュテーブル配列のように見えます。問題は、それが何と呼ばれているのかわからないことです。そのため、オンラインで検索する方法がわかりません。また、経験豊富なC ++プログラマーではないため、使用方法もわかりません。これはどのように作動しますか?

const ValueTitle<VT_SHSPEED, VT_SHSPEED_TEXT_LEN> ShutterSpeedTitles[] PROGMEM =
{
{0x0c,  {'B','u','l','b',0} },
{0x10,  {' ','3','0','"',0} },
{0x13,  {' ','2','5','"',0} },
{0x14,  {' ','2','0','"',0} },
{0x15,  {' ','2','0','"',0} },
{0x18,  {' ','1','5','"',0} },
{0x1B,  {' ','1','3','"',0} },
{0x1C,  {' ','1','0','"',0} },
{0x1D,  {' ','1','0','"',0} },
{0x20,  {' ',' ','8','"',0} },
{0x23,  {' ',' ','6','"',0} },
{0x24,  {' ',' ','6','"',0} },
{0x25,  {' ',' ','5','"',0} },
{0x28,  {' ',' ','4','"',0} },
{0x2B,  {' ','3','"','2',0} },
{0x2C,  {' ',' ','3','"',0} },
{0x2D,  {' ','2','"','5',0} },
{0x30,  {' ',' ','2','"',0} },
{0x33,  {' ','1','"','6',0} },
{0x34,  {' ','1','"','5',0} },
{0x35,  {' ','1','"','3',0} },
{0x38,  {' ',' ','1','"',0} },
{0x3B,  {' ','0','"','8',0} },
{0x3C,  {' ','0','"','7',0} },
{0x3D,  {' ','0','"','6',0} },
{0x40,  {' ','0','"','5',0} },
{0x43,  {' ','0','"','4',0} },
{0x44,  {' ','0','"','3',0} },
{0x45,  {' ','0','"','3',0} },
{0x48,  {' ',' ',' ','4',0} },
{0x4B,  {' ',' ',' ','5',0} },
{0x4C,  {' ',' ',' ','6',0} },
{0x4D,  {' ',' ',' ','6',0} },
{0x50,  {' ',' ',' ','8',0} },
{0x53,  {' ',' ','1','0',0} },
{0x54,  {' ',' ','1','0',0} },
{0x55,  {' ',' ','1','3',0} },
{0x58,  {' ',' ','1','5',0} },
{0x5B,  {' ',' ','2','0',0} },
{0x5C,  {' ',' ','2','0',0} },
{0x5D,  {' ',' ','2','5',0} },
{0x60,  {' ',' ','3','0',0} },
{0x63,  {' ',' ','4','0',0} },
{0x64,  {' ',' ','4','5',0} },
{0x65,  {' ',' ','5','0',0} },
{0x68,  {' ',' ','6','0',0} },
{0x6B,  {' ',' ','8','0',0} },
{0x6C,  {' ',' ','9','0',0} },
{0x6D,  {' ','1','0','0',0} },
{0x70,  {' ','1','2','5',0} },
{0x73,  {' ','1','6','0',0} },
{0x74,  {' ','1','8','0',0} },
{0x75,  {' ','2','0','0',0} },
{0x78,  {' ','2','5','0',0} },
{0x7B,  {' ','3','2','0',0} },
{0x7C,  {' ','3','5','0',0} },
{0x7D,  {' ','4','0','0',0} },
{0x80,  {' ','5','0','0',0} },
{0x83,  {' ','6','4','0',0} },
{0x84,  {' ','7','5','0',0} },
{0x85,  {' ','8','0','0',0} },
{0x88,  {'1','0','0','0',0} },
{0x8B,  {'1','2','5','0',0} },
{0x8C,  {'1','5','0','0',0} },
{0x8D,  {'1','6','0','0',0} },
{0x90,  {'2','0','0','0',0} },
{0x93,  {'2','5','0','0',0} },
{0x94,  {'3','0','0','0',0} },
{0x95,  {'3','2','0','0',0} },
{0x98,  {'4','0','0','0',0} },
{0x9B,  {'5','0','0','0',0} },
{0x9C,  {'6','0','0','0',0} },
{0x9D,  {'6','4','0','0',0} },
{0xA0,  {'8','0','0','0',0} }
};

本質的に私が最終的に探しているのはこれです。16進値は、カメラのシャッター速度を表します。六角ハンバーの右側のデータは、カメラのディスプレイに1文字で表示された場合のシャッタースピードの値です。(これはマトリックスと呼ぶことができると思いますか?)デバイスを接続し、カメラの露出を設定したい。16進値「0x38」で表される1秒間の露出を言います。これは出発点のリファレンスです。

5枚撮りたいです。そのうちの1つは「0x38」で、他の4つのうち2つは、この前の2つの露出であり、他の2つは、この後の2つの露出です。したがって、5つの16進値すべてを順番に配列に入れて、「0x38」を検索し、次に2つを検索し、次に1つを検索し、次に参照を検索し、次に1つを上に、次に2つを上に検索します。

4

1 に答える 1

2

これは配列初期化子です:

例:

int  val[] = {1, 2, 3, 4}; // initializes an array of ints.

構造体がある場合、同じ構文が機能します。

struct X
{
    int x;
    int y;
};

X   valX[] = { {1,2}, {3,4}, {5,6}}; // initializes an array of X
                                     // first X is {1,2}
                                     // second X is {3,4}
                                     // etc

あなたの場合、構造は次のとおりです。

ValueTitle<VT_SHSPEED, VT_SHSPEED_TEXT_LEN>

しかし、概念は同じです。

于 2012-11-03T18:52:25.907 に答える