NEC的8位單片機有很多型號具有內部擴展RAM和額外代碼段,在IAR中如何使用呢,一直沒有資料說明,特將它整理后放于此文。
擴展RAM:
變量申明方法如下:
#pragma dataseg=IXRAM /*use external RAM*/
__no_init unsigned char test1[10]; //__no_init 不能少
__no_init unsigned char test2[20]; //__no_init 不能少
__no_init unsigned char test3[30]; //__no_init 不能少
__no_init unsigned char test4[40]; //__no_init 不能少
#pragma dataseg=default
在主程序的開始還需要將IMS和IXS初始化一下,必須先設置IMS再設置IXS,如下:
void main( void )
{
DI( ); //關閉中斷
IMS=0xCC;
IXS=0x00;
//接下來就可以以正常處理RAM的方法使用擴展RAM了。
}
在IAR中使用NEC的BANK段:
按下圖所示,將Code model按下圖選擇,并查看芯片手冊,將BANK寄存器地址填入Reg Address中就可以了