RDBRx

RDBRx( Rx Data Buffer Register )はSerial Peripheral Interfaceの受信データを格納します。

SPIが2系統あるため、RDBR0, RDBR1の2本が用意されています。

レジスタの構造

このレジスタは16ビット整数レジスタです。初期値は0x0000です。

シフトレジスタに入ってきたデータは受信が完了するとRDBRxにロードされます。データがロードされるとRDBRxは空でなくなり、データをソフトウェアかDMAで読むと再び空になります。

RDBRxが空になる前に次のデータを受信するとオーバーフローエラーが発生します。詳しくはSPISTxを参照してください。

このレジスタは読み出し専用です。

API

C/C++言語用に以下のインターフェースが用意されています。宣言はsysreg.hで行われています。RDBRxにアクセスする前には必ずIOPGにSPIx_Controller_Pageを設定してください。

RDBR0の場合は以下のとおりです。

// #include <sysreg.h>
// #include <def2191.h>

sysreg_write(sysreg_IOPG, SPI0_Controller_Page)   // SPI0ページに設定

変数 = io_space_read(RDBR0)       // RDBR0の値を取得

RDBR1の場合は以下のとおりです。

// #include <sysreg.h>
// #include <def2191.h>

sysreg_write(sysreg_IOPG, SPI1_Controller_Page)   // SPI1ページに設定

変数 = io_space_read(RDBR1)       // RDBR1の値を取得

参照情報

項目 マニュアルのページ等
説明 HR B-59
2191空挺団 | プログラム | EZ-KIT | こぼれ話 | アーキテクチャー | 命令 | レジスタ | DSP掲示板 | FAQ |