重复使用这种方式可将DSP每个外设寄存器文件配置到特定的寄存器空间中去。外设寄存器存储空间地址是在链接命令文件(linker command)中指定的,例如F2812的SCI-A寄存器空间地址是从0x7050开始的,因此寄存器文件结构体变量SciaRegs被分配到从0x7050开始的空间中,空间分配是在命令文件(.cmd)中定义的,如下面代码所示:
/********************************************************************
* Memory linker .cmd file
* Assign the SCI register-file structures to the corresponding memory
********************************************************************/
MEMORY
{
...
PAGE 1:
SCIA : origin = 0x007050, length = 0x000010 /* SCI-A registers */
SCIB : origin = 0x007750, length = 0x000010 /* SCI-B registers */
...
}
SECTIONS
{
...
SciaRegsFile : > SCIA, PAGE = 1
ScibRegsFile : > SCIB, PAGE = 1
...
}
|