User manual - WK-210 MIDIインプリメンテーション
31
19.3.16 img : Parameter Set Image
Bulkでデータを転送する際には転送したいParameter Setのデータを先頭アドレスから順次16ビット単位で読
み出し、その値を以下の様式で3バイトに分解し、羅列して送ります。
変換フォーマットは上記のIndividual Parameterの転送の16ビットの場合と同じで、以下のようになります。
メモリイメージ16ビット
なお、転送するデータの長さが奇数バイトの場合の、未使用なビットフィールドは0で埋められます。
Parameter Setのパケット分割
1パケットで送ることができるParameter Setのイメージのサイズは最大128バイトであり、128バイトを越える
データを転送するときは最後のパケットを除いて必ず128バイト単位に区切られるので、受信したパケット内の
データを
Parameter Set 先頭アドレス + Packet Number × 128
に格納すればよいことになります。
Bulk Parameter Set転送時には、16ビットのイメージが3バイトに分割されて転送されますので、lenの値(len
が奇数の場合はlen + 1の値)に3/2を乗算した値がimgフィールドの長さになります。
ただし、1つのパケットで転送できるのは128バイト以下のParameter Setイメージであり、それを越える場合は
複数のパケットに分割して転送されます。
すなわちimgフィールドの最大長は128 × 3/2 = 192 バイトとなります。
また、1つのセッションで転送できるのは1つのParameter Setに限られ、複数のParameter Setを送る場合で
も、1つのパケット内に別のParameter Setのデータが混在することはありません。Parameter Setが異なればか
ならずパケットを分割します。
19.3.17 sum : Check Sum
imgフィールドの合計値に、このsumの値を加算することで下位7ビットが0になるような値を入れます。
受信側ではこれをチェックして値が正しくない場合はエラー処理(再要求など)を行います。
19.3.18 EOX : End of System Exclusive Message
(End of System Exclusive message Status = F7H)
Format: 0dddddddB 0cccccccB 000000abB
MSB: abccccccB
LSB: cdddddddB
↓
data0: 0dddddddB
data1: 0cccccccB
data2: 000000abB
Format: 0sssssssB
Format: 11110111B










