亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? source.asm

?? 低價位瑞薩豆漿機程序
?? ASM
字號:
-M34508G4
;**********************************
; MAIN PROGRAM
;**********************************
;Copyright(C) 2007. Renesas Technology Corp., All rights reserved. 
;Frequency 500K HZ
;
test		.equ	0
;-------------------------------------------------------------------------
;		Definition Table
;-------------------------------------------------------------------------
c_s_limith	.equ	8h		; Limit value of AD result
c_s_limitl	.equ	0h
c_t_limith	.equ	7h
c_t_limitl	.equ	8h
c_y_limith	.equ	7h
c_y_limitl	.equ	6h
c_k1_on		.equ	0100b
c_k2_on		.equ	0001b
c_k3_on		.equ	0010b
c_k1_off	.equ	1011b
c_k2_off	.equ	1110b
c_k3_off	.equ	1101b
;
;-------------------------------------------------------------------------
;		RAM Table
;-------------------------------------------------------------------------
s_ad_sl		.EQU 	0,0,0		; Last value
g_ad_sl		.EQU	0,0,1		; Average of last two values
s_ad_yl		.EQU	0,0,2
g_ad_yl		.EQU	0,0,3
s_ad_tl		.EQU 	0,0,4
g_ad_tl		.EQU	0,0,5
s_ad_sh		.EQU 	0,1,0
g_ad_sh		.EQU	0,1,1
s_ad_yh		.EQU	0,1,2
g_ad_yh		.EQU	0,1,3
s_ad_th		.EQU 	0,1,4
g_ad_th		.EQU	0,1,5
s_ad_target	.EQU	0,0,6
;
g_beep_cnt	.equ	0,0,7
bf_mode		.equ	0,0,0,8
bf_beep		.equ	1,0,0,8
g_back_flag	.equ	0,0,9
t_temp		.equ	0,0,10
g_mode		.equ	0,0,11
s_wait0		.equ	0,0,12
s_wait1		.equ	0,0,13
s_wait2		.equ	0,0,14
s_wait3		.equ	0,0,15
s_ktemp		.equ	0,1,6
bf_2ms		.equ	0,0,1,7
bf_alarm	.equ	1,0,1,7
s_bak_p0	.equ	0,1,8
;-------------------------------------------------------------------------
;		Code
;-------------------------------------------------------------------------
	.org 0,0
reset:
	DI			; Disable all interrupts
	DWDT			; Disable Watch Dog Timer
	WRST
	.if test
	LA 	1100b		; Stop Xin, set f(RING) and direct clock mode
	.else
	LA	0011b
	.endif
	TMRA
;
clear_ram:
	LXY	0,0
	LZ	0
clear1:
        LA 0
        XAMI 0
        B clear1
        LXY 1,0
clear2: LA 0
        XAMI 0
        B clear2
;
;
;-------------------------------------------------------------------------
;		Initialize
; Function: 	Light up POWER LED, initialize SFR and start beep
;
;-------------------------------------------------------------------------
light_power:
	LXY 	0,1		; Light up Power LED on port D1
	RD
;
init_SFR:
set_IO:		
	LA	1000b
	OP0A			; Shut all relays and LEDs
	LA	0111b
	TFR0A			; Set relays control ports CMOS output mode
;	
	LA	1101b		
	OP1A			; Shut buzzer and LEDs
	LA	0010b
	TFR1A			; Set buzzer output pin to CMOS mode
;
	LA	1000b
	TPU0A			; Enable pull-up at P03
	LA	0001b
	TPU1A			; Enable pull-up at P10
;
set_ad:
	LA	0100b
	TQ1A			; Set AN4 as AD input, check T signal
	ADST
;
set_int:
	LA	1000b
	TI1A			; Enable INT input
	NOP
	SNZ0
	NOP
set_pwm:
	LA 	0110b
	TBA
	LA 	1101b
	T2AB			; Set data to Timer 2 and Timer 2 reload register R2L (220us = 500KHz * (109+1))
	T2HAB			; Set data to Timer 2 reload register R2H (220us = 500KHz * (109+1))
;
	LA	1111b		; Set Timer control register W2
	TW2A			;  Timer 2 Operating
				;  Select Timer 2 count source, System clock (STCK)
				;  PWM2 function valid
;
set_2ms_int:
	LA	0
	TBA
	LA	8
	TPSAB			; Set prescaler 1/9
;
	LA	2
	TBA
	LA	4
	T1AB			; Set Timer 1 interval 2ms
;
	LA	0100b
	TV1A			; Enable Timer 1 interrupt
;
	LA	0101b
	TW1A			; Start Timer 1, disable pwm1 and select prescaler as clock input
;	
	LA	1
	TPAA			; Start prescaler
;
	EI			; Enable interrupt
;
power_on_beep:
	BM	start_buzzer
	LA	1
	BM	wait_n100ms
	LA	0000b		; Disable pwm output
	TW6A

;
wait_for_key:
check_d:			; Check P10 pin
	LA	0001b		
	LXY	t_temp
	TMA	0
	IAP1
	AND
	SEAM
	BL	check_d2	; Check twice
	BL	check_m
check_d2:
	LA	0
	BM	wait_n100ms	; Wait 100ms for debounce
	LA	0001b		
	LXY	t_temp
	TMA	0
	IAP1
	AND
	SEAM
	BL	mode_lvdou	; Go to mode	
check_m:			; Check P03 pin
	LA	1000b
	LXY	t_temp
	TMA	0
	IAP0
	AND
	SEAM
	BL	check_m2	; Check twice	
	BL	check_n
check_m2:
	LA	0
	BM	wait_n100ms	; Wait 100ms for debounce	
	LA	1000b
	LXY	t_temp
	TMA	0
	IAP0
	AND
	SEAM
	BL	mode_lvdou	; Go to mode	
check_n:
	LXY	0,0		; Load 0 into Y
	SZD			; Check D0 pin
	B	check_d
	LA	0
	BM	wait_n100ms	; Wait 100ms for debounce	
	LXY	0,0		; Load 0 into Y
	SZD			; Check twice
	B	check_d
	BL	mode_lvdou	
;
;********************************************************************************
		.org		1,0
;================================================================================
;=
;=		Interrput Vector Table
;=
;================================================================================
	EI			; External 0 interrupt <not use>
	RTI			;
;+++++++++++++++++++++++++++++++;
	EI			;
	RTI			;
;+++++++++++++++++++++++++++++++;
	BL	t1_ih		; Timer 1 interrupt <in use>
				;
;+++++++++++++++++++++++++++++++;
	EI			; Timer 2 interrupt <not use>
	RTI			;
;+++++++++++++++++++++++++++++++;
	EI			;
	RTI			;
;+++++++++++++++++++++++++++++++;
	EI			;
	RTI			;
;+++++++++++++++++++++++++++++++;
	EI			; A/D interrupt <not use>
	RTI			;
;+++++++++++++++++++++++++++++++;
	EI			; 
	RTI			;
;
;-------------------------------------------------------------------
;	t1_ih
;-------------------------------------------------------------------
t1_ih:
	.clb	bf_2ms
adc:
	SNZAD
	B	adc		; Wait for ADC stop
	LXY	s_ad_target	; Check which signal is converted
	TAM	0
	A	0fh
	B	check_1
	LA	2		; When it comes to f, reset it to 2
	TMA	0
	LA	0101b		; Change AD channel to AN5, S signal
	TQ1A
	B	adc_t_store	; T signal result available
check_1:
	TMA	0
	SEA	1
	B	adc_y_store	; Y signal result available
	LA	0000b		; Change AD channel to AN0, Y signal
	TQ1A
	B	adc_s_store	; S signal result available
adc_y_store:
	LA	0100b		; Change AD channel to AN4, T signal
	TQ1A
	LXY	s_ad_yl
adc_s_store:
	LXY	s_ad_sl		; S signal result available
adc_t_store:
	LXY	s_ad_tl
	TABAD			; Transmit AD result register A&B
	XAM	0		; Exchange the lower 4 bits of the latest result and the previous one's
	AMC			; Add two lower 4 bits
	INY
	XAMD	1		; Temporarily save the lower 4 bits of the middle result
	TAB
	XAM	0		; Save the higher 4 bits of the latest result
	AMC			; Add two higher 4 bits
	RAR			; Right rotate = divide by 2
	INY
	TMA	1		; Save the higher 4 bits of the average
	TAM	0		
	RAR
	TMA	0		; Save the lower 4 bits of the average
;
	.if 1
	TAY
	SEA	1
	B	start_ad
s_analyse:
	LA	c_s_limith
	TBA
	LA	c_s_limitl
	BM	compare_8
	.szxyb	bf_alarm
	B	alarm
not_alarm:
	SZC
	B	start_alarm	; S value over limit, alarm
	B	start_ad	; No S signal, return
start_alarm:
	LXY	s_bak_p0
	LA	1001b
	TMA	0
	IAP0			; Save relays' status
	XAM	0
	AND
	OP0A			; Shut K1 and K3
	LA	1000b
	TW6A			; Enable pwm1 output
	.seb	bf_alarm
	B	t1_loop		; Loop in ADC sub routine
alarm:
	SZC			
	B	t1_loop		; Loop in ADC sub routine
stop_alarm:
	LA	0000b		; Disable pwm1 output
	TW6A
	LA	c_k2_off
	BM	shut_kn
	LXY	s_bak_p0
	LA	c_k3_on
	SZB	1
	BM	open_kn
	LXY	s_bak_p0
	LA	c_k1_on
	SZB	2
	BM	open_kn
	LXY	s_bak_p0
	LA	c_k2_on
	SZB	0
	BM	open_kn
	.clb	bf_alarm
	.endif
start_ad:
	ADST			; Start a new ADC process
t1_exit:
	EI			; Enable interrupt
	RTI
t1_loop:
	LA	0101b
	TQ1A
	LXY	s_ad_target
	LA	2
	TMA	0
	ADST
	B	adc
;********************************************************************************
;-------------------------------------------------------------------
;	Subroutines
;-------------------------------------------------------------------
	.org 2,0
;-------------------------------------------------------------------
;	Start_buzzer
;-------------------------------------------------------------------
start_buzzer:	
	LA	1000b		; Set Timer control register W6
	TW6A			;  Select P1_1(input)/CNTR1(I/O)
	RT	
;-------------------------------------------------------------------------
;		Compare_8
; Function: 	Compare M(DP)&M(DP^1) and AB
; Output: 	M(DP)&M(DP^1) < AB C = 0;
;		M(DP)&M(DP^1) >=AB C = 1;
;-------------------------------------------------------------------------
compare_8:				
	CMA
	RC			
	AMC			; M(DP) + COM(A)
	TAM	1		; Set DP to DP^1
	TAB			; Load higher 4 bits
	CMA
	AMC			; M(DP^1) + COM(B)
	RT
;-------------------------------------------------------------------
;	wait_n100ms n = A + 1
;-------------------------------------------------------------------
wait_n100ms:
	LXY	s_wait0
w100ms_loop0:
	TMA	0
	LXY	s_wait1
	LA	4		; (4+1)*(9+1)*2ms= 100ms
w100ms_loop1:
	TMA	0
	LA	9	
w100ms_loop2:	
	.szxyb	bf_2ms
	B	w100ms_loop2
	.seb	bf_2ms
	A	0fh
	B	w100ms_loop2
	LXY	s_wait1
	TAM	0
	A	0fh
	B	w100ms_loop1
	LXY	s_wait0
	TAM	0
	A	0fh
	B	w100ms_loop0	
	RT
;-------------------------------------------------------------------
;	wait_n1s n = A + 1
;-------------------------------------------------------------------
wait_n1s:
	LXY	s_wait2
w1s_loop:
	TMA	0
	LA	10
	BM	wait_n100ms
	LXY	s_wait2
	TAM	0
	A	0fh
	B	w1s_loop
	RT
;-------------------------------------------------------------------
;	open_kn
;-------------------------------------------------------------------
open_kn:
	SNZ0			; Clear INT interrupt flag
	NOP
	;DI			; Disable interrupt
op_kn_loop:
	SNZ0
	B	op_kn_loop
	LXY	s_ktemp
	TMA	0
	IAP0			; Read P0 port
	OR
	OP0A			; Execute the change on P0
	;EI			; Enable interrupt
	RT
;-------------------------------------------------------------------
;	shut_kn
;-------------------------------------------------------------------
shut_kn:
	SNZ0			; Clear INT interrupt flag
	NOP
	;DI			; Disable interrupt
sh_kn_loop:
	SNZ0
	B	sh_kn_loop
	LXY	s_ktemp
	TMA	0
	IAP0			; Read P0 port
	AND
	OP0A			; Execute the change on P0
	;EI			; Enable interrupt
	RT
;-------------------------------------------------------------------
;	check_t
;-------------------------------------------------------------------
check_t:
	LA	c_t_limith
	TBA
	LA	c_t_limitl
	LXY	g_ad_tl
	BM	compare_8
	SZC
	RT
	RTS
;-------------------------------------------------------------------
;	check_y
;-------------------------------------------------------------------
check_y:
	LA	c_y_limith
	TBA
	LA	c_y_limitl
	LXY	g_ad_yl
	BM	compare_8
	SZC
	RT
	RTS
;
;-------------------------------------------------------------------
;	lvdou procedure
;-------------------------------------------------------------------	
	.org	3,0
mode_lvdou:
	LA	0000b
	OP0A			; Light up LED of Lvdou	
	BM	start_buzzer
	LA	0		; beep 3 times
	BM	wait_n100ms
	LA	0000b
	TW6A
	LA	0
	BM	wait_n100ms
	LA	1000b
	TW6A
	LA	0
	BM	wait_n100ms
	LA	0000b
	TW6A
	LA	0
	BM	wait_n100ms
	LA	1000b
	TW6A
	LA	0
	BM	wait_n100ms
	LA	0000b
	TW6A
phase1:
	BM	check_t
	B	phase2
	LA	c_k1_on
	BM	open_kn		; Start heater
	LA	c_k2_on
	BM	open_kn
p1_loop1:
	BM	check_t		; Check temperature
	B	phase2
p1_check_y:
	BM	check_y		; Check overflow signal Y
	B	phase1
	LA	c_k1_off
	BM	shut_kn
	B	p1_loop1
phase2:		
	BM	start_buzzer
	LA	0		; Beep twice
	BM	wait_n100ms
	LA	0000b
	TW6A
	LA	0
	BM	wait_n100ms
	LA	1000b
	TW6A	
	LA	0
	BM	wait_n100ms
	LA	0000b
	TW6A
;
	LA	c_k2_off
	BM	shut_kn		; Stop heater
	LA	c_k1_off
	BM	shut_kn
;
	LA	0		; Wait 1.3s
	BM	wait_n1s
	LA	2
	BM	wait_n100ms	
	LA	c_k3_on
	BM	open_kn		; Start motor, half speed
;
	LA	0		; Wait 1.7s
	BM	wait_n1s
	LA	6
	BM	wait_n100ms
	LA	c_k2_on
	BM	open_kn		; Switch to full speed
;
	LA	1		; Wait 2.7s
	BM	wait_n1s
	LA	6
	BM	wait_n100ms
	LA	c_k2_off
	BM	shut_kn		; Back to half speed
;
	LA	1		; Wait 1.7s
	BM	wait_n1s
	LA	6
	BM	wait_n100ms
	LA	c_k3_off
	BM	shut_kn		; Stop motor
;
	LA	7		; Wait 800ms
	BM	wait_n100ms
	LA	c_k1_on
	BM	open_kn		; Start heater
	LA	c_k2_on
	BM	open_kn
phase3:
	BM	check_y
	B	phase3
	LA	c_k2_off
	BM	shut_kn
	LA	c_k1_off
	BM	shut_kn
;
	LA	12
	BM	wait_n1s
	LA	10
	BM	wait_n1s
	LA	c_k3_on
	BM	open_kn
;
	LA	5
	BM	wait_n100ms
	LA	c_k3_off
	BM	shut_kn
;
	LA	2
	BM	wait_n1s
	LA	c_k3_on
	BM	open_kn
;
	LA	1
	BM	wait_n1s
	LA	c_k2_on
	BM	open_kn
;
	LA	13
	BM	wait_n1s
	LA	c_k2_off
	BM	shut_kn
;
	LA	2
	BM	wait_n1s
	LA	c_k3_off
	BM	shut_kn
;
	LA	0
	BM	wait_n1s
	LA	c_k1_on
	BM	open_kn
;
	LA	7
	BM	wait_n1s
	LA	c_k1_off
	BM	shut_kn
;
	LA	0
	BM	wait_n1s
	LA	c_k3_on
	BM	open_kn
;
	LA	1
	BM	wait_n1s
	LA	c_k2_on
	BM	open_kn
;
	LA	13
	BM	wait_n1s
	LA	c_k2_off
	BM	shut_kn
;
	LA	2
	BM	wait_n1s
	LA	c_k3_off
	BM	shut_kn
;
	LA	3
	BM	wait_n1s
	LA	c_k1_on
	BM	open_kn
;
phase4:
	LXY	t_temp
	LA	01h
p4_loop:
	TMA	0
	LA	0fh
	BM	wait_n1s
	LXY	t_temp
	TAM	0
	A	0fh
	B	p4_loop
;
	LA	c_k1_off
	BM	shut_kn
;
	BM	start_buzzer
end:	B	end
	.END

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
中文字幕在线观看一区| 丁香亚洲综合激情啪啪综合| 国产一区视频导航| 欧亚洲嫩模精品一区三区| 久久新电视剧免费观看| 亚洲一区二区三区自拍| a美女胸又www黄视频久久| 日韩午夜在线观看| 午夜久久福利影院| 色噜噜狠狠色综合中国| 中文字幕不卡三区| 国产成人在线免费观看| 91精品国产色综合久久ai换脸| 一区二区三区精品在线| 床上的激情91.| 国产丝袜美腿一区二区三区| 麻豆精品精品国产自在97香蕉| 日本精品视频一区二区| 国产精品动漫网站| 国产91高潮流白浆在线麻豆| 欧美mv和日韩mv的网站| 日韩国产精品91| 欧美精品久久久久久久多人混战 | 日韩欧美一区在线| 亚洲电影中文字幕在线观看| 色老汉av一区二区三区| 亚洲精品中文字幕在线观看| 97久久精品人人澡人人爽| 久久精品视频一区二区三区| 精品一区二区在线视频| 欧美成人乱码一区二区三区| 卡一卡二国产精品| 久久蜜臀中文字幕| 国产91精品一区二区麻豆网站 | 麻豆国产精品一区二区三区| 欧美剧情片在线观看| 午夜精品在线视频一区| 91精品国产欧美一区二区18| 免费在线视频一区| 日韩欧美一区在线| 国产成人av影院| 国产精品女主播av| 色综合色狠狠天天综合色| 自拍偷拍国产精品| 欧美亚洲综合另类| 婷婷综合另类小说色区| 日韩欧美一二区| 国产高清无密码一区二区三区| 国产午夜精品久久| 色综合 综合色| 婷婷成人综合网| 精品99一区二区| 国产成人免费视| 亚洲免费观看高清完整版在线| 91亚洲午夜精品久久久久久| 亚洲国产精品视频| 久久伊人中文字幕| 91女神在线视频| 日本成人在线一区| 国产精品三级电影| 9191久久久久久久久久久| 国产高清不卡二三区| 亚洲免费在线观看| 欧美成人精品高清在线播放| 成人性生交大片| 亚洲第一福利视频在线| 国产欧美精品一区| 欧美午夜影院一区| 国产99久久久国产精品潘金网站| 亚洲欧美一区二区久久| 精品日韩欧美在线| 色综合天天综合狠狠| 免费xxxx性欧美18vr| 中文字幕一区二区三区四区| 日韩一区二区三区免费看| 成人激情校园春色| 久久99热99| 亚洲成av人片在www色猫咪| 国产欧美一二三区| 日韩亚洲欧美高清| 欧美自拍偷拍一区| 丰满白嫩尤物一区二区| 麻豆精品久久久| 亚洲成av人片在线观看| 亚洲日本青草视频在线怡红院| 日韩一级高清毛片| 91国产福利在线| 成人激情小说乱人伦| 国产一区二区三区综合| 日韩制服丝袜av| 亚洲乱码国产乱码精品精可以看| 久久综合国产精品| 日韩情涩欧美日韩视频| 欧美剧在线免费观看网站 | 亚洲综合色网站| 国产精品久线在线观看| 久久久99精品久久| 欧美成人精品3d动漫h| 欧美理论在线播放| 欧美日韩高清一区二区三区| 91丝袜高跟美女视频| 国产精品一卡二| 久久电影网电视剧免费观看| 日韩激情中文字幕| 性做久久久久久免费观看| 一区二区三区四区不卡在线| 中文字幕永久在线不卡| 国产精品国产三级国产普通话99 | 9l国产精品久久久久麻豆| 国产伦精品一区二区三区在线观看| 日韩专区欧美专区| 午夜电影一区二区| 日韩精品成人一区二区在线| 婷婷国产v国产偷v亚洲高清| 五月激情丁香一区二区三区| 亚洲va欧美va天堂v国产综合| 亚洲r级在线视频| 三级在线观看一区二区| 日韩**一区毛片| 人人精品人人爱| 老司机精品视频在线| 九九国产精品视频| 国产在线播精品第三| 国产福利精品一区| av网站免费线看精品| 色一情一伦一子一伦一区| 色婷婷狠狠综合| 欧美人体做爰大胆视频| 欧美大片国产精品| 日本一区二区三区国色天香| 国产精品久久久久久久久晋中| 亚洲欧美日韩电影| 偷拍日韩校园综合在线| 黑人巨大精品欧美一区| 丁香亚洲综合激情啪啪综合| 日本福利一区二区| 3751色影院一区二区三区| 26uuu久久综合| 国产精品高潮久久久久无| 亚洲成人av一区| 国产精品夜夜嗨| 日本韩国视频一区二区| 56国语精品自产拍在线观看| 久久人人爽爽爽人久久久| 亚洲欧洲成人自拍| 免费观看日韩av| 成人动漫精品一区二区| 欧美老人xxxx18| 国产精品久久久爽爽爽麻豆色哟哟| 亚洲高清免费在线| 国产一区视频在线看| 在线免费观看视频一区| 精品国产一区二区亚洲人成毛片| 成人欧美一区二区三区白人| 日韩av电影免费观看高清完整版在线观看| 国产一区二区在线观看视频| 欧美撒尿777hd撒尿| 久久久久久久综合| 亚洲18影院在线观看| 成人免费视频一区二区| 337p亚洲精品色噜噜| 国产精品福利av| 精品无人码麻豆乱码1区2区| 在线观看91视频| 亚洲国产精品99久久久久久久久 | 欧美一级夜夜爽| 中文字幕在线不卡| 国产乱人伦偷精品视频不卡| 在线免费一区三区| 国产精品久久久久久一区二区三区| 日韩高清一级片| 欧美亚洲国产一区二区三区va| 国产欧美va欧美不卡在线| 美女国产一区二区三区| 欧美日韩在线播放三区四区| 国产精品网站导航| 精品一二线国产| 欧美一区二区福利视频| 有码一区二区三区| 91丨九色丨国产丨porny| 亚洲精品一区二区三区四区高清| 三级久久三级久久| 欧美亚洲动漫精品| 亚洲视频在线观看一区| 国产99久久久精品| 国产丝袜美腿一区二区三区| 狠狠网亚洲精品| 精品少妇一区二区三区日产乱码| 天天影视涩香欲综合网| 在线一区二区视频| 一区二区三区中文在线| 99精品视频免费在线观看| 国产精品视频一二| av影院午夜一区| 国产精品情趣视频| 成人激情免费电影网址| 中文字幕欧美一区| 91美女片黄在线观看| 亚洲精品国产精品乱码不99 | 国产精品一区免费在线观看|