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

📄 led.asm

📁 电压控制程序,符合各种设备需要,核心程序,IBm专属
💻 ASM
字号:
//========================================================
//	文件名称:	Led.asm
//	功能描述:	数码管显示
//	维护记录:	2005-10-17	v1.0
//========================================================
.INCLUDE hardware.inc
.DATA
    address: .dw 0x00bf,0x0086,0x00db,0x00cf, 0x00e6,0x00ed,0x00fc,0x0087,0x00ff,0x00ef;//'0''1''2''3''4''5''6''7''8''9'的代码
    Dig:     .dw 0x0100,0x0200,0x0800,0x1000,0x2000,0x4000;//选中LED管


.CODE
//============================================================================================
//汇编格式:_SP_Init_A
//实现功能:初始化A口
//参数:无
//返回值:无
//破坏寄存器:r1
//=============================================================================================
.PUBLIC _SP_Init_A;  //初始化A口为带数据缓存器的同相高电平输出口
_SP_Init_A: .PROC
    r1=0xffff;
    [P_IOA_Attrib] = r1;    
    [P_IOA_Dir] = r1;
    [P_IOA_Data] = r1;
    retf
.ENDP;
//============================================================================================
//汇编格式:_SP_Init_B
//实现功能:初始化B口
//参数:无
//返回值:无
//破坏寄存器:r1
//=============================================================================================
.PUBLIC _SP_Init_B;  
_SP_Init_B: .PROC
        
    r1 = 0x00f0;                  //低8位中,IOB0~IOB3为带下拉电阻输入,
    [P_IOB_Attrib] = r1;          //IOB4~IOB7为高电平输出      
    [P_IOB_Dir] = r1;   
    [P_IOB_Data] = r1;
    retf
.ENDP
//============================================================================================
//汇编格式:_show
//实现功能:数据显示函数
//参数:Dig,数码管位信号;led_code,显示数据
//返回值:无
//破坏寄存器:r1~r5	
//=============================================================================================
.PUBLIC _show;
_show: .PROC

    push bp to  [sp];         //弹出入口参数共两个入口参数
    bp=sp + 1   
 loop: 
    r1=[bp+3]                 //取出第一个入口参数
       
    r3=[bp+4]                 //取出第二个入口参数
       
    r2=r1+Dig;                //取LED管的片选地址    
    r2=[r2] 
    
    r4=r3+address             //取显示数据的地址 
    r4=[r4] 
    r2|=r4     
    [P_IOA_Data] = r2;        //显示数据  
    pop bp from [sp]
    retf;
 .ENDP 
//============================================================================================
//汇编格式:_F_ClearWatchdog
//实现功能:清看门狗
//参数:无
//返回值:无
//破坏寄存器:r1
//=============================================================================================
 .PUBLIC _F_ClearWatchdog;
 _F_ClearWatchdog: .PROC
     r1 = 0x0001;
     [P_Watchdog_Clear] = r1;
     RETF
     .ENDP

⌨️ 快捷键说明

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