⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 c3.c

📁 C language fast function point sample code example
💻 C
字号:
#include <stdio.h>
#include <absacc.h>

//代刚ノ fnct
void fnct0(void)
{
	volatile char i;
	i=0;
}
void fnct1(void)
{
	volatile char i;
	i=1;
}
void fnct2(void)
{
	volatile char i;
	i=2;
}
void JmpTable(void)
{
	fnct0();
	fnct1();
	fnct2();
}
//ljmp instruction
typedef struct {
		unsigned char OpCode;
		unsigned int  Addr;
		}LJMP_INST;
//										   
// von Neumann memory
// X: 0xE000~0xFFFF
//
// or  xdata LJMP_INST LjmpTable _at_ JmpTable;
//		
//
xdata LJMP_INST LjmpTable _at_ 0xE000;

#define XXXFnct	((void (code *) (void)) 0xE000)
LJMP_INST i;
//
// main()
//
void main(void)
{

  	// init

	LjmpTable.OpCode = 0x2;			//ljmp-opcode

	LjmpTable.Addr	 = (int)fnct2; 	//switch2 fnct2
	XXXFnct();

	LjmpTable.Addr	 = (int)fnct1;	//switch2 fnct1
	XXXFnct();

	LjmpTable.Addr	 = (int)fnct0;	//switch2 fnct0
	XXXFnct();

	
	while(1);

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -