wdac0.asm

来自「C8051F系列单片机外围电路功能模块程序」· 汇编 代码 · 共 28 行

ASM
28
字号
;参考程序A.:	WDAC0.ASM     程序产生方波, DAC输出更新发生在写DAC0H时
$include (c8051f020.inc)                    // SFR declarations
ORG		0
MAIN:MOV		WDTCN,#0deH   	;关看门狗
	 MOV		WDTCN,#0adH
	 LCALL	DAC_Init	  	;初始化D/A
LOOP:MOV		DAC0L,#0f0H	   ;设置待转换的值并启动D/A转换
	 MOV		DAC0H,#0fH     ;出现高电平
	LCALL	Delay
	MOV		DAC0L,#00H		;设置待转换的值并启动D/A转换
	MOV		DAC0H,#0H       ;出现低电平
	LCALL	Delay
	LJMP	LOOP
	RET
DAC_Init: ;初始化D/A
	MOV	 REF0CN,#03H	;内部偏压发生器和电压基准缓冲器工作,基准从VREF引脚输出
	ORL	 DAC0CN,#80H		;DAC0允许,DAC输出更新发生在写DAC0H时
	RET
	Delay: ;延时子程序
    MOV   R7, #08h			
Delay1:MOV   R6, #80h
Delay0: MOV   R5, #00h
        DJNZ  R5, $
        DJNZ  R6, Delay0
        DJNZ  R7, Delay1
	    RET
	    END

⌨️ 快捷键说明

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