📄 mem_accesses.c
字号:
#include "cdefBF561.h"
#include "ccblkfn.h"
#include "declarations.h"
#include <sysreg.h>
#define BUF_SIZE 1000
#define DELAY_SIZE 0x00ffffff
extern volatile unsigned short test_buffer_one[BUF_SIZE];
void Fill_Mem()
{
short i;
for(i=0; i<BUF_SIZE; i++)
{
test_buffer_one[i] = i;
}
}
void Test_Fill()
{
short testVar, j;
int i;
*pFIO0_DIR = 0xFFFF;
*pFIO1_DIR = 0xFFFF;
*pFIO2_DIR = 0xFFFF;
for(j=0; j<BUF_SIZE; j++)
{
testVar = test_buffer_one[j];
if(testVar != j)
{
//Blink LEDs one pattern to indicate failure.
//Stay in this blink loop forever.
*pFIO0_FLAG_T = 0xFFFF;
*pFIO1_FLAG_T = 0xFFFF;
*pFIO2_FLAG_T = 0xFFFF;
for(i=0; i<DELAY_SIZE; i++)
{
asm("nop;");
}
}
}
//If program reaches here, memory test passed.
//Read memory matches the fill memory.
while(1)
{
*pFIO0_FLAG_T = 0x5555;
*pFIO1_FLAG_T = 0x5555;
*pFIO2_FLAG_T = 0x5555;
for(i=0; i<DELAY_SIZE; i++)
{
asm("nop;");
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -