wrtmcp.asm

来自「基于ARM[LPC2148]SPI的串口液晶显示器6059B的显示程序」· 汇编 代码 · 共 55 行

ASM
55
字号
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;C函数原形:	void wrtmcp(uchar ins,uchar dat);
;输入:		ins:指令
;		dat:数据	
;输出:		无
;创建日期:	2006年5月18号
;编者:		周伟
;描述:		根据ins和dat决定的功能操作数电位器mcp420XX
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;周伟 于 2007年4月20日修改过
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
SCK    equ     P1.4
SI     equ     P1.5
CS     equ     P3.6
;SHDN   equ     P1.7
?PR?_WRTMCP?WRTMCP      SEGMENT CODE 
PUBLIC	_WRTMCP
RSEG  ?PR?_WRTMCP?WRTMCP
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
_WRTMCP:   
	        ;SETB	SHDN;
		NOP;
		NOP;
		NOP;
		CLR	CS
		MOV     A,     R7
		CLR SCK 
                CALL WR8
		MOV     A,     R5
                CLR SCK
		CALL WR8
		NOP;
		SETB 	CS;
		NOP;
		NOP;
		NOP;
		;CLR	SHDN;

		
                RET
   WR8:     
                MOV  R0,#08H
   WR1:         NOP;
		NOP;
   		CLR SCK		
                RLC    A
                MOV    SI, C
                SETB   SCK
		NOP
		NOP
                DJNZ   R0  , WR1
                CLR SI
                RET
		END

⌨️ 快捷键说明

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