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

📄 time.s

📁 freescale单片机电子时钟
💻 S
📖 第 1 页 / 共 2 页
字号:
	ais #1
	tsx
	sta *__r1
	sta *_KB_valve
;    y[1]= KB_valve-0x30;
	lda *_KB_valve
	sub #48
	sta 23,X
;    lcdshow2(KB_valve);
	lda *_KB_valve
	psha
	jsr _lcdshow2
	ais #1
	tsx
;    
;    time[5]=y[0]*10+y[1];
	lda 22,X
	ldx #10
	mul
	tsx
	add 23,X
	sta *_time+5
;    
;    lcdshow2(':');
	lda #58
	psha
	jsr _lcdshow2
	ais #1
	tsx
	bra L159
L158:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L159:
;    
;    while(KB_valve!=0xff){KB_valve=KB_Scan(); }  //松开跳出
	lda *_KB_valve
	cmp #-1
	bne L158
	bra L162
L161:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L162:
;    while(KB_valve==0xff){KB_valve=KB_Scan(); } //有按键跳出
	lda *_KB_valve
	cmp #-1
	beq L161
;    KB_valve=KB_Def(KB_valve);  //键值转化为定义值
	lda *_KB_valve
	psha
	jsr _KB_Def
	ais #1
	tsx
	sta *__r1
	sta *_KB_valve
;    y[0]= KB_valve-0x30;
	lda *_KB_valve
	sub #48
	sta 22,X
;    if(y[0]>9)
	cmp #9
	bls L164
;    {
;      //lcdshow1((unsigned char *)c,15);
;      goto begin;
	jmp L60
L164:
;    }
;    lcdshow2(KB_valve);
	lda *_KB_valve
	psha
	jsr _lcdshow2
	ais #1
	tsx
	bra L167
L166:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L167:
;    
;    while(KB_valve!=0xff){KB_valve=KB_Scan(); }  //松开跳出
	lda *_KB_valve
	cmp #-1
	bne L166
	bra L170
L169:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L170:
;    while(KB_valve==0xff){KB_valve=KB_Scan(); } //有按键跳出
	lda *_KB_valve
	cmp #-1
	beq L169
;    KB_valve=KB_Def(KB_valve);  //键值转化为定义值
	lda *_KB_valve
	psha
	jsr _KB_Def
	ais #1
	tsx
	sta *__r1
	sta *_KB_valve
;    y[1]= KB_valve-0x30;
	lda *_KB_valve
	sub #48
	sta 23,X
;    lcdshow2(KB_valve);
	lda *_KB_valve
	psha
	jsr _lcdshow2
	ais #1
	tsx
;    
;    time[6]=y[0]*10+y[1];
	lda 22,X
	ldx #10
	mul
	tsx
	add 23,X
	sta *_time+6
;    
;    conver();
	jsr _conver
;    lcdshow((unsigned char *)time1);
	lda #<_time1
	psha
	lda #>_time1
	psha
	jsr _lcdshow
	ais #2
	tsx
L57:
	ais #24
	.dbline 0 ; func end
	rts
	.area lit
L176:
	.byte 'a,'l,'a,'r,'m,32,'d,'a,'t,'e,58,0
L177:
	.byte 'a,'l,'a,'r,'m,32,'t,'i,'m,'e,58,0
	.area text
;              b -> 0,X
;              a -> 12,X
;              y -> 24,X
_SetAlarmClock::
	ais #-26
	tsx
; }
;    
; void SetAlarmClock(void)
; {
;    //unsigned char i;
;   
;    unsigned char y[2];
;    unsigned char a[]="alarm date:";
	aix #12
	sthx *__r0
	tsx
	lda #12
	psha
	clra
	psha
	lda #<L176
	psha
	lda #>L176
	psha
	lda *__r1
	psha
	lda *__r0
	psha
	jsr __asgnblk
	ais #6
;    unsigned char b[]="alarm time:";
	sthx *__r0
	lda #12
	psha
	clra
	psha
	lda #<L177
	psha
	lda #>L177
	psha
	lda *__r1
	psha
	lda *__r0
	psha
	jsr __asgnblk
	ais #6
L178:
;    //unsigned char b[]="input month:";
;    //unsigned char b[]="input month:";
;    //unsigned char a[]="input year:";
;    //unsigned char b[]="input month:";
;    //unsigned char c[]="input day:";
;    //unsigned char d[]="input hour:";
;    //unsigned char e[]="input minute:";
;    //unsigned char f[]="input second:"; 
;    begin:
;    lcdshow1((unsigned char *)a,11);
	lda #11
	psha
	aix #12
	pshx
	pshh
	jsr _lcdshow1
	ais #3
;    
;    LcdCtrl&=~(1<<LcdRS);    //RS、R/W=00,写指令
	bclr #0,0x2
;    LcdCtrl&=~(1<<LcdRW);    
	bclr #1,0x2
;    Lcd_Command(0b11000000); //后7位为DDRAM地址0x40 
	lda #-64
	psha
	jsr _Lcd_Command
	ais #1
	tsx
	bra L180
L179:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L180:
;    
;    while(KB_valve!=0xff){KB_valve=KB_Scan(); }  //松开跳出
	lda *_KB_valve
	cmp #-1
	bne L179
	bra L183
L182:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L183:
;    while(KB_valve==0xff){KB_valve=KB_Scan(); } //有按键跳出
	lda *_KB_valve
	cmp #-1
	beq L182
;    KB_valve=KB_Def(KB_valve);  //键值转化为定义值
	lda *_KB_valve
	psha
	jsr _KB_Def
	ais #1
	tsx
	sta *__r1
	sta *_KB_valve
;    y[0]= KB_valve-0x30;
	lda *_KB_valve
	sub #48
	sta 24,X
;    lcdshow2(KB_valve);
	lda *_KB_valve
	psha
	jsr _lcdshow2
	ais #1
	tsx
	bra L186
L185:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L186:
;    
;    while(KB_valve!=0xff){KB_valve=KB_Scan(); }  //松开跳出
	lda *_KB_valve
	cmp #-1
	bne L185
	bra L189
L188:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L189:
;    while(KB_valve==0xff){KB_valve=KB_Scan(); } //有按键跳出
	lda *_KB_valve
	cmp #-1
	beq L188
;    KB_valve=KB_Def(KB_valve);  //键值转化为定义值
	lda *_KB_valve
	psha
	jsr _KB_Def
	ais #1
	tsx
	sta *__r1
	sta *_KB_valve
;    y[1]= KB_valve-0x30;
	lda *_KB_valve
	sub #48
	sta 25,X
;    lcdshow2(KB_valve);
	lda *_KB_valve
	psha
	jsr _lcdshow2
	ais #1
	tsx
;      
;    time2[0]=y[0]*10+y[1];
	lda 24,X
	ldx #10
	mul
	tsx
	add 25,X
	sta *_time2
	bra L194
L193:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L194:
;    
;    while(KB_valve!=0xff){KB_valve=KB_Scan(); }  //松开跳出
	lda *_KB_valve
	cmp #-1
	bne L193
	bra L197
L196:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L197:
;    while(KB_valve==0xff){KB_valve=KB_Scan(); } //有按键跳出
	lda *_KB_valve
	cmp #-1
	beq L196
;    KB_valve=KB_Def(KB_valve);  //键值转化为定义值
	lda *_KB_valve
	psha
	jsr _KB_Def
	ais #1
	tsx
	sta *__r1
	sta *_KB_valve
;    y[0]= KB_valve-0x30;
	lda *_KB_valve
	sub #48
	sta 24,X
;    lcdshow2(KB_valve);
	lda *_KB_valve
	psha
	jsr _lcdshow2
	ais #1
	tsx
	bra L200
L199:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L200:
;    
;    while(KB_valve!=0xff){KB_valve=KB_Scan(); }  //松开跳出
	lda *_KB_valve
	cmp #-1
	bne L199
	bra L203
L202:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L203:
;    while(KB_valve==0xff){KB_valve=KB_Scan(); } //有按键跳出
	lda *_KB_valve
	cmp #-1
	beq L202
;    KB_valve=KB_Def(KB_valve);  //键值转化为定义值
	lda *_KB_valve
	psha
	jsr _KB_Def
	ais #1
	tsx
	sta *__r1
	sta *_KB_valve
;    y[1]= KB_valve-0x30;
	lda *_KB_valve
	sub #48
	sta 25,X
;    lcdshow2(KB_valve);
	lda *_KB_valve
	psha
	jsr _lcdshow2
	ais #1
	tsx
;    
;    time2[1]=y[0]*10+y[1];
	lda 24,X
	ldx #10
	mul
	tsx
	add 25,X
	sta *_time2+1
;    
;    lcdshow2('.');
	lda #46
	psha
	jsr _lcdshow2
	ais #1
	tsx
	bra L209
L208:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L209:
;    
;    while(KB_valve!=0xff){KB_valve=KB_Scan(); }  //松开跳出
	lda *_KB_valve
	cmp #-1
	bne L208
	bra L212
L211:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L212:
;    while(KB_valve==0xff){KB_valve=KB_Scan(); } //有按键跳出
	lda *_KB_valve
	cmp #-1
	beq L211
;    KB_valve=KB_Def(KB_valve);  //键值转化为定义值
	lda *_KB_valve
	psha
	jsr _KB_Def
	ais #1
	tsx
	sta *__r1
	sta *_KB_valve
;    y[0]= KB_valve-0x30;
	lda *_KB_valve
	sub #48
	sta 24,X
;    if(y[0]>1)
	cmp #1
	bls L214
;    {
;      //lcdshow1((unsigned char *)c,15);
;      goto begin;
	jmp L178
L214:
;    }
;    lcdshow2(KB_valve);
	lda *_KB_valve
	psha
	jsr _lcdshow2
	ais #1
	tsx
	bra L217
L216:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L217:
;    
;    while(KB_valve!=0xff){KB_valve=KB_Scan(); }  //松开跳出
	lda *_KB_valve
	cmp #-1
	bne L216
	bra L220
L219:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L220:
;    while(KB_valve==0xff){KB_valve=KB_Scan(); } //有按键跳出
	lda *_KB_valve
	cmp #-1
	beq L219
;    KB_valve=KB_Def(KB_valve);  //键值转化为定义值
	lda *_KB_valve
	psha
	jsr _KB_Def
	ais #1
	tsx
	sta *__r1
	sta *_KB_valve
;    y[1]= KB_valve-0x30;
	lda *_KB_valve
	sub #48
	sta 25,X
;    lcdshow2(KB_valve);
	lda *_KB_valve
	psha
	jsr _lcdshow2
	ais #1
	tsx
;    
;    time2[2]=y[0]*10+y[1];
	lda 24,X
	ldx #10
	mul
	tsx
	add 25,X
	sta *_time2+2
;    
;    lcdshow2('.');
	lda #46
	psha
	jsr _lcdshow2
	ais #1
	tsx
	bra L226
L225:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L226:
;    
;    while(KB_valve!=0xff){KB_valve=KB_Scan(); }  //松开跳出
	lda *_KB_valve
	cmp #-1
	bne L225
	bra L229
L228:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L229:
;    while(KB_valve==0xff){KB_valve=KB_Scan(); } //有按键跳出
	lda *_KB_valve
	cmp #-1
	beq L228
;    KB_valve=KB_Def(KB_valve);  //键值转化为定义值
	lda *_KB_valve
	psha
	jsr _KB_Def
	ais #1
	tsx
	sta *__r1
	sta *_KB_valve
;    y[0]= KB_valve-0x30;
	lda *_KB_valve
	sub #48
	sta 24,X
;    if(y[0]>3)
	cmp #3
	bls L231
;    {
;      //lcdshow1((unsigned char *)c,15);
;      goto begin;
	jmp L178
L231:
;    }
;    lcdshow2(KB_valve);
	lda *_KB_valve
	psha
	jsr _lcdshow2
	ais #1
	tsx
	bra L234
L233:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L234:
;    
;    while(KB_valve!=0xff){KB_valve=KB_Scan(); }  //松开跳出
	lda *_KB_valve
	cmp #-1
	bne L233
	bra L237
L236:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L237:
;    while(KB_valve==0xff){KB_valve=KB_Scan(); } //有按键跳出
	lda *_KB_valve
	cmp #-1
	beq L236
;    KB_valve=KB_Def(KB_valve);  //键值转化为定义值
	lda *_KB_valve
	psha
	jsr _KB_Def
	ais #1
	tsx
	sta *__r1
	sta *_KB_valve
;    y[1]= KB_valve-0x30;
	lda *_KB_valve
	sub #48
	sta 25,X
;    lcdshow2(KB_valve);
	lda *_KB_valve
	psha
	jsr _lcdshow2
	ais #1
	tsx
;    
;    time2[3]=y[0]*10+y[1];
	lda 24,X
	ldx #10
	mul
	tsx
	add 25,X
	sta *_time2+3
;    
;    lcdshow1((unsigned char *)b,11);
	lda #11
	psha
	pshx
	pshh
	jsr _lcdshow1
	ais #3
;    LcdCtrl&=~(1<<LcdRS);    //RS、R/W=00,写指令
	bclr #0,0x2
;    LcdCtrl&=~(1<<LcdRW);    
	bclr #1,0x2
;    Lcd_Command(0b11000000); //后7位为DDRAM地址0x40 
	lda #-64
	psha
	jsr _Lcd_Command
	ais #1
	tsx
	bra L243
L242:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L243:
;    
;    while(KB_valve!=0xff){KB_valve=KB_Scan(); }  //松开跳出
	lda *_KB_valve
	cmp #-1
	bne L242
	bra L246
L245:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L246:
;    while(KB_valve==0xff){KB_valve=KB_Scan(); } //有按键跳出
	lda *_KB_valve
	cmp #-1
	beq L245
;    KB_valve=KB_Def(KB_valve);  //键值转化为定义值
	lda *_KB_valve
	psha
	jsr _KB_Def
	ais #1
	tsx
	sta *__r1
	sta *_KB_valve
;    y[0]= KB_valve-0x30;
	lda *_KB_valve
	sub #48
	sta 24,X
;    if(y[0]>2)
	cmp #2
	bls L248
;    {
;      //lcdshow1((unsigned char *)c,15);
;      goto begin;
	jmp L178
L248:
;    }
;    lcdshow2(KB_valve);
	lda *_KB_valve
	psha
	jsr _lcdshow2
	ais #1
	tsx
	bra L251
L250:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L251:
;    
;    while(KB_valve!=0xff){KB_valve=KB_Scan(); }  //松开跳出
	lda *_KB_valve
	cmp #-1
	bne L250
	bra L254
L253:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L254:
;    while(KB_valve==0xff){KB_valve=KB_Scan(); } //有按键跳出
	lda *_KB_valve
	cmp #-1
	beq L253
;    KB_valve=KB_Def(KB_valve);  //键值转化为定义值
	lda *_KB_valve
	psha
	jsr _KB_Def
	ais #1
	tsx
	sta *__r1
	sta *_KB_valve
;    y[1]= KB_valve-0x30;
	lda *_KB_valve
	sub #48
	sta 25,X
;    lcdshow2(KB_valve);
	lda *_KB_valve
	psha
	jsr _lcdshow2
	ais #1
	tsx
;    
;    time2[4]=y[0]*10+y[1];
	lda 24,X
	ldx #10
	mul
	tsx
	add 25,X
	sta *_time2+4
;    
;    lcdshow2(':');
	lda #58
	psha
	jsr _lcdshow2
	ais #1
	tsx
	bra L260
L259:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L260:
;    
;    while(KB_valve!=0xff){KB_valve=KB_Scan(); }  //松开跳出
	lda *_KB_valve
	cmp #-1
	bne L259
	bra L263
L262:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L263:
;    while(KB_valve==0xff){KB_valve=KB_Scan(); } //有按键跳出
	lda *_KB_valve
	cmp #-1
	beq L262
;    KB_valve=KB_Def(KB_valve);  //键值转化为定义值
	lda *_KB_valve
	psha
	jsr _KB_Def
	ais #1
	tsx
	sta *__r1
	sta *_KB_valve
;    y[0]= KB_valve-0x30;
	lda *_KB_valve
	sub #48
	sta 24,X
;    if(y[0]>6)
	cmp #6
	bls L265
;    {
;      //lcdshow1((unsigned char *)c,15);
;      goto begin;
	jmp L178
L265:
;    }
;    lcdshow2(KB_valve);
	lda *_KB_valve
	psha
	jsr _lcdshow2
	ais #1
	tsx
	bra L268
L267:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L268:
;    
;    while(KB_valve!=0xff){KB_valve=KB_Scan(); }  //松开跳出
	lda *_KB_valve
	cmp #-1
	bne L267
	bra L271
L270:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L271:
;    while(KB_valve==0xff){KB_valve=KB_Scan(); } //有按键跳出
	lda *_KB_valve
	cmp #-1
	beq L270
;    KB_valve=KB_Def(KB_valve);  //键值转化为定义值
	lda *_KB_valve
	psha
	jsr _KB_Def
	ais #1
	tsx
	sta *__r1
	sta *_KB_valve
;    y[1]= KB_valve-0x30;
	lda *_KB_valve
	sub #48
	sta 25,X
;    lcdshow2(KB_valve);
	lda *_KB_valve
	psha
	jsr _lcdshow2
	ais #1
	tsx
;    
;    time2[5]=y[0]*10+y[1];
	lda 24,X
	ldx #10
	mul
	tsx
	add 25,X
	sta *_time2+5
;    
;    lcdshow2(':');
	lda #58
	psha
	jsr _lcdshow2
	ais #1
	tsx
	bra L277
L276:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L277:
;    
;    while(KB_valve!=0xff){KB_valve=KB_Scan(); }  //松开跳出
	lda *_KB_valve
	cmp #-1
	bne L276
	bra L280
L279:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L280:
;    while(KB_valve==0xff){KB_valve=KB_Scan(); } //有按键跳出
	lda *_KB_valve
	cmp #-1
	beq L279
;    KB_valve=KB_Def(KB_valve);  //键值转化为定义值
	lda *_KB_valve
	psha
	jsr _KB_Def
	ais #1
	tsx
	sta *__r1
	sta *_KB_valve
;    y[0]= KB_valve-0x30;
	lda *_KB_valve
	sub #48
	sta 24,X
;    if(y[0]>6)
	cmp #6
	bls L282
;    {
;      //lcdshow1((unsigned char *)c,15);
;      goto begin;
	jmp L178
L282:
;    }
;    lcdshow2(KB_valve);
	lda *_KB_valve
	psha
	jsr _lcdshow2
	ais #1
	tsx
	bra L285
L284:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L285:
;    
;    while(KB_valve!=0xff){KB_valve=KB_Scan(); }  //松开跳出
	lda *_KB_valve
	cmp #-1
	bne L284
	bra L288
L287:
	jsr _KB_Scan
	tsx
	sta *__r1
	sta *_KB_valve
L288:
;    while(KB_valve==0xff){KB_valve=KB_Scan(); } //有按键跳出
	lda *_KB_valve
	cmp #-1
	beq L287
;    KB_valve=KB_Def(KB_valve);  //键值转化为定义值
	lda *_KB_valve
	psha
	jsr _KB_Def
	ais #1
	tsx
	sta *__r1
	sta *_KB_valve
;    y[1]= KB_valve-0x30;
	lda *_KB_valve
	sub #48
	sta 25,X
;    lcdshow2(KB_valve);
	lda *_KB_valve
	psha
	jsr _lcdshow2
	ais #1
	tsx
;    time2[6]=y[0]*10+y[1];
	lda 24,X
	ldx #10
	mul
	tsx
	add 25,X
	sta *_time2+6
L175:
	ais #26
	.dbline 0 ; func end
	rts

⌨️ 快捷键说明

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