📄 main.lis
字号:
060C ; Display_VOL();
060C 4BDD xcall _Display_VOL
060E .dbline 227
060E ; }
060E L49:
060E .dbline 229
060E ;
060E ; if(cn == 3)//输入预定电压值完毕
060E 80912700 lds R24,_cn
0612 8330 cpi R24,3
0614 59F4 brne L73
0616 .dbline 230
0616 ; {
0616 .dbline 232
0616 ;
0616 ; if(KeyScan()==14)//等待ENTER键按下
0616 0ADE xcall _KeyScan
0618 0E30 cpi R16,14
061A E0E0 ldi R30,0
061C 1E07 cpc R17,R30
061E 31F4 brne L75
0620 .dbline 233
0620 ; {
0620 .dbline 234
0620 ; cn=0;
0620 2224 clr R2
0622 20922700 sts _cn,R2
0626 .dbline 235
0626 ; ENTER=1;
0626 81E0 ldi R24,1
0628 80932500 sts _ENTER,R24
062C .dbline 236
062C ; }
062C L75:
062C .dbline 237
062C ; }
062C L73:
062C .dbline 239
062C ;
062C ; if(KeyScan()==11)
062C FFDD xcall _KeyScan
062E 0B30 cpi R16,11
0630 E0E0 ldi R30,0
0632 1E07 cpc R17,R30
0634 19F4 brne L77
0636 .dbline 240
0636 ; {
0636 .dbline 241
0636 ; ahead_flag=1;
0636 81E0 ldi R24,1
0638 80932300 sts _ahead_flag,R24
063C .dbline 242
063C ; }
063C L77:
063C .dbline 243
063C ; if(KeyScan()==10)
063C F7DD xcall _KeyScan
063E 0A30 cpi R16,10
0640 E0E0 ldi R30,0
0642 1E07 cpc R17,R30
0644 19F4 brne L79
0646 .dbline 244
0646 ; {
0646 .dbline 245
0646 ; back_flag=1;
0646 81E0 ldi R24,1
0648 80932400 sts _back_flag,R24
064C .dbline 246
064C ; }
064C L79:
064C .dbline 247
064C EFDD xcall _KeyScan
064E 0C30 cpi R16,12
0650 E0E0 ldi R30,0
0652 1E07 cpc R17,R30
0654 19F4 brne L81
0656 .dbline 248
0656 .dbline 249
0656 81E0 ldi R24,1
0658 80932200 sts _clear_flag,R24
065C .dbline 250
065C L81:
065C .dbline -2
065C L48:
065C 0E940000 xcall pop_gset2
0660 .dbline 0 ; func end
0660 0895 ret
0662 .dbsym r i 22 i
0662 .dbsym r temp 20 i
0662 .dbsym r keycode 22 c
0662 .dbend
.area data(ram, con, rel)
0058 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0058 _auto_flag:
0058 .blkb 1
.area idata
0058 00 .byte 0
.area data(ram, con, rel)
0059 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0059 .dbsym s auto_flag _auto_flag c
.area text(rom, con, rel)
0662 .dbfile E:\张秋伟\我的实验\数控电压源\main.c
0662 .dbfunc e signal_function _signal_function fV
0662 ; i -> R20,R21
.even
0662 _signal_function::
0662 0E940000 xcall push_gset1
0666 .dbline -1
0666 .dbline 258
0666 ; if(KeyScan()== 12)
0666 ; {
0666 ; clear_flag=1;
0666 ; }
0666 ;
0666 ;
0666 ;
0666 ; }
0666 ;
0666 ; static uchar auto_flag=0;
0666 ; void signal_function(void)
0666 ; {
0666 .dbline 259
0666 ; switch(auto_flag)
0666 40915800 lds R20,_auto_flag
066A 5527 clr R21
066C 4030 cpi R20,0
066E 4507 cpc R20,R21
0670 A1F0 breq L87
0672 X30:
0672 4130 cpi R20,1
0674 E0E0 ldi R30,0
0676 5E07 cpc R21,R30
0678 21F1 breq L91
067A 4230 cpi R20,2
067C E0E0 ldi R30,0
067E 5E07 cpc R21,R30
0680 09F4 brne X34
0682 46C0 xjmp L97
0684 X34:
0684 4330 cpi R20,3
0686 E0E0 ldi R30,0
0688 5E07 cpc R21,R30
068A 09F4 brne X35
068C 6CC0 xjmp L103
068E X35:
068E 4430 cpi R20,4
0690 E0E0 ldi R30,0
0692 5E07 cpc R21,R30
0694 09F4 brne X36
0696 8BC0 xjmp L110
0698 X36:
0698 AEC0 xjmp L84
069A X31:
069A .dbline 260
069A ; {
069A L87:
069A .dbline 261
069A ; case 0:Write_Position(1,12);
069A 2CE0 ldi R18,12
069C 30E0 ldi R19,0
069E 01E0 ldi R16,1
06A0 10E0 ldi R17,0
06A2 0E940000 xcall _Write_Position
06A6 .dbline 262
06A6 ; Write_String("off");
06A6 00E0 ldi R16,<L88
06A8 10E0 ldi R17,>L88
06AA 0E940000 xcall _Write_String
06AE .dbline 263
06AE ; if(KeyScan()==15)
06AE BEDD xcall _KeyScan
06B0 0F30 cpi R16,15
06B2 E0E0 ldi R30,0
06B4 1E07 cpc R17,R30
06B6 09F0 breq X37
06B8 9EC0 xjmp L85
06BA X37:
06BA .dbline 264
06BA ; auto_flag=1;
06BA 81E0 ldi R24,1
06BC 80935800 sts _auto_flag,R24
06C0 .dbline 265
06C0 ; break;
06C0 9AC0 xjmp L85
06C2 L91:
06C2 .dbline 267
06C2 ; case 1:
06C2 ; Write_Position(1,12);
06C2 2CE0 ldi R18,12
06C4 30E0 ldi R19,0
06C6 01E0 ldi R16,1
06C8 10E0 ldi R17,0
06CA 0E940000 xcall _Write_Position
06CE .dbline 268
06CE ; Write_String("+ ");
06CE 00E0 ldi R16,<L92
06D0 10E0 ldi R17,>L92
06D2 0E940000 xcall _Write_String
06D6 .dbline 269
06D6 ; if(Set_Value<99)
06D6 80911600 lds R24,_Set_Value
06DA 90911700 lds R25,_Set_Value+1
06DE 8336 cpi R24,99
06E0 E0E0 ldi R30,0
06E2 9E07 cpc R25,R30
06E4 40F4 brsh L93
06E6 .dbline 270
06E6 ; {
06E6 .dbline 271
06E6 ; Set_Value++;
06E6 0196 adiw R24,1
06E8 90931700 sts _Set_Value+1,R25
06EC 80931600 sts _Set_Value,R24
06F0 .dbline 272
06F0 ; DAC_DATA=Set_Value;
06F0 88BB out 0x18,R24
06F2 .dbline 273
06F2 ; control();
06F2 0ED1 xcall _control
06F4 .dbline 274
06F4 ; }
06F4 03C0 xjmp L94
06F6 L93:
06F6 .dbline 276
06F6 ; else
06F6 ; auto_flag=2;
06F6 82E0 ldi R24,2
06F8 80935800 sts _auto_flag,R24
06FC L94:
06FC .dbline 277
06FC ; if(KeyScan()==15)
06FC 97DD xcall _KeyScan
06FE 0F30 cpi R16,15
0700 E0E0 ldi R30,0
0702 1E07 cpc R17,R30
0704 09F0 breq X38
0706 77C0 xjmp L85
0708 X38:
0708 .dbline 278
0708 ; auto_flag=2;
0708 82E0 ldi R24,2
070A 80935800 sts _auto_flag,R24
070E .dbline 279
070E ; break;
070E 73C0 xjmp L85
0710 L97:
0710 .dbline 281
0710 ; case 2:
0710 ; Write_Position(1,12);
0710 2CE0 ldi R18,12
0712 30E0 ldi R19,0
0714 01E0 ldi R16,1
0716 10E0 ldi R17,0
0718 0E940000 xcall _Write_Position
071C .dbline 282
071C ; Write_String("- ");
071C 00E0 ldi R16,<L98
071E 10E0 ldi R17,>L98
0720 0E940000 xcall _Write_String
0724 .dbline 283
0724 ; if(Set_Value>0)
0724 20901600 lds R2,_Set_Value
0728 30901700 lds R3,_Set_Value+1
072C 2220 tst R2
072E 11F4 brne X32
0730 3320 tst R3
0732 61F0 breq L99
0734 X32:
0734 .dbline 284
0734 ; {
0734 .dbline 285
0734 ; Set_Value--;
0734 80911600 lds R24,_Set_Value
0738 90911700 lds R25,_Set_Value+1
073C 0197 sbiw R24,1
073E 90931700 sts _Set_Value+1,R25
0742 80931600 sts _Set_Value,R24
0746 .dbline 286
0746 ; DAC_DATA=Set_Value;
0746 88BB out 0x18,R24
0748 .dbline 287
0748 ; control();
0748 E3D0 xcall _control
074A .dbline 288
074A ; }
074A 03C0 xjmp L100
074C L99:
074C .dbline 290
074C ; else
074C ; auto_flag=1;
074C 81E0 ldi R24,1
074E 80935800 sts _auto_flag,R24
0752 L100:
0752 .dbline 291
0752 ; if(KeyScan()==15)
0752 6CDD xcall _KeyScan
0754 0F30 cpi R16,15
0756 E0E0 ldi R30,0
0758 1E07 cpc R17,R30
075A 09F0 breq X39
075C 4CC0 xjmp L85
075E X39:
075E .dbline 292
075E ; auto_flag=3;
075E 83E0 ldi R24,3
0760 80935800 sts _auto_flag,R24
0764 .dbline 293
0764 ; break;
0764 48C0 xjmp L85
0766 L103:
0766 .dbline 294
0766 ; case 3:Write_Position(1,12);
0766 2CE0 ldi R18,12
0768 30E0 ldi R19,0
076A 01E0 ldi R16,1
076C 10E0 ldi R17,0
076E 0E940000 xcall _Write_Position
0772 .dbline 295
0772 ; Write_String("squ");
0772 00E0 ldi R16,<L104
0774 10E0 ldi R17,>L104
0776 0E940000 xcall _Write_String
077A 14C0 xjmp L106
077C L105:
077C .dbline 297
077C ; while(auto_flag ==3)
077C ; {
077C .dbline 298
077C ; DAC_DATA=0x00;
077C 2224 clr R2
077E 28BA out 0x18,R2
0780 .dbline 299
0780 ; delay_nms(50);
0780 02E3 ldi R16,50
0782 10E0 ldi R17,0
0784 0E940000 xcall _delay_nms
0788 .dbline 300
0788 ; DAC_DATA=0xff;
0788 8FEF ldi R24,255
078A 88BB out 0x18,R24
078C .dbline 301
078C ; delay_nms(10);
078C
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -