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

📄 main.lst

📁 基于PIC16F877 温湿度控制器原代码及原理图PCB图
💻 LST
📖 第 1 页 / 共 5 页
字号:


HI-TECH Software PICC Macro Assembler V8.05PL1
                                                      Fri Dec 12 10:05:59 2008


     1                           	processor	16F877A
     2                           	opt	pw 79
     3                           	psect	__Z49231UD_,global,delta=1
     4                           	psect	strings,global,class=STRING,delta=2
     5                           	psect	const1,local,class=CONST,delta=2
     6                           	psect	text0,local,class=CODE,delta=2
     7                           	psect	text2,local,class=CODE,delta=2
     8                           	psect	intcode,global,class=CODE,delta=2
     9                           	psect	intsave_0,global,ovrld,class=COMBANK,spa
      +                          ce=1,delta=1
    10                           	psect	intret,global,class=CODE,delta=2
    11                           	psect	intentry,global,class=CODE,delta=2
    12                           	psect	intsave,global,class=BANK0,space=1,delta
      +                          =1
    13                           	psect	text3,local,class=CODE,delta=2
    14                           	psect	text6,local,class=CODE,delta=2
    15                           	psect	text10,local,class=CODE,delta=2
    16                           	psect	const2,local,class=CONST,delta=2
    17                           	psect	text11,local,class=CODE,delta=2
    18                           	psect	text12,local,class=CODE,delta=2
    19                           	psect	text14,local,class=CODE,delta=2
    20                           	psect	text15,local,class=CODE,delta=2
    21                           	psect	rbss_0,global,class=BANK0,space=1,delta=
      +                          1
    22                           	psect	rbss_1,global,class=BANK1,space=1,delta=
      +                          1
    23                           	psect	rbss_2,global,class=BANK2,space=1,delta=
      +                          1
    24                           	psect	temp,global,ovrld,class=BANK0,space=1,de
      +                          lta=1
    25  0000                     
    26  0000                     
    27  0000                     
    28  0000                     
    29  0000                     
    30  0000                     
    31  0000                     
    32  0000                     
    33  0000                     
    34  0000                     
    35                           
    36                           	psect	const1
    37  0839  0782               	addwf	2
    38  083A                     _dispcod
    39  083A  343F               	retlw	63
    40  083B  3406               	retlw	6
    41  083C  345B               	retlw	91
    42  083D  344F               	retlw	79
    43  083E  3466               	retlw	102
    44  083F  346D               	retlw	109
    45  0840  347D               	retlw	125
    46  0841  3407               	retlw	7
    47  0842  347F               	retlw	127
    48  0843  346F               	retlw	111
    49  0844  3477               	retlw	119
    50  0845  347C               	retlw	124
    51  0846  3400               	retlw	0
    52                           
    53                           	psect	text0
    54  0E94                     _watchDOG
    55                           ;main.c: 36: if(RC3) RC3 = 0;
    56  0E94  0183               	clrf	3	;select bank 0
    57  0E95  1D87               	btfss	7,3
    58  0E96  2E99               	goto	l5
    59  0E97  1187               	bcf	7,3
    60                           ;main.c: 37: else RC3 = 1;
    61  0E98  0008               	return
    62  0E99                     l5
    63  0E99  1587               	bsf	7,3
    64                           ;main.c: 38: }
    65  0E9A  0008               	return
    66                           ;main.c: 160: void Systemyinit(void)
    67                           ;main.c: 161: {
    68  0E9B                     _Systemyinit
    69                           ;main.c: 162: ADCON1=0X04;
    70  0E9B  3004               	movlw	4
    71  0E9C  1683               	bsf	3,5
    72  0E9D  1303               	bcf	3,6	;carry unused
    73  0E9E  009F               	movwf	31	;volatile
    74                           ;main.c: 163: OPTION = 0x07;
    75  0E9F  3007               	movlw	7
    76  0EA0  0081               	movwf	1
    77                           ;main.c: 164: TRISA5 =0;
    78  0EA1  1285               	bcf	5,5
    79                           ;main.c: 165: TRISA4 =0;
    80  0EA2  1205               	bcf	5,4
    81                           ;main.c: 166: TRISE2 =0;
    82  0EA3  1109               	bcf	9,2
    83                           ;main.c: 167: TRISE1 =0;
    84  0EA4  1089               	bcf	9,1
    85                           ;main.c: 168: TRISE0 =0;
    86  0EA5  1009               	bcf	9,0
    87                           ;main.c: 170: TRISA2 =0;
    88  0EA6  1105               	bcf	5,2
    89                           ;main.c: 171: TRISA1 =1;
    90  0EA7  1485               	bsf	5,1
    91                           ;main.c: 172: TRISA0 =1;
    92  0EA8  1405               	bsf	5,0
    93                           ;main.c: 174: TRISB5 =0;
    94  0EA9  1286               	bcf	6,5
    95                           ;main.c: 175: TRISB4 =1;
    96  0EAA  1606               	bsf	6,4
    97                           ;main.c: 176: TRISB2 =1;
    98  0EAB  1506               	bsf	6,2
    99                           ;main.c: 177: TRISB1 =1;
   100  0EAC  1486               	bsf	6,1
   101                           ;main.c: 178: TRISB0 =1;
   102  0EAD  1406               	bsf	6,0
   103                           ;main.c: 179: AD_result[0]=0;
   104  0EAE  01A5               	clrf	_AD_result^(0+128)
   105  0EAF  01A6               	clrf	(_AD_result+1)^(0+128)
   106                           ;main.c: 180: AD_result[1]=0;
   107  0EB0  01A7               	clrf	(_AD_result+2)^(0+128)
   108  0EB1  01A8               	clrf	(_AD_result+3)^(0+128)
   109                           ;main.c: 181: HumidityData[0] = 0;
   110  0EB2  1283               	bcf	3,5
   111  0EB3  1703               	bsf	3,6
   112  0EB4  0191               	clrf	_HumidityData^(0+256)
   113                           ;main.c: 182: HumidityData[1] = 0;
   114  0EB5  0192               	clrf	(_HumidityData+1)^(0+256)
   115                           ;main.c: 183: Key_press.Key_value == 0x00;
   116  0EB6  1683               	bsf	3,5
   117  0EB7  1303               	bcf	3,6	;carry unused
   118  0EB8  1387               	bcf	7,7
   119                           ;main.c: 186: TRISC6 =0;
   120  0EB9  1307               	bcf	7,6
   121                           ;main.c: 187: TRISC5 =0;
   122  0EBA  1287               	bcf	7,5
   123                           ;main.c: 188: TRISC4 =0;
   124  0EBB  1207               	bcf	7,4
   125                           ;main.c: 190: TRISC3 = 0;
   126  0EBC  1187               	bcf	7,3
   127                           ;main.c: 191: TRISC2 = 1;
   128  0EBD  1507               	bsf	7,2
   129                           ;main.c: 192: TRISC1 = 1;
   130  0EBE  1487               	bsf	7,1
   131                           ;main.c: 193: TRISC0 = 0;
   132  0EBF  1007               	bcf	7,0
   133                           ;main.c: 194: TRISD = 0;
   134  0EC0  0188               	clrf	8	;volatile
   135                           ;main.c: 195: RE0=1;
   136  0EC1  1283               	bcf	3,5
   137  0EC2  1409               	bsf	9,0
   138                           ;main.c: 196: RE1=1;
   139  0EC3  1489               	bsf	9,1
   140                           ;main.c: 197: RE2=1;
   141  0EC4  1509               	bsf	9,2
   142                           ;main.c: 198: RC0=1;
   143  0EC5  1407               	bsf	7,0
   144                           ;main.c: 199: RC4=1;
   145  0EC6  1607               	bsf	7,4
   146                           ;main.c: 200: RC5=1;
   147  0EC7  1687               	bsf	7,5
   148                           ;main.c: 201: RC6=1;
   149  0EC8  1707               	bsf	7,6
   150                           ;main.c: 202: RC7=1;
   151  0EC9  1787               	bsf	7,7
   152                           ;main.c: 203: RA2=0;
   153  0ECA  1105               	bcf	5,2
   154                           ;main.c: 204: RA4=0;
   155  0ECB  1205               	bcf	5,4
   156                           ;main.c: 205: RA5=0;
   157  0ECC  1285               	bcf	5,5
   158                           ;main.c: 206: RB5=0;
   159  0ECD  1286               	bcf	6,5
   160                           ;main.c: 207: TMR0 = 240;
   161  0ECE  30F0               	movlw	-16
   162  0ECF  0081               	movwf	1	;volatile
   163                           ;main.c: 208: T0IE = 1;
   164  0ED0  168B               	bsf	11,5
   165                           ;main.c: 209: PEIE = 1;
   166  0ED1  170B               	bsf	11,6
   167                           ;main.c: 210: GIE = 1;
   168  0ED2  178B               	bsf	11,7
   169                           ;main.c: 211: }
   170  0ED3  0008               	return
   171                           ;main.c: 39: void main(void)
   172                           ;main.c: 40: {
   173  0ED4                     _main
   174                           ;main.c: 41: Systemyinit();
   175  0ED4  269B               	fcall	_Systemyinit
   176                           ;main.c: 42: watchDOG();
   177  0ED5  2694               	fcall	_watchDOG
   178                           ;main.c: 43: RA4 = 0;
   179  0ED6  1205               	bcf	5,4
   180                           ;main.c: 44: RA5 = 0;
   181  0ED7  1285               	bcf	5,5
   182                           ;main.c: 45: RB5 = 0;
   183  0ED8  1286               	bcf	6,5
   184  0ED9                     l9
   185                           ;main.c: 46: while(1)
   186                           ;main.c: 47: {
   187  0ED9  26DF  120A  158A   	fcall	_TaskLoop
   188                           ;main.c: 51: RA4=1;
   189  0EDC  1605               	bsf	5,4
   190                           ;main.c: 52: RA5=1;
   191  0EDD  1685               	bsf	5,5
   192                           ;main.c: 55: }
   193  0EDE  2ED9               	goto	l9
   194                           ;main.c: 213: void TaskLoop(void)
   195                           ;main.c: 214: { unsigned char i;
   196  0EDF                     _TaskLoop
   197                           ;	_i assigned to ?a_TaskLoop+0
   198  0000                     _TaskLoop$i	set	?a_TaskLoop
   199                           ;main.c: 215: if(Count100ms==1)
   200  0EDF  1683               	bsf	3,5
   201  0EE0  1303               	bcf	3,6	;carry unused
   202  0EE1  0B20               	decfsz	_Count100ms^(0+128),w
   203  0EE2  2EE3               	goto	l30
   204  0EE3                     l30
   205                           ;main.c: 216: {
   206  0EE3  0B23               	decfsz	_Count500ms^(0+128),w
   207  0EE4  2EEF               	goto	l31
   208                           ;main.c: 220: {
   209  0EE5  1283               	bcf	3,5
   210  0EE6  0AA1               	incf	?a_TaskLoop
   211                           ;main.c: 222: watchDOG();
   212  0EE7  2694               	fcall	_watchDOG
   213                           ;main.c: 223: Count500ms = 0;
   214  0EE8  1683               	bsf	3,5
   215  0EE9  01A3               	clrf	_Count500ms^(0+128)
   216                           ;main.c: 224: Pro_Key();
   217  0EEA  120A  118A  23B8   	fcall	_Pro_Key
      +       120A  158A         
   218  0EEF                     l31
   219                           ;main.c: 238: }
   220  0EEF  1683               	bsf	3,5
   221  0EF0  0B22               	decfsz	_Count1s^(0+128),w
   222  0EF1  2F00               	goto	l32
   223                           ;main.c: 242: {
   224  0EF2  01A2               	clrf	_Count1s^(0+128)
   225                           ;main.c: 244: AD_Change(0);
   226  0EF3  3000               	movlw	0
   227  0EF4  120A  118A  2269   	fcall	_AD_Change
   228                           ;main.c: 245: AD_Change(1);
   229  0EF7  3001               	movlw	1
   230  0EF8  120A  118A  2269   	fcall	_AD_Change
   231                           ;main.c: 246: StartHumidityMeasure();
   232  0EFB  120A  118A  265A   	fcall	_StartHumidityMeasure
      +       120A  158A         
   233  0F00                     l32
   234                           ;main.c: 247: }
   235  0F00  1283               	bcf	3,5
   236  0F01  0008               	return
   237                           
   238                           	psect	intcode
   239                           ;main.c: 57: void interrupt ISR(void)
   240                           ;main.c: 58: {
   241  0027                     _ISR
   242  0027                     int_func
   243                           ;	_Cycle_H assigned to ?a_ISR+0
   244  0000                     _ISR$Cycle_H	set	?a_ISR
   245                           ;	_Cycle_L assigned to ?a_ISR+2

⌨️ 快捷键说明

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