|
惊奇发现,在这个BSP的option.h里有如下定义:
#define _RAM_STARTADDRESS 0x30000000
#define _ISR_STARTADDRESS 0x31ffff00
#define _MMUTT_STARTADDRESS 0x31ff8000
#define _STACK_BASEADDRESS 0x31ff8000
#define HEAPEND 0x31ff0000
#define _RAM_ENDADDRESS 0x31ffffff
#define VA_BASE 0x8C000000 // defined in OEMAddressTable
#define VIRTUAL_TO_PHYSICAL(va) ((va) - VA_BASE + _RAM_STARTADDRESS)
是不是根据#define VIRTUAL_TO_PHYSICAL(va) ((va) - VA_BASE + _RAM_STARTADDRESS)来进行物理地址到虚拟地址的转换?
即va=PHYSICAL_ADRESSA+VA_BASE-_RAM_STARTADDRESS,然后在程序里直接访问va。
我这么做了,怎么不成功呢? |
|