system.asm

来自「电子词典的设计开发」· 汇编 代码 · 共 71 行

ASM
71
字号
.INCLUDE hardware.inc
.RAM
.DATA
    C_Address: .DW 0x00bf,0x0086,0x00db,0x00cf, 0x00e6,0x00ed,0x00fc,0x0087,0x00ff,0x00ef;//'0''1''2''3''4''5''6''7''8''9'的代码
    C_Dig:     .DW 0x0100,0x0200,0x0400,0x0800,0x1000,0x2000,0x4000;//选中LED管
.EXTERNAL _KeycodeLED
.EXTERNAL _KeyDownTimes  
.CODE

//============================================================================================
//函数: SP_Init_IOA()
//语法:void SP_Init_IOA(int A,int B,int C)
//描述:初始化A口
//参数:A,方向向量单元,B数据单元,C属性向量单元
//返回:无
//=============================================================================================
.PUBLIC _SP_Init_IOB;                //初始化A口为同相高电平输出口
_SP_Init_IOB: .PROC
   	r1 = 0x0400;      
    [P_IOB_Attrib] = r1;    
    [P_IOB_Dir] = r1;
    [P_IOB_Data] = r1;
    RETF
.ENDP;
//============================================================================================
//函数: SP_Init_IOB()
//语法:void SP_Init_IOB(int A,int B,int C)
//描述:初始化B口
//参数:A,方向向量单元,B数据单元,C属性向量单元
//返回:无
//=============================================================================================
.PUBLIC _SP_Init_IOA;              
_SP_Init_IOA: .PROC
   	r1 = 0x00f0;      
    [P_IOA_Attrib] = r1;    
    [P_IOA_Dir] = r1;
    [P_IOA_Data] = r1;
    RETF
.ENDP;


//============================================================================================
//函数: SP_INT_128Hz()
//语法:void SP_INT_128Hz()
//描述:TMB2选择128Hz
//参数:无
//返回:无
//=============================================================================================
.public _SP_INT_128Hz;
 _SP_INT_128Hz:
     r1 = 0x0000;
     [P_TimeBase_Setup]=r1        // TMB2选择128Hz //TMB1选择8Hz,但不起作用 
     r1 = 0x0001 				  //开中断IRQ6_TMB2
   	 [P_INT_Ctrl]= r1 
	 INT IRQ
     RETF;


//============================================================================================
//函数: F_ClearWatchdog()
//语法:void F_ClearWatchdog(void)
//描述:清看门狗
//参数:无
//返回:无
//============================================================================================ 
.PUBLIC _F_ClearWatchdog;
_F_ClearWatchdog: .PROC
    r1 = 1;
    [P_Watchdog_Clear] = r1;
    RETF;
.ENDP

⌨️ 快捷键说明

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