GR-SAKURAはRXマイコンを使った小型マイコンボードです。
特にこのボードに依存した話ではない気がしますが、RX63N(R5F563NBDDFP)で外部バスを利用する場合の設定をメモです。
設定内容は
16ビットバス(PE7-0 : PD7-0をD15-0に割り当て)
WRはP50、RDはP52
CS3空間を利用 CS3はPC4
アドレスバスはA17だけ出力
LCDをメモリマップドI/Oで接続するような用途です
あくまで個人的なメモなのでご利用は自己責任で…
設定
SYSTEM.SYSCR0.WORD = 0x5a03; //ROM enable EXBus enable
MPC.PWPR.BIT.B0WI = 0; //PFSWE write enable
MPC.PWPR.BIT.PFSWE = 1; //PFS write enableMPC.PFCSE.BIT.CS3E = 1; //CS3 enable
MPC.PFCSS0.BIT.CS3S = 2; //PC4=CS3
MPC.PFAOE1.BIT.A17E = 1; //A17 enable
MPC.PFBCR0.BIT.DHE = 1; //D8-D15(PE0-PE7)enableBSC.CS3CR.WORD = 0x0001 | (0 << 4); //16bitBUS
BSC.CS3MOD.WORD = 0x8001;
BSC.CS3WCR1.LONG = 0x01010101;
BSC.CS3WCR2.LONG = 0x11110111;
BSC.CS3REC.WORD = 0x0000;
データ出力の例
*(volatile unsigned short*)0x05000000 = data1;
*(volatile unsigned short*)0x05020000 = data2;
アドレスが0x05000000ならA17=0、0x05020000ならA17=1です。
速度ですが、GR-SAKURAでフルに回した場合12MHzぐらいの周期で書き込み動作が行われました(実験値)。
こちらのソースを参考にさせていただきました。(オリジナルは8ビットバス)