System 0x36


PM領域読込み


【機能】

 パーマネントデータメモリ(不揮発性のメモリ)領域のデータを読込みます。

【関数】

 int PmRead( int sa,short *data, int size )
 {
   return trapa_svc( 0x36, pid, sa, data, size );
 }

【入力】

 sa 読込み開始アドレス 0x0e0000〜0x0ffffe(偶数番地を指定)
 data 読込みデータ 読込みデータを格納する領域の先頭アドレス
(偶数番地を指定)
 size 読込みデータサイズ 読込みデータのワード数(16ビット単位)

【出力】

リターンコード OK 正常終了
ERR_PARAM パラメータエラー

【解説】

 パーマネントデータメモリ(フラッシュメモリ)領域は、64キロバイトを単位としたセクタとして管理されています。本装置はパーマネントデータメモリを2セクタ分実装しています。
 本ファンクションは、パーマネントデータメモリ内の指定されたアドレスからデータを読込み、指定された格納領域に格納します。

 読込みはワード(16ビット)単位で行なわれます。

 読込み開始アドレスが範囲外の場合、また読込み領域がセクタ範囲を超える場合(読込みアドレス+読込みデータのワード数)は、パラメータエラーを返します。
 第1セクタのセクタ範囲は0x0e0000〜0x0effff、第2セクタのセクタ範囲は0x0f0000〜0x0fffffです。
 また、読込み開始アドレス、格納アドレスが2バイト境界にない場合、格納アドレスがNULLの場合、読込みデータのワード数が0の場合、パラメータエラーを返します。

【関連項目】

 PM領域消去 PM領域書込