74ls164.asm

来自「由SPCE061A控制的74HC164的驱动程序,一般用于串转并」· 汇编 代码 · 共 44 行

ASM
44
字号
//======================================================
// 文件名称:	74ls164.asm
// 功能描述:	74ls164实现串并转换 
// 维护记录:	2005-9-30	v1.0
// 出口参数:	r1 - 待转换的串并转换数值
//======================================================

.INCLUDE hardware.inc
.DEFINE		KEY_CLK_H		0x8000
.DEFINE 	KEY_DATA_H		0x4000

.DEFINE		Key_CLK			0x8000      //SDA       	(IOA15)
.DEFINE		Key_DAT			0x4000      //SCK	     	(IOA14)

.CODE
.PUBLIC _Datasend
_Datasend:
		push r2,r3 to [sp]
Key_Data_send:
		r2 = 16
		r3 = [P_IOA_Buffer]
Key_D_S_loop:
		test r1,0x0001
		jz Key_D_S_0
		r3|=KEY_DATA_H
		jmp Key_D_S_Clk
Key_D_S_0:
		r3&=~KEY_DATA_H
Key_D_S_Clk:
		[P_IOA_Data] = r3
		r3|=KEY_CLK_H
		[P_IOA_Data] = r3
		r3&=~KEY_CLK_H
		[P_IOA_Data] = r3
		r1 = r1 lsr 1
		r2-=1
		jnz Key_D_S_loop
		r3|=KEY_DATA_H
		[P_IOA_Data] = r3

		pop r2,r3 from [sp]
		retf
		

⌨️ 快捷键说明

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