RDBRx( Rx Data Buffer Register Shadow )はSerial Peripheral Interfaceの受信データを格納します。
SPIが2系統あるため、RDBRS0, RDBRS1の2本が用意されています。
このレジスタは16ビット整数レジスタです。初期値は0x0000です。
RDBRSxには常にRDBRxと同じデータがロードされます。RDBRxの値を読み込むとSPIデバイス内部の状態が変化し、SPISTxの値が変化します。しかし、RDBRSxを読んでもこのような副作用はおきません。
RDBRSxは読みとり専用です。
C/C++言語用に以下のインターフェースが用意されています。宣言はsysreg.hで行われています。RDBRSxにアクセスする前には必ずIOPGにSPIx_Controller_Pageを設定してください。
RDBR0の場合は以下のとおりです。
// #include <sysreg.h> // #include <def2191.h> sysreg_write(sysreg_IOPG, SPI0_Controller_Page) // SPI0ページに設定 変数 = io_space_read(RDBRS0) // RDBRS0の値を取得
RDBR1の場合は以下のとおりです。
// #include <sysreg.h> // #include <def2191.h> sysreg_write(sysreg_IOPG, SPI1_Controller_Page) // SPI1ページに設定 変数 = io_space_read(RDBRS1) // RDBRS1の値を取得
項目 | マニュアルのページ等 |
---|---|
説明 | HR B-60 |