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

📄 read_rom.asm

📁 spce061单片机的一些程序!C语言和汇编语言都有
💻 ASM
字号:
////////////////////////////////////////////////////////////////// 
////////////////////////////////////////////////////////////////// 
// Directly Driver.lib  Ver1.0
// Writen by: Eagle
// Last modified date: 
// 2002/05/10: first version
// Hardware description  (M27C4001)
// PA0-PA15===A0-A15 ,  PB0-PB3===A16-A18/A19
// PB4===-G,PB5===-E ,  PB8-PB15===D0-D7
// Destory  PB6-PB7 
////////////////////////////////////////////////////////////////// 
////////////////////////////////////////////////////////////////// 
.include	hardware.inc 
.CODE
.public F_Initial_Rom_IO;
.public _Initial_Rom_IO;
_Initial_Rom_IO:   .PROC
F_Initial_Rom_IO:  
    PUSH R1,R1 TO [SP];   
    R1 = 0xFFFF;					//
	[P_IOA_Dir] = R1;				// Set port IOA output
	[P_IOA_Attrib] = R1;			// 
	[P_IOA_Data] = R1;				
	
    R1 = 0x0F00;					// 设置PORTB,低8位为输入口(数据),
	[P_IOB_Dir] = R1;				// Set port IOB output
	[P_IOB_Attrib] = R1;			// 
    R1 = 0x00FF;	
	[P_IOB_Data] = R1;				//
    POP R1,R1 FROM [SP];
    RETF;
    .ENDP
//**************************************************
//Read_Byte函数
//Name:汇编 F_Read_Byte_DRam,C语言Read_Byte_DRam
//Funcation: Read_Byte To Memory
//Input:      Memory Address 64K
//C语言M_Address或实参
//Destory:
//Reture:汇编R1,C语言MData_Buffer所读数据
//***************************************************

.public F_Read_Byte_Rom;      
.public _Read_Byte_Rom;
F_Read_Byte_Rom:  .PROC
        [SP--] = R2
        [SP--] = R1
        CALL _Read_Byte_Rom
        SP+ = 2
        RETF;
	    .ENDP   
_Read_Byte_Rom:	.PROC
    	PUSH BP,BP TO [SP];
        BP = SP + 1;
		PUSH R2,R4 TO [SP];	    	    

	    R1 = [BP+4];					//	
        R1 = R1 LSL 4;
        R1 = R1 LSL 4;	
        R1& = 0x0F00;
		[P_IOB_Data] = R1;	
        
        R1 = [BP+3];					//		
		[P_IOA_Data] = R1;	
	    
	    R2 = [P_IOB_Data] 
        R2& = 0x00FF
        R1+ = 1; 					//		
		[P_IOA_Data] = R1;	
             
        R3 = [P_IOB_Data]
        R1 = R3 LSL 4;
        R1 = R1 LSL 4;
        R1 = R1 + R2;
       	POP R2,R4 FROM [SP];
       	POP BP,BP FROM [SP];
        RETF;
	    .ENDP     

⌨️ 快捷键说明

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