remap.c

来自「EASYARM2200教学实验平台上的存储器映射」· C语言 代码 · 共 39 行

C
39
字号
/****************************************************************************
* 文件名:REMAP.C
* 功能:将存储器重映射到片内RAM(0x40000000~0x4000003F),然后更改0x40000000~
*      0x4000003F的内容。
* 说明:观察0x00000000~0x0000003F地址上的数据有何变化
****************************************************************************/
#include  "config.h"

#define  VECTOR_RAM       	((unsigned char *) 0x40000000)

/****************************************************************************
* 名称:main()
* 功能:存储器重映射。
****************************************************************************/
int  main(void)
{  uint8  i;
   uint8  *addr;

   MEMMAP = 0x02;			// 中断向量从静态RAM重映射(用户RAM模式)

   addr = VECTOR_RAM;
   for(i=0; i<64; i++)		// 用0x55填充0x40000000~0x4000003F
   {  *addr = 0x55;
      addr++;
   }
   
   addr = VECTOR_RAM;
   for(i=0; i<64; i++)		// 用0xAA填充0x40000000~0x4000003F
   {  *addr = 0xAA;
      addr++;
   }

   MEMMAP = 0x00;			// 中断向量从Boot Block重映射(Boot装载程序模式)
   
   while(1);
   return(0);
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?