📄 toucher2.s
字号:
std z+0,R2
L159:
.dbline 738
inc R12
L161:
.dbline 738
mov R24,R12
cpi R24,6
brlo L158
.dbline 740
; a[c]=a[c+1];
; for(c=11;c<14;c++)
ldi R24,11
mov R12,R24
xjmp L166
L163:
.dbline 741
movw R24,R28
adiw R24,6
mov R30,R12
clr R31
add R30,R24
adc R31,R25
ldd R2,z+0
movw R24,R28
adiw R24,5
mov R30,R12
clr R31
add R30,R24
adc R31,R25
std z+0,R2
L164:
.dbline 740
inc R12
L166:
.dbline 740
mov R24,R12
cpi R24,14
brlo L163
.dbline 743
; a[c]=a[c+1];
;
; if(a[8]==0xff)
ldd R24,y+13
cpi R24,255
brne L168
.dbline 744
; ;
xjmp L169
L168:
.dbline 746
; else
; {
.dbline 748
; //关机时间
; write_print(0x32); //2
ldi R16,50
xcall _write_print
.dbline 749
; write_print(0x30); //0
ldi R16,48
xcall _write_print
.dbline 750
; date_print(a[8]); //年
ldd R16,y+13
xcall _date_print
.dbline 751
; write_print(0x2f); //"/"
ldi R16,47
xcall _write_print
.dbline 752
; date_print(a[9]); //月
ldd R16,y+14
xcall _date_print
.dbline 753
; write_print(0x2f); //"/"
ldi R16,47
xcall _write_print
.dbline 754
; date_print(a[10]); //日
ldd R16,y+15
xcall _date_print
.dbline 755
; write_print(0x2f); //" "
ldi R16,47
xcall _write_print
.dbline 756
; date_print(a[11]); //时
ldd R16,y+16
xcall _date_print
.dbline 757
; write_print(0x3a); //":"
ldi R16,58
xcall _write_print
.dbline 758
; date_print(a[12]); //分
ldd R16,y+17
xcall _date_print
.dbline 759
; write_print(0x0d); //换行
ldi R16,13
xcall _write_print
.dbline 762
;
; // cha_print(0x1c,0x26); //设置汉字打印方式
; cha_print(0xb9,0xd8); //关
ldi R18,216
ldi R16,185
xcall _cha_print
.dbline 763
; cha_print(0xbb,0xfa); //机
ldi R18,250
ldi R16,187
xcall _cha_print
.dbline 764
; cha_print(0xca,0xb1); //时
ldi R18,177
ldi R16,202
xcall _cha_print
.dbline 765
; cha_print(0xbc,0xe4); //间
ldi R18,228
ldi R16,188
xcall _cha_print
.dbline 767
; // cha_print(0x1b,0x36); //选择字符集1
; write_print(0x3a); //:
ldi R16,58
xcall _write_print
.dbline 768
; write_print(0x0d); //换行
ldi R16,13
xcall _write_print
.dbline 769
; }
L169:
.dbline 770
; if(a[0]==0xff)
ldd R24,y+5
cpi R24,255
brne L176
.dbline 771
; ;
xjmp L177
L176:
.dbline 773
; else
; {
.dbline 775
; //开机时间
; write_print(0x32); //2
ldi R16,50
xcall _write_print
.dbline 776
; write_print(0x30); //0
ldi R16,48
xcall _write_print
.dbline 777
; date_print(a[0]); //年
ldd R16,y+5
xcall _date_print
.dbline 778
; write_print(0x2f); //"/"
ldi R16,47
xcall _write_print
.dbline 779
; date_print(a[1]); //月
ldd R16,y+6
xcall _date_print
.dbline 780
; write_print(0x2f); //"/"
ldi R16,47
xcall _write_print
.dbline 781
; date_print(a[2]); //日
ldd R16,y+7
xcall _date_print
.dbline 782
; write_print(0x2f); //" "
ldi R16,47
xcall _write_print
.dbline 783
; date_print(a[3]); //时
ldd R16,y+8
xcall _date_print
.dbline 784
; write_print(0x3a); //":"
ldi R16,58
xcall _write_print
.dbline 785
; date_print(a[4]); //分
ldd R16,y+9
xcall _date_print
.dbline 786
; write_print(0x0d); //换行
ldi R16,13
xcall _write_print
.dbline 789
;
; // cha_print(0x1c,0x26); //设置汉字打印方式
; cha_print(0xbf,0xaa); //开
ldi R18,170
ldi R16,191
xcall _cha_print
.dbline 790
; cha_print(0xbb,0xfa); //机
ldi R18,250
ldi R16,187
xcall _cha_print
.dbline 791
; cha_print(0xca,0xb1); //时
ldi R18,177
ldi R16,202
xcall _cha_print
.dbline 792
; cha_print(0xbc,0xe4); //间
ldi R18,228
ldi R16,188
xcall _cha_print
.dbline 794
; // cha_print(0x1b,0x36); //选择字符集1
; write_print(0x3a); //:
ldi R16,58
xcall _write_print
.dbline 795
; write_print(0x0d); //换行
ldi R16,13
xcall _write_print
.dbline 800
;
;
;
; //编号
; cha_print(0xb1,0xe0); //编
ldi R18,224
ldi R16,177
xcall _cha_print
.dbline 801
; cha_print(0xba,0xc5); //号
ldi R18,197
ldi R16,186
xcall _cha_print
.dbline 802
; write_print(0x3a); //:
ldi R16,58
xcall _write_print
.dbline 803
; write_print(0x20); //空格
ldi R16,32
xcall _write_print
.dbline 804
; num_print(temp); //打印编号
mov R16,R20
xcall _num_print
.dbline 805
; write_print(0x0d); //换行
ldi R16,13
xcall _write_print
.dbline 806
; temp--;
dec R20
.dbline 807
; }
L177:
.dbline 808
L134:
.dbline 701
inc R22
L136:
.dbline 701
cpi R22,8
brsh X13
xjmp L133
X13:
.dbline 811
; }
;
; //标题
; write_print(0x20); //空格
ldi R16,32
xcall _write_print
.dbline 812
; cha_print(0xbf,0xaa); //开
ldi R18,170
ldi R16,191
xcall _cha_print
.dbline 813
; cha_print(0xb9,0xd8); //关
ldi R18,216
ldi R16,185
xcall _cha_print
.dbline 814
; cha_print(0xbb,0xfa); //机
ldi R18,250
ldi R16,187
xcall _cha_print
.dbline 815
; cha_print(0xbc,0xc7); //记
ldi R18,199
ldi R16,188
xcall _cha_print
.dbline 816
; cha_print(0xc2,0xbc); //录
ldi R18,188
ldi R16,194
xcall _cha_print
.dbline 817
; write_print(0x0d); //换行
ldi R16,13
xcall _write_print
.dbline 818
; cha_print(0x1b,0x4a); //走纸48点
ldi R18,74
ldi R16,27
xcall _cha_print
.dbline 819
; write_print(0x30);
ldi R16,48
xcall _write_print
.dbline -2
L130:
adiw R28,32
xcall pop_gset4
.dbline 0 ; func end
ret
.dbsym r temp 20 c
.dbsym r kkk 22 c
.dbsym l onoffbuff 21 A[11:11]c
.dbsym r temp1 10 i
.dbsym l a 5 A[16:16]c
.dbsym r c 12 c
.dbend
.dbfunc e zong _zong fV
; temp -> R20
.even
_zong::
xcall push_gset1
mov R20,R16
.dbline -1
.dbline 826
; }
;
;
;
; /*********************液晶指令集*******************************/
; void zong(uchar temp) //综合设置
; {
.dbline 827
; usart_transmit_char(0x1d);
ldi R16,29
xcall _usart_transmit_char
.dbline 828
; usart_transmit_char(0x77);
ldi R16,119
xcall _usart_transmit_char
.dbline 829
; usart_transmit_char(temp);
mov R16,R20
xcall _usart_transmit_char
.dbline -2
L182:
xcall pop_gset1
.dbline 0 ; func end
ret
.dbsym r temp 20 c
.dbend
.dbfunc e clear _clear fV
; temp -> R20
.even
_clear::
xcall push_gset1
mov R20,R16
.dbline -1
.dbline 833
; }
;
; void clear(uchar temp) //清屏
; {
.dbline 834
; usart_transmit_char(0x1b);
ldi R16,27
xcall _usart_transmit_char
.dbline 835
; usart_transmit_char(0x51);
ldi R16,81
xcall _usart_transmit_char
.dbline 836
; usart_transmit_char(temp);
mov R16,R20
xcall _usart_transmit_char
.dbline -2
L183:
xcall pop_gset1
.dbline 0 ; func end
ret
.dbsym r temp 20 c
.dbend
.dbfunc e colour _colour fV
; temp3 -> y+4
; temp2 -> R20
; temp1 -> R22
.even
_colour::
xcall push_gset2
mov R20,R18
mov R22,R16
.dbline -1
.dbline 841
; }
;
;
; void colour(uchar temp1,uchar temp2,uchar temp3) //设置字符颜色
; {
.dbline 842
; usart_transmit_char(0x1D);
ldi R16,29
xcall _usart_transmit_char
.dbline 843
; usart_transmit_char(0x75);
ldi R16,117
xcall _usart_transmit_char
.dbline 844
; usart_transmit_char(temp1);
mov R16,R22
xcall _usart_transmit_char
.dbline 845
; usart_transmit_char(temp2);
mov R16,R20
xcall _usart_transmit_char
.dbline 846
; usart_transmit_char(temp3);
ldd R16,y+4
xcall _usart_transmit_char
.dbline -2
L184:
xcall pop_gset2
.dbline 0 ; func end
ret
.dbsym l temp3 4 c
.dbsym r temp2 20 c
.dbsym r temp1 22 c
.dbend
.dbfunc e sound _sound fV
; temp1 -> R20
.even
_sound::
xcall push_gset1
mov R20,R16
.dbline -1
.dbline 849
; }
; void sound(uchar temp1) //蜂鸣器
; {
.dbline 850
; usart_transmit_char(0x1D);
ldi R16,29
xcall _usart_transmit_char
.dbline 851
; usart_transmit_char(0x6c);
ldi R16,108
xcall _usart_transmit_char
.dbline 852
; usart_transmit_char(temp1);
mov R16,R20
xcall _usart_transmit_char
.dbline -2
L185:
xcall pop_gset1
.dbline 0 ; func end
ret
.dbsym r temp1 20 c
.dbend
.dbfunc e xtzb _xtzb fV
; temp4 -> y+6
; temp3 -> y+4
; temp2 -> R20
; temp1 -> R22
.even
_xtzb::
xcall push_gset2
mov R20,R18
mov R22,R16
.dbline -1
.dbline 855
; }
; void xtzb(uchar temp1,uchar temp2,uchar temp3,uchar temp4) //系统坐标
; {
.dbline 856
; wdr();
xcall _wdr
.dbline 857
; usart_transmit_char(0x1b); //数字
ldi R16,27
xcall _usart_transmit_char
.dbline 858
; usart_transmit_char(0x7a); //1b 7a X1h X1L Y1h Y1L设置系统坐标
ldi R16,122
xcall _usart_transmit_char
.dbline 859
; usart_transmit_char(temp1); //设置系统坐标(x1,y1)
mov R16,R22
xcall _usart_transmit_char
.dbline 860
; usart_transmit_char(temp2);
mov R16,R20
xcall _usart_transmit_char
.dbline 861
; usart_transmit_char(temp3);
ldd R16,y+4
xcall _usart_transmit_char
.dbline 862
; usart_transmit_char(temp4);
ldd R16,y+6
xcall _usart_transmit_char
.dbline -2
L186:
xcall pop_gset2
.dbline 0 ; func end
ret
.dbsym l temp4 6 c
.dbsym l temp3 4 c
.dbsym r temp2 20 c
.dbsym r temp1 22 c
.dbend
.dbfunc e zfjj _zfjj fV
; temp -> R20
.even
_zfjj::
xcall push_gset1
mov R20,R16
.dbline -1
.dbline 867
; }
;
;
; void zfjj(uchar temp) //字符间距
; {
.dbline 868
; usart_transmit_char(0x1b);//1b 5a n设置字符间距
ldi R16,27
xcall _usart_transmit_char
.dbline 869
; usart_transmit_char(0x5a);
ldi R16,90
xcall _usart_transmit_char
.dbline 870
; usart_transmit_char(temp);//字符间距15点
mov R16,R20
xcall _usart_transmit_char
.dbline -2
L187:
xcall pop_gset1
.dbline 0 ; func end
ret
.dbsym r temp 20 c
.dbend
.dbfunc e fdbs _fdbs fV
; temp -> R20
.even
_fdbs::
xcall push_gset1
mov R20,R16
.dbline -1
.dbline 873
; }
; void fdbs(uchar temp) //放大倍数
; {
.dbline 874
; usart_transmit_char(0x1b); //1b 66 n 设置字符放大倍数
ldi R16,27
xcall _usart_transmit_char
.dbline 875
; usart_transmit_char(0x66);
ldi R16,102
xcall _usart_transmit_char
.dbline 876
; usart_transmit_char(temp);//字符放大3倍
mov R16,R20
xcall _usart_transmit_char
.dbline -2
L188:
xcall pop_gset1
.dbline 0 ; func end
ret
.dbsym r temp 20 c
.dbend
.dbfunc e juxing _juxing fV
; y2l -> y+14
; y2h -> y+12
; x2l -> y+10
; x2h -> y+8
; y1l -> y+6
; y1h -> y+4
; x1l -> R20
; x1h -> R22
.even
_juxing::
xcall push_gset2
mov R20,R18
mov R22,R16
.dbline -1
.dbline 880
; }
; void juxing(uchar x1h,uchar x1l,uchar y1h,uchar y1l, //画矩形
; uchar x2h,uchar x2l,uchar y2h,uchar y2l)
; {
.dbline 881
; wdr();
xcall _wdr
.dbline 882
; usart_transmit_char(0x1b);
ldi R16,27
xcall _usart_transmit_char
.dbline 883
; usart_transmit_char(0x6a);
ldi R16,106
xcall _usart_transmit_char
.dbline 884
; usart_transmit_char(x1h); //设置系统坐标(x1,y1)
mov R16,R22
xcall _usart_transmit_char
.dbline 885
; usart_transmit_char(x1l);
mov R16,R20
xcall _usart_transmit_char
.dbline 886
; usart_transmit_char(y1h);
ldd R16,y+4
xcall _usart_transmit_char
.dbline 887
; wdr();
xcall _wdr
.dbline 888
; usart_transmit_char(y1l);
ldd R16,y+6
xcall _usart_transmit_char
.dbline 889
; usart_transmit_char(x2h); //设置系统坐标(x2,y2)
ldd R16,y+8
xcall _usart_transmit_char
.dbline 890
; usart_transmit_char(x2l);
ldd
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -