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

📄 no5.asm

📁 AVR-AT90S8535,HD8279,等开发的洁净空调专用DDC系统,包括AD/DA,PID计算等.
💻 ASM
📖 第 1 页 / 共 3 页
字号:
	
	rcall	ADC1
	cbi	porta,3
	cbi	porta,4
	cbi	porta,5
	sbi	admux,0		;admux=0则置1
	std	y+7,r16		;传开关量到 00d7
	rcall	shidu
	std	y+30,r8		;传A7L >>>  00ee
	std	y+31,r9		;传A7H >>>  00ef
	
	rcall	ADC1
	sbi	porta,3
	cbi	porta,4
	cbi	porta,5
	rcall	wendu
	std	y+32,r8		;传A8L >>>  00f0
	std	y+33,r9		;传A8H >>>  00f1
	
	rcall	ADC1
	cbi	porta,3
	sbi	porta,4
	cbi	porta,5
	rcall	shidu
	std	y+34,r8		;传A9L >>>  00f2
	std	y+35,r9		;传A9H >>>  00f3
	
	rcall	ADC1
	sbi	porta,3
	sbi	porta,4
	cbi	porta,5
	rcall	wendu
	std	y+36,r8		;传AaL >>>  00f4
	std	y+37,r9		;传AaH >>>  00f5
	
	rcall	ADC1
	cbi	porta,3
	cbi	porta,4
	sbi	porta,5
	rcall	shidu
	std	y+38,r8		;传AbL >>>  00f6
	std	y+39,r9		;传AbH >>>  00f7
	
;	rcall	ADC1
;	sbi	porta,3
;	cbi	porta,4
;	sbi	porta,5
;	std	y+40,r2		;传AcL >>>  00f8
;	std	y+41,r3		;传AcH >>>  00f9
	
	rcall	ADC1
	cbi	porta,3
	sbi	porta,4
	sbi	porta,5
	sts	$00a4,r2	;传AdL >>>  00a4
	sts	$00a5,r3	;传AdH >>>  00a5
	rcall	TEHPA		;冷凝水温度 0~100'C
	std	y+42,r8		;传AdL >>>  00fa
	std	y+43,r9		;传AdH >>>  00fb
	
	rcall	ADC1
	sbi	porta,3
	sbi	porta,4
	sbi	porta,5
	sts	$00a6,r2	;传AeL >>>  00a6
	sts	$00a7,r3	;传AeH >>>  00a7
	rcall	TEHPA		;正压       0~100Pa
	std	y+44,r8		;传AeL >>>  00fc
	std	y+45,r9		;传AeH >>>  00fd
	
	rcall	ADC1
	cbi	porta,3
	cbi	porta,4
	cbi	porta,5
	cbi	admux,0		;admux=0则置0
	sts	$00a8,r2	;传AfL >>>  00a8
	sts	$00a9,r3	;传AfH >>>  00a9
	clr	r6		;风量 0~1023 百立方
	mov	r5,r3
	mov	r4,r2
	rcall	htd3
	std	y+46,r7		;传AfL >>>  00fe
	std	y+47,r8		;传AfH >>>  00ff
	rjmp	main
	
;*********  子程序区  ********* 
;**** ADC转换子程序    R2,R3,R16
ADC1:	sbi	adcsr,6		;启动ADC
ADC2:	sbis	adcsr,adif	;转换结束 ADC中断发生跳行否则等待
	rjmp	ADC2
	in	r2,adcl		;把转换结果送r2,r3
	in	r3,adch
	clr	r16		;开关量关
	sbis	pina,2		;读开关量
	ldi	r16,$1		;开关量开
	ret
;**** 数据转换成温度  0.00~40.00 'c
WENDU:	mov	r6,r2
	mov	r7,r3
	ldi	r18,$01		;(r7,r6)*$187
	mov	r5,r18
	ldi	r18,$87
	mov	r4,r18
	rcall	mul16
	clr	r16		;四舍五入
	ldi	r18,$32
	add	r6,r18
	adc	r7,r16
	adc	r8,r16
	adc	r9,r16
	mov	r4,r6		;R8,R7,R6>>>BCD
	mov	r5,r7
	mov	r6,r8
	rcall	htd3
	ret
;**** 数据转换成湿度  10.00~90.00%
SHIDU:	mov	r6,r2
	mov	r7,r3
	ldi	r18,$03		;(r7,r6)*$30e
	mov	r5,r18
	ldi	r18,$0e
	mov	r4,r18
	rcall	mul16
	ldi	r19,$01		;四舍五入+湿度补偿10%
	ldi	r18,$86
	ldi	r16,$d2
	add	r6,r16
	adc	r7,r18
	adc	r8,r19
	clr	r16
	adc	r9,r16
	mov	r4,r6		;R8,R7,R6>>>BCD
	mov	r5,r7
	mov	r6,r8
	rcall	htd3
	ret
;**** 数据转换成温度和压力  (0.0~100.0'c  0.0~100.0Pa)
TEHPA:	mov	r6,r2
	mov	r7,r3
	clr	r5
	ldi	r18,$62		;(r7,r6)*$62
	mov	r4,r18
	rcall	mul16
	mov	r4,r6		;R8,R7,R6>>>BCD
	mov	r5,r7
	mov	r6,r8
	rcall	htd3
	ret
;**** 四字节压缩BCD码相加子程序(R15,R14,R13,R12)+(R11,R10,R9,R8)→R15,R14,R13,R12	
ADBCD:	add	R12,R8		;最低位字节相加
	mov     R20,R12
	rcall   ADAA		;在R20里进行加法十进制调整
	mov     R12,R20 	;调整后结果送回
	adc     R13,R9		;对高位字节也照此处理
	mov     R20,R13
	rcall   ADAA
	mov     R13,R20
	adc     R14,R10
	mov     R20,R14
	rcall	ADAA
	mov	R14,R20
	adc	R15,R11
	mov     R20,R15
	rcall	ADAA
	mov	R15,R20 	;最高位字节相加调整完毕
	ret
;**** BCD码相加或左移十进制调整子程序  R6,R7,R20,R22
ADAA: 	in	R7,SREG		;BCD码相加十进制调整子程序,先保存相加后的状态
	ldi	R22,$66  	   		
	add     R20,R22		;予加$66
	in	R6,SREG		;存加$66后的状态
	or	R6,R7		;将新旧两状态或起来(只用C,H两位)
	sbrs	R6,0		;若进位C置位,跳过下条指令
	subi	R20,$60		;否则减去$60
	sbrs	R6,5		;若半进位H置位,跳过下条指令
	subi	R20,6		;否则减去6
	out	SREG,R6		;恢复进位C,以保证高位字节正确相加
	ret
	
;**** 四字节压缩BCD码相减子程序(R15,R14,R13,R12)-(R11,R10,R9,R8)→R15,R14,R13,R12
SUBCD:	sub     R12,R8 	;最低位字节相减
	mov   	R20,R12
	rcall	SDAA		;在R20里进行减法十进制调整
	mov	R12,R20
	sbc	R13,R9
	mov	R20,R13
	rcall	SDAA
	mov	R13,R20
	sbc	R14,R10
	mov	R20,R14
	rcall	SDAA
	mov	R14,R20
	sbc	R15,R11
	mov	R20,R15
	rcall	SDAA
	mov	R15,R20		;最高位字节相减调整完毕并回送
	ret	
;**** 十进制减法调整子程序     R20
SDAA:	brcc	SBD1		;进位位清除,跳转
	brhc	SBD2		;半进位清除,跳转
	subi	R20,$66		;否则将差减去$66
	sec			;并恢复借位C
	ret
SBD1:	brhc	SBD3		;半进位也清除,返回(不须调整)
	subi	R20,$6		;否则将差减去6
	ret
SBD2:	subi	R20,$60		;将差减去$60
	sec 			;并恢复借位C
SBD3: 	ret	
	
;**** 定点整数乘法子程序 (R5,R4)×(R7,R6)→R9,R8,R7,R6   count=R18
MUL16:	ldi 	R18,$11		;循环右移17次
	clr	R9
	clr	R8		;积高位部分予清除
	clc			;第一次只移位
MLOP:	brcc	MUL1    	;进位位被清除,跳转
	add	R8,R4
	adc	R9,R5		;否则,被乘数加入部分积
MUL1:	ror 	R9
	ror	R8
	ror	R7
	ror	R6		;并将部分积(及乘数)带进位右移
	dec	R18
	brne	MLOP    	;相加右移16次,结束
	ret

;**** 定点整数除法子程序 R7,R6←(R9,R8,R7,R6)÷(R5,R4)   count=R18
DIV16:	ldi	R18,$10		;循环左移16次
DLOP:	lsl	R6
	rol	R7
	rol	R8
	rol	R9		;被除数算数左移一位
	brcc	DIV1		;进位清除,跳转
	sub	R8,R4
	sbc	R9,R5
	rjmp	DIV2		;否则将被除数(比除数多1位)减去除数并转记商1
DIV1: 	sub	R8,R4
	sbc	R9,R5		;相减试商
	brcc	DIV2		;进位被清除(够减),本位商为1
	add	R8,R4
	adc	R9,R5
	rjmp	DIV3		;不够减,恢复被减数,本位商为0
DIV2: 	inc	R6		;记商1 
DIV3:	dec	R18      
	brne	DLOP    	;16次循环,除法结束
	ret

;**** HEX TO BCD 子程序  R6,R5,R4→R9,R8,R7  COUNT=R10,TEMP=R19
htd3:	ldi	R19,24
	mov	R10,R19
	clr	R19
	clr	R7
	clr	R8
	clr	R9
	clc
htd31:	rol	R4
	rol	R5
	rol	R6
	rol	R7
	rol	R8
	rol	R9
	dec	R10
	brne	htd32	
	ret
htd32:	push	R10
	mov	R10,R7
	rcall	htd33
	mov	R7,R10
	mov	R10,R8
	rcall	htd33
	mov	R8,R10
	mov	R10,R9
	rcall	htd33
	mov	R9,R10
	pop	R10
	rjmp	htd31
htd33:	ldi	R19,3
	add	R19,R10
	sbrc	R19,3
	mov	R10,R19
	ldi	R19,$30
	add	R19,R10
	sbrc	R19,7
	mov	R10,R19
	ret
	
;**** BCD TO HEX 子程序	R7,R6→R5,R4    R16,R18,R19
btoh:	clr	r4
	clr	r5
	ldi	r19,$03
	ldi	r18,$e8	
	mov	r16,r7
	swap	r16
	andi	r16,$0f
	breq	btoh02
btoh01:	add	r4,r18
	adc	r5,r19
	dec	r16
	brne	btoh01
btoh02:	clr	r19
	ldi	r18,$64	
	mov	r16,r7
	andi	r16,$0f
	breq	btoh04
btoh03:	add	r4,r18		
	adc	r5,r19
	dec	r16
	brne	btoh03	
btoh04:	ldi	r18,$0a	
	mov	r16,r6
	swap	r16
	andi	r16,$0f
	breq	btoh06
btoh05:	add	r4,r18		
	adc	r5,r19
	dec	r16
	brne	btoh05
btoh06:	mov	r16,r6
	andi	r16,$0f
	add	r4,r16		
	adc	r5,r19
	ret

;**** LED数显子程序
display:sbi	portd,5		;初始化8279控制字
	cbi	portd,4
	sbi	portd,3
	ldi	r22,$90
	out	portb,r22
	nop
	sbi	portd,4
	cbi	portd,5

	lds	r17,$0061	;sram中的通道号
	cpi	r17,16
	brlo	disp0		;通道号小于16转移
	rjmp	keydis
disp0:	ldi	zh,high(label*2);0~15通道号切换
	mov	zl,r17
	lpm
	out	portb,r0
	cbi	portd,4	
	nop
	sbi	portd,4		

	ldi	yl,$e0		;Y >>>> SRAM 0X00e0
	clr	yh
	mov	r16,r17
	lsl	r16
	add	yl,r16
	ldd	r16,y+1		;千位
	swap	r16
	ldi	zl,low(label*2)
	rcall	outpd
	
	ldd	r16,y+1		;百位
	ldi	zl,low(label*2)
	cpi	r17,13
	brsh	dis0		;通道号大于等于13转移
	adiw	zl,16		;有小数点
dis0:	rcall	outpd
	
	ld	r16,y		;十位
	swap	r16
	ldi	zl,low(label*2)
	cpi	r17,13
	brlo	dis1		;通道号小于13转移
	adiw	zl,16		;有小数点
dis1:	rcall	outpd
	
	ld	r16,y		;个位
	ldi	zl,low(label*2)
	rcall	outpd	
	
	clr	r16		;指示灯
	cpi	r17,13
	brsh	dis2		;通道号大于等于13转移
	ldi	r16,32		;湿度
	sbrs	r17,0		;0/2.../10/12通道为温度
	ldi	r16,16		;温度
	rjmp	dis5
dis2:	cpi	r17,13
	brne	dis3
	sbr	r16,16		;冷凝水
dis3:	cpi	r17,14
	brne	dis4
	sbr	r16,64		;压力
dis4:	cpi	r17,15
	brne	dis5
	sbr	r16,128		;风量

dis5:	lds	r18,$00d0	;DI0 风机状态
	cpi	r18,0
	breq	dis6
	sbr	r16,2
dis6:	lds	r18,$0112	;运行模式
	cpi	r18,0
	brne	dis7
	sbr	r16,4
dis7:	lds	r18,$00d1	;DI1 报警
	cpi	r18,0
	breq	dis8
	sbr	r16,8
dis8:	lds	r18,$011b	;$011b静音
	cpi	r18,0
	breq	dis9
	sbr	r16,1	

dis9:	out	portb,r16
	cbi	portd,4
	nop
	sbi	portd,4	

	lds	r16,$0060	;显示通道是否=1锁定
	cpi	r16,0
	brne	dis11
	inc	r17
	cpi	r17,16
	brne	dis10
	clr	r17
dis10:	sts	$0061,r17
dis11:	rjmp	dis12
	
keydis:	ldi	yh,$00
	ldi	yl,$60		;y >>>> $0060
	ldd	r16,y+5
	cpi	r16,1
	brne	keydis1
	ldd	r16,y+7		;$0067
	rcall	outpd1
	ldd	r16,y+8		;$0068
	rcall	outpd1
	ldd	r16,y+9		;$0069
	rcall	outpd1
	ldd	r16,y+10	;$006a
	rcall	outpd1
	ldd	r16,y+11	;$006b
	rcall	outpd1
	rjmp	dis12

keydis1:sbi	portd,5		;初始化8279控制字
	cbi	portd,4
	sbi	portd,3
	ldi	r22,$91		;从第二位开始显示
	out	portb,r22
	nop
	sbi	portd,4
	cbi	portd,5
	ldi	zh,high(label*2)
	ldi	zl,low(label*2)
	ldd	r16,y+13	;$006d
	swap	r16		;千位
	rcall	outpd
	
	ldd	r16,y+13	;$006d
	ldd	r18,y+15	;$006f
	ldi	zl,low(label*2)
	cpi	r18,0
	brne	keydis2
	adiw	zl,16
keydis2:rcall	outpd		;百位
	ldd	r16,y+12	;$006c
	swap	r16		;十位
	ldi	zl,low(label*2)
	cpi	r18,1
	brne	keydis3
	adiw	zl,16
keydis3:rcall	outpd
	ldi	zl,low(label*2)
	ldd	r16,y+12	;$006c
	rcall	outpd		;个位
	
	ldd	r16,y+14	;$006e
	out	portb,r16	;指示灯
	cbi	portd,4
	nop
	sbi	portd,4	
	
dis12:	sbi	portd,5		;向8279传送数据结束
	ret
 
outpd: 	andi	r16,$0f
	add	zl,r16
	lpm
	out	portb,r0
	cbi	portd,4
	nop
	sbi	portd,4	
	ret
outpd1:	out	portb,r16
	cbi	portd,4
	nop
	sbi	portd,4	
	ret
;****  延时子程序  R20
;delay:	ret
	
delay:  push	r20		;2t
l0:     push	r20		;2t
l1:     push	r20		;2t
l2:     push	r20		;2t
l3:     dec	r20		;1t
        brne	l3		;1t/2t
        pop	r20		;2t
        dec	r20		;1t 
        brne	l2		;1t/2t
        pop	r20		;2t
        dec	r20		;1t 
        brne	l1		;1t/2t
        pop	r20		;2t
        dec	r20		;1t 
        brne	l0		;1T/2T
        pop	r20		;2t
        ret			;4t
;***** 参数计算子程序
cansujs1:ldi	yh,$01		;Y >>>0X0100
	ldi	yl,$00
	ldi	zh,$00		;Z >>>0X00b0
	ldi	zl,$b0
	clr	r7
	clr	r5
	ldd	r4,y+13		;I1
	ldd	r6,y+14		;D1
	add	r4,r6
	adc	r5,r7		;I1+D1
	ldi	r16,10
	add	r4,r16
	adc	r5,r7		;I1+D1+1
	ldd	r6,y+12		;P1
	rcall	mul16		;P1*(I1+D1+1)
	st	z,r6		;A1 L>>>0X00b0
	std	z+1,r7		;A1 H>>>0X00b1
	clr	r7
	clr	r5
	ldd	r4,y+14		;D1
	lsl	r4		;D1*2
	rol	r5
	ldi	r16,10
	add	r4,r16
	adc	r5,r7		;D1*2+1
	ldd	r6,y+12		;P1
	rcall	mul16		;P1*(D1*2+1)
	std	z+2,r6		;B1 L>>>0X00b2
	std	z+3,r7		;B1 H>>>0X00b3
	clr	r7
	clr	r5
	ldd	r4,y+12		;P1
	ldd	r6,y+14		;D1
	rcall	mul16		;P1*D1
	std	z+4,r6		;C1 L>>>0X00b4
	std	z+5,r7		;C1 H>>>0X00b5
	ret
	
cansujs2:ldi	yh,$01		;Y >>>0X0100
	ldi	yl,$00
	ldi	zh,$00		;Z >>>0X00b0
	ldi	zl,$b0
	clr	r7
	clr	r5
	ldd	r4,y+16		;I2
	ldd	r6,y+17		;D2
	add	r4,r6
	adc	r5,r7		;I2+D2
	ldi	r16,10
	add	r4,r16
	adc	r5,r7		;I2+D2+1
	ldd	r6,y+15		;P2
	rcall	mul16		;P2*(I2+D2+1)
	std	z+16,r6		;A2 L>>>0X00c0
	std	z+17,r7		;A2 H>>>0X00c1
	clr	r7
	clr	r5
	ldd	r4,y+17		;D2
	lsl	r4		;D2*2
	rol	r5
	ldi	r16,10
	add	r4,r16
	adc	r5,r7		;D2*2+1
	ldd	r6,y+15		;P2
	rcall	mul16		;P2*(D2*2+1)
	std	z+18,r6		;B2 L>>>0X00c2
	std	z+19,r7		;B2 H>>>0X00c3
	clr	r7
	clr	r5
	ldd	r4,y+15		;P2
	ldd	r6,y+17		;D2
	rcall	mul16		;P2*D2
	std	z+20,r6		;C2 L>>>0X00c4
	std	z+21,r7		;C2 H>>>0X00c5
	ret
	
muabc:	rcall	suhex2		;E-Es=E0
	std	y+6,r6		;E0 L
	std	y+7,r7		;E0 H
	std	y+13,r19	;E0 +-
	std	Z+2,r19		;A1*E0 +-
	ld	r4,y		;A1 L
	ldd	r5,y+1		;A1 H
	rcall	mudi
	st	Z,r6		;A1*E0/400 L
	std	Z+1,r7		;A1*E0/400 H
	ldd	r4,Z+3		;B1*E1/400 L
	ldd	r5,Z+4		;B1*E1/400 H
	ldd	r8,Z+6		;C1*E2/400 L
	ldd	r9,Z+7		;C1*E2/400 H
	rcall	ADSU
	ret
	
mubc:	ldd	r4,y+8		;E1 L
	ldd	r5,y+9		;E1 H
	ldd	r21,y+14	;E1 +-
	std	y+10,r4		;E2 L
	std	y+11,r5		;E2 H
	std	y+15,r21	;E2 +-
	std	Z+8,r21		;C1*E2 +-
	ldd	r6,y+4		;C1 L
	ldd	r7,y+5		;C1 H
	rcall	mudi
	std	Z+6,r6		;C1*E2/400 L
	std	Z+7,r7		;C1*E2/400 H
	
	ldd	r4,y+6		;E0 L
	ldd	r5,y+7		;E0 H
	ldd	r20,y+13	;E0 +-
	std	y+8,r4		;E1 L
	std	y+9,r5		;E1 H
	std	y+14,r20	;E1 +-
	std	Z+5,r20		;B1*E1 +-
	ldd	r6,y+2		;B1 L
	ldd	r7,y+3		;B1 H
	rcall	mudi
	std	Z+3,r6		;B1*E1/400 L
	std	Z+4,r7		;B1*E1/400 H
	ret
	
ADSU:	clr	r16
	inc	r20		;B1*E1符号取反
	sbrs	r19,0		;A1*E0为负跳行
	sbr	r16,1		;A1*E0为正 R16+1	
	sbrs	r20,0		;B1*E1为负跳行
	sbr	r16,2		;B1*E1为正 R16+2
	sbrs	r21,0		;C1*E2为负跳行
	sbr	r16,4		;C1*E2为正 R16+4
	clr	r17		;A B C 存放^V的符号 为正=0
	cpi	r16,7		;+ + +
	breq	ADSU1
	cpi	r16,0		;- - -
	brne	ADSU2
	inc	r17		;-
ADSU1:	add	r6,r4
	adc	r7,r5		;A+B
	add	r6,r8
	adc	r7,r9		;A+B+C
	rjmp	ADSU8
ADSU2:	cpi	r16,3		;+ + -
	breq	ADSU3
	cpi	r16,4		;- - +
	brne	ADSU4
	inc	r17		;-
ADSU3:	add	r6,r4
	adc	r7,r5		;A+B
	mov	r4,r8
	mov	r5,r9
	rcall	suhex2		;A+B-C
	add	r17,r19
	rjmp	ADSU8
ADSU4:	cpi	r16,5		;+ - +
	breq	ADSU5
	cpi	r16,2		;- + -
	brne	ADSU6
	inc	r17		;-
ADSU5:	add	r6,r8
	adc	r7,r9		;A+C
	rcall	suhex2		;A+C-B
	add	r17,r19
	rjmp	ADSU8
ADSU6:	cpi	r16,1		;+ - -
	breq	ADSU7
	inc	r17		;-	6  - + +
ADSU7:	add	r5,r8
	adc	r4,r9		;B+C
	rcall	suhex2		;A-(B+C)
	add	r17,r19
ADSU8:	clr	r18
	sbrc	r17,0
	sbr	r18,1		;r18=1 ^V为负
	mov	r5,r7
	mov	r4,r6		;^V  >>> R5,R4
	ret
;VAL0   r19,r18,r17,r16,r9,r8,r7,r6,r5,r4	
VAL0:	clr	r9		;V0+^V  >>>  r9,r8
	mov	r8,r6	
	add	r8,r4
	adc	r9,r5
	mov	r17,r9
	cpi	r17,1
	brlo	VAL1
	ser	r16
	mov	r8,r16
VAL1:	mov	r16,r8		;冷水
	rcall	suhex2		;V0-^V  >>>  r7,r6
	cpi	r19,0
	breq	VAL2
	clr	r6
VAL2:	mov	r17,r6		;热水
	cpi	r18,0
	brne	VAL3
	mov	r16,r6		;冷水
	mov	r17,r8		;热水
VAL3:	ret
;mudi   r4,r5,r6,r7,r8,r9,r18	
mudi:	rcall	mul16		;A1*E0
	ldi	r16,$90
	ldi	r18,$01
	mov	r4,r16
	mov	r5,r18
	rcall	div16		;A1*E0/400
	ret
;SUB HEX2  R7,R6-R5,R4>>>R7,R6   TEMP=R16,R19
suhex2:	clr	r19		;结果为正=0
	cp	r7,r5
	breq	suhex20		;R7=R5
	brsh	suhex22		;R7>R5
	rjmp	suhex21		;R7<R5
suhex20:cp	r6,r4
	brsh	suhex22		;R6>=R4
suhex21:mov	r16,r7
	mov	r7,r5
	mov	r5,r16
	mov	r16,r6
	mov	r6,r4
	mov	r4,r16
	ldi	r19,1		;结果为负=1
suhex22:sub	r6,r4
	sbc	r7,r5
	ret        
;**** 数据区
.cseg
.org	$0900
.dw	0x063f,0x4f5b,0x6d66,0x077d	
.dw	0x6f7f,0x7c77,0x5e39,0x7179
.dw	0x86bf,0xcfdb,0xede6,0x87fd	
.dw	0xefff

⌨️ 快捷键说明

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