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

📄 com_a.asm

📁 初学者首选各种实验原代码
💻 ASM
字号:

			NAME COM_A    ;模块名
;定义重定位段
?PR?Data_Send?COM_A   	SEGMENT CODE
?PR?Data_Recv?COM_A   	SEGMENT CODE
?PR?Delay?COM_A   	SEGMENT CODE

;对外声明4个不可重入函数
        		PUBLIC Data_Send
			PUBLIC Data_Recv
			PUBLIC Delay

;子程序
;-------------------------------------------------------------------------
        		RSEG ?PR?Data_Send?COM_A
Data_Send:
			PUSH ACC
			PUSH 01H
			MOV R1,#8
			MOV A,R7
	

			CLR P3.4
			LCALL Delay
			LCALL Delay
LOOP:			RRC A
	 		MOV P3.4,C
	 		LCALL Delay
			LCALL Delay
	 		DJNZ R1,LOOP
	 	
	 		SETB P3.4
	 		LCALL Delay
	 		LCALL Delay
			POP 01H
			POP ACC
			RET

;-------------------------------------------------------------------------
		      	RSEG ?PR?Delay?COM_A
Delay:			PUSH 00H
			PUSH 01H
			MOV R0,#1	
LOOP2:			MOV R1,#12     //12MHZ R1=#12
LOOP1:			NOP
		        DJNZ R1,LOOP1
			DJNZ R0,LOOP2
			POP 01H
			POP 00H
			RET

;-------------------------------------------------------------------------
			RSEG ?PR?Data_Recv?COM_A
Data_Recv:		PUSH ACC
			PUSH PSW
			PUSH 00H
			MOV R0,#8
Data_Recv1:		JB P3.5,Data_Recv1
			LCALL Delay
			JB P3.5,Data_Recv1
			LCALL Delay
			
LOOP3:			LCALL Delay
			MOV C,P3.5
			RRC A
			LCALL Delay		
			DJNZ R0,LOOP3
			MOV R7,A
EXT:			POP 00H
			POP PSW
			POP ACC
			RET

			END

⌨️ 快捷键说明

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