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

📄 ads1100.asm

📁 用89C51控制16位AD芯片ADS1100汇编程序
💻 ASM
字号:
;ADS1100单端输入,损失一位数据,只能做15位
I2CRBUF		EQU	18H
I2CWBUF		EQU	18H
SCL		BIT	P1.1
SDA		BIT	P1.2
;====================================
START:		SETB	SDA
		SETB	SCL
		NOP
		NOP
		CLR	SDA
		CLR	SCL
		RET
STOP:		CLR	SDA
		SETB	SCL
		NOP
		NOP
		SETB	SDA
;		CLR	SCL
		RET
;====================================
I2CBYTEOUT:	MOV	R7,#08H
I2CW1:		RLC	A
		MOV	SDA,C
		NOP
		SETB	SCL
		NOP
		CLR	SCL
		DJNZ	R7,I2CW1
		SETB	SDA
		SETB	SCL
		JB	SDA,$
		CLR	SCL
		RET
;R0中:总复位:00h,06h;运行:90h,9ch
ADW:
		ACALL	START
		MOV	R5,#02H
		MOV	R0,#I2CWBUF
ADW1:		MOV	A,@R0
		ACALL	I2CBYTEOUT
		INC	R0
		DJNZ	R5,ADW1
		CLR	SCL
		ACALL	STOP
		RET
;====================================
I2CBYTEIN:	MOV	R7,#08H
I2CR1:		SETB	SDA
		SETB	SCL
		NOP
		MOV	C,SDA
		RLC	A
		CLR	SCL
		DJNZ	R7,I2CR1
		RET
;=================================
ADR:		ACALL	START
		MOV	A,#91H
		ACALL	I2CBYTEOUT
		MOV	R5,#03H
		MOV	R0,#I2CRBUF
ADR1:		ACALL	I2CBYTEIN
		MOV	@R0,A
		INC	R0
		MOV	A,R5
		XRL	A,#01H
		JZ	ADR2
		CLR	SDA
		SETB	SCL
		NOP
		CLR	SCL
		DJNZ	R5,ADR1
ADR2:		ACALL	STOP
		DEC	R0
		MOV	A,@R0
		JB	ACC.7,ADR		
		RET
;=================================
AD1100WORK:	
                mov     r0,#i2cwbuf 
                mov     @r0,#00h
                inc     r0
                mov     @r0,#06h
                acall   adw
                
AD1100:         mov     r0,#i2cwbuf
                mov     @r0,#090h
                inc     r0
                mov     @r0,#09Ch
                acall   adw

                acall   adr
		JMP	AD1100
;====================================		
		END

⌨️ 快捷键说明

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