#include "exsys_msgs.h" // prototypes for halt functions #include "exsys_ahbmap.h" // address map defines #include <zsp_util.h> // THIS IS ESSENTIAL FOR INTERRUPTS CASE #include "usr_zsp_util.h" #include "functions.h" #include "c_print.h" void main(){ unsigned int i; c_printf("test the memory space of DMEM\n"); for(i=DMEM_BASE; i <= 0x0013FFFF;i=i+4){ reg32_write(i, 0x12345678); reg32_check(i, 0x12345678); } CASE_PASS }修改上述代码使之能够验证内存空间
时间: 2024-02-23 15:01:16 浏览: 77
以下是修改后的代码:
```c
#include "exsys_msgs.h"
#include "exsys_ahbmap.h"
#include <zsp_util.h>
#include "usr_zsp_util.h"
#include "functions.h"
#include "c_print.h"
#define DMEM_BASE 0x00100000 // define DMEM_BASE constant
void main(){
unsigned int i;
c_printf("Testing the memory space of DMEM\n");
for(i = DMEM_BASE; i <= 0x0013FFFF; i += 4){
reg32_write(i, 0x12345678);
reg32_check(i, 0x12345678);
}
CASE_PASS;
}
```
这样就定义了一个 `DMEM_BASE` 常量,并在循环中使用它来测试内存空间。循环从 `DMEM_BASE` 开始,一直到 `0x0013FFFF`,每次增加 4 个字节,然后写入和检查一个固定的值。
阅读全文