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

📄 switchoutput.s

📁 项目是为日本瑞萨工作所做的BAKE炉温控系统 整个文件夹包括设计文档
💻 S
字号:
	.module SwitchOutput.c
	.area text
	.dbfile SwitchOutput.c
	.dbfunc e SwitchOutput_Init _SwitchOutput_Init fV
_SwitchOutput_Init::
	.dbline -1
	.dbline 18
; //[SwitchOutput.c]开关驱动-------------------------------------------------*
; //本文件包含:                                                              *  
; //   (1)SwitchOutput_Init:定义控制开关的MCU的I/O引脚为输出                 *
; //   (2)SwitchOutput:将某引脚模拟为开关的开闭                              *
; //硬件连接:                                                                *
; //   (1)本处的开关是接触器,由MCU的I/O引脚控制                              *
; //   (2)控制引脚=高电平时,模拟开关的闭状态;反之,模拟开关的开状态;          *
; //-------------------------------------------------------------------------*
; 
; #include"SwitchOutput.h"   //该头文件中包含了开关控制引脚定义和相关函数声明
; 
; //SwitchOutput_Init:定义控制开关的MCU引脚为输出----------------------------*
; //功能:定义控制开关的MCU引脚为输出,并模拟开关初始为开                      *
; //参数:无                                                                 *
; //返回:无                                                                 *
; //-------------------------------------------------------------------------*
; void SwitchOutput_Init(void)
; {
	.dbline 19
;   SwitchOutput_D=0xFF;       //令开关输出端口为输出
	lda #-1
	sta 0x4
	.dbline 20
;   SwitchOutput_P=0x00;       //初始输出全为低,模拟开关的开状态
	clr 0
	.dbline -2
L27:
	.dbline 0 ; func end
	rts
	.dbend
	.dbfunc e SwitchOutput _SwitchOutput fV
;         Status -> 3,X
;          PinNo -> 2,X
_SwitchOutput::
	.dbline -1
	tsx
	.dbline 30
; }
; 
; //SwitchOutput:驱动开关"开"、"闭"------------------------------------------*
; //功能:通过给某引脚设定状态来模拟开关的开闭                                *
; //参数:PinNo=需设定状态的引脚(0~7)                                         *
; //     Status=Open,开;Status=Close,闭                                      *
; //返回:无                                                                  *
; //-------------------------------------------------------------------------* 
; void SwitchOutput(INT8U PinNo,INT8U Status)
; {
	.dbline 31
;   if(Status==0)
	lda 3,X
	bne L29
	.dbline 32
;     SwitchOutput_P &=~(1<<PinNo);      //开关“开” 
	mov #1,*__r0
	lda 2,X
	and #7
	beq X1
X0:
	lsl *__r0
	dbnza X0
X1:
	com *__r0
	lda 0
	and *__r0
	sta 0
	bra L30
L29:
	.dbline 34
	mov #1,*__r0
	lda 2,X
	and #7
	beq X3
X2:
	lsl *__r0
	dbnza X2
X3:
	lda 0
	ora *__r0
	sta 0
L30:
	.dbline -2
L28:
	.dbline 0 ; func end
	rts
	.dbsym l Status 3 c
	.dbsym l PinNo 2 c
	.dbend

⌨️ 快捷键说明

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