📄 evmlogic.c
字号:
/*
* Copyright (C) 2001, Spectrum Digital, Inc. All Rights Reserved.
*/
#include "5509.h"
#include "util.h"
#define LATCH_ADDR ((volatile unsigned *)0x401000)
#define DISPLAY_ADDR0 ((volatile unsigned *)0x401800)
#define DISPLAY_ADDR1 ((volatile unsigned *)0x401808)
#define FLASH_BASE 0x200000
void Logic_SetPage(unsigned int highaddr)
{
*LATCH_ADDR = highaddr;
}
unsigned short Logic_ReadFlash(unsigned long addr)
{
*LATCH_ADDR = (addr >> 12 & 0xff);
return *((unsigned short *)(FLASH_BASE + (addr & 0x0fff)));
}
void Logic_WriteFlash(unsigned long addr, unsigned int data)
{
*LATCH_ADDR = (addr >> 12 & 0xff);
*((unsigned short *)(FLASH_BASE + (addr & 0x0fff))) = data;
}
void Logic_WriteDisplay(int a0, unsigned short displaydata)
{
if (a0 != 0)
*DISPLAY_ADDR1 = displaydata;
else
*DISPLAY_ADDR0 = displaydata;
// SWDelayUsec(20);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -