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

📄 sig125_100hz.lst

📁 C语言代码
💻 LST
📖 第 1 页 / 共 2 页
字号:


HI-TECH Software PICC Macro Assembler V8.02PL1
                                                      Wed Jun 18 20:51:41 2008


     1                           	processor	16F73
     2                           	opt	pw 79
     3                           	psect	__Z49231UD_,global,delta=1
     4                           	psect	text0,local,class=CODE,delta=2
     5                           	psect	config,global,class=CONFIG,delta=2
     6                           	psect	text1,local,class=CODE,delta=2
     7                           	psect	intcode,global,class=CODE,delta=2
     8                           	psect	intsave_1,global,ovrld,class=BANK1,space
      +                          =1,delta=1
     9                           	psect	intsave_0,global,ovrld,class=BANK0,space
      +                          =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	rbss_0,global,class=BANK0,space=1,delta=
      +                          1
    15  0000                     
    16  0000                     
    17  0000                     
    18  0000                     
    19  0000                     
    20  0000                     
    21  0000                     
    22  0000                     
    23  0000                     
    24  0000                     	;#
    25                           
    26                           	psect	text0
    27  07C7                     _ini
    28                           ;	_i assigned to ?a_ini+0
    29  0000                     _ini$i	set	?a_ini
    30                           ;	_j assigned to ?a_ini+2
    31  0000                     _ini$j	set	?a_ini+2
    32                           ;sig125_100Hz.c: 56: unsigned int i,j;
    33  07C7  0183               	clrf	3	;select bank 0
    34  07C8  0187               	clrf	7	;volatile
    35                           ;sig125_100Hz.c: 59: TRISC = 0;
    36  07C9  1683               	bsf	3,5
    37  07CA  0187               	clrf	7	;volatile
    38                           ;sig125_100Hz.c: 61: for (i=200;i;i--) {
    39  07CB  30C8               	movlw	200
    40  07CC  1283               	bcf	3,5
    41  07CD  00A4               	movwf	?a_ini
    42  07CE  01A5               	clrf	?a_ini+1
    43  07CF  2FE1               	goto	l5
    44  07D0                     l2
    45                           ;sig125_100Hz.c: 62: for (j=1000;j;j--) {;}
    46  07D0  30E8               	movlw	232
    47  07D1  00A6               	movwf	?a_ini+2
    48  07D2  3003               	movlw	3
    49  07D3  00A7               	movwf	?a_ini+3
    50  07D4                     l9
    51  07D4  0827               	movf	?a_ini+3,w
    52  07D5  0426               	iorwf	?a_ini+2,w
    53  07D6  1903               	btfsc	3,2
    54  07D7  2FDD               	goto	l7
    55  07D8  08A6               	movf	?a_ini+2
    56  07D9  1903               	btfsc	3,2
    57  07DA  03A7               	decf	?a_ini+3
    58  07DB  03A6               	decf	?a_ini+2
    59  07DC  2FD4               	goto	l9
    60  07DD                     l7
    61                           ;sig125_100Hz.c: 63: }
    62  07DD  08A4               	movf	?a_ini
    63  07DE  1903               	btfsc	3,2
    64  07DF  03A5               	decf	?a_ini+1
    65  07E0  03A4               	decf	?a_ini
    66  07E1                     l5
    67  07E1  0825               	movf	?a_ini+1,w
    68  07E2  0424               	iorwf	?a_ini,w
    69  07E3  1D03               	btfss	3,2
    70  07E4  2FD0               	goto	l2
    71                           ;sig125_100Hz.c: 65: T2CON = 0b00000000;
    72  07E5  0192               	clrf	18	;volatile
    73                           ;sig125_100Hz.c: 66: PR2 = 199;
    74  07E6  30C7               	movlw	-57
    75  07E7  1683               	bsf	3,5
    76  07E8  0092               	movwf	18	;volatile
    77                           ;sig125_100Hz.c: 67: TMR2 = 0;
    78  07E9  1283               	bcf	3,5
    79  07EA  0191               	clrf	17	;volatile
    80                           ;sig125_100Hz.c: 68: TMR2IF = 0;
    81  07EB  108C               	bcf	12,1
    82                           ;sig125_100Hz.c: 69: TMR2IE = 1;
    83  07EC  1683               	bsf	3,5
    84  07ED  148C               	bsf	12,1
    85                           ;sig125_100Hz.c: 70: PEIE = 1;
    86  07EE  170B               	bsf	11,6
    87                           ;sig125_100Hz.c: 71: GIE = 1;
    88  07EF  178B               	bsf	11,7
    89                           ;sig125_100Hz.c: 73: oBuf = 0;
    90  07F0  1283               	bcf	3,5
    91  07F1  01A0               	clrf	_oBuf
    92                           ;sig125_100Hz.c: 74: cnt[0] = (((1000000 / 100)
      +                           / 125) * 57 / 100);
    93  07F2  302D               	movlw	45
    94  07F3  00A1               	movwf	_cnt
    95                           ;sig125_100Hz.c: 75: cnt[2] = ((1000000 / 100) 
      +                          / 125) - (((1000000 / 100) / 125) / 3);
    96  07F4  3036               	movlw	54
    97  07F5  00A3               	movwf	_cnt+2
    98                           ;sig125_100Hz.c: 76: cnt[1] = cnt[2] - (((10000
      +                          00 / 100) / 125) / 3);
    99  07F6  3EE6               	addlw	-26
   100  07F7  00A2               	movwf	_cnt+1
   101                           ;sig125_100Hz.c: 77: }
   102  07F8  0008               	return
   103                           ;sig125_100Hz.c: 97: void main(void)
   104                           ;sig125_100Hz.c: 98: {
   105  07F9                     _main
   106                           ;sig125_100Hz.c: 99: ini();
   107  07F9  27C7               	fcall	_ini
   108                           ;sig125_100Hz.c: 100: oBuf = 0b00000100;
   109  07FA  3004               	movlw	4
   110  07FB  00A0               	movwf	_oBuf
   111                           ;sig125_100Hz.c: 101: PORTC = oBuf;
   112  07FC  0820               	movf	_oBuf,w
   113  07FD  0087               	movwf	7	;volatile
   114                           ;sig125_100Hz.c: 102: TMR2ON = 1;
   115  07FE  1512               	bsf	18,2
   116                           ;sig125_100Hz.c: 104: while (1) {;}
   117  07FF                     l18
   118  07FF  2FFF               	goto	l18
   119                           
   120                           	psect	config
   121  2007  3FA2               	dw	16290	;#
   122                           
   123                           	psect	intcode
   124                           ;sig125_100Hz.c: 79: void interrupt isr(void)
   125                           ;sig125_100Hz.c: 80: {
   126  000D                     _isr
   127  000D                     int_func
   128                           ;	_j assigned to ?a_isr+0
   129  0000                     _isr$j	set	?a_isr
   130                           ;	_i assigned to ?a_isr+1
   131  0000                     _isr$i	set	?a_isr+1
   132                           ;sig125_100Hz.c: 81: unsigned char i,j;
   133  000D  0183               	clrf	3	;select bank 0
   134  000E  1C8C               	btfss	12,1
   135  000F  2834               	goto	l10
   136                           ;sig125_100Hz.c: 84: j = 0b00010000;
   137  0010  3010               	movlw	16
   138  0011  00A8               	movwf	?a_isr
   139                           ;sig125_100Hz.c: 85: for (i=3;i;i--) {
   140  0012  3003               	movlw	3
   141  0013  00A9               	movwf	?a_isr+1
   142  0014                     l15
   143  0014  08A9               	movf	?a_isr+1
   144  0015  1903               	btfsc	3,2
   145  0016  2831               	goto	l13
   146                           ;sig125_100Hz.c: 86: if (! --cnt[i-1]) {
   147  0017  0329               	decf	?a_isr+1,w
   148  0018  3E21               	addlw	_cnt
   149  0019  0084               	movwf	4
   150  001A  1383               	bcf	3,7
   151  001B  0B80               	decfsz	0
   152  001C  282B               	goto	l16
   153                           ;sig125_100Hz.c: 87: oBuf ^= j;
   154  001D  0828               	movf	?a_isr,w
   155  001E  06A0               	xorwf	_oBuf
   156                           ;sig125_100Hz.c: 88: cnt[i-1] = (oBuf&j) ? (((1
      +                          000000 / 100) / 125) * 57 / 100) : (((1000000 /
      +                           100) / 125) - (((1000000 / 100) / 125) * 57 / 
      +                          100));
   157  001F  0329               	decf	?a_isr+1,w
   158  0020  3E21               	addlw	_cnt
   159  0021  0084               	movwf	4
   160  0022  1383               	bcf	3,7
   161  0023  0820               	movf	_oBuf,w
   162  0024  0528               	andwf	?a_isr,w
   163  0025  1D03               	btfss	3,2
   164  0026  2829               	goto	u66
   165  0027  3023               	movlw	35
   166  0028  282A               	goto	u67
   167  0029                     u66
   168  0029  302D               	movlw	45
   169  002A                     u67
   170  002A  0080               	movwf	0
   171  002B                     l16
   172                           ;sig125_100Hz.c: 89: }
   173  002B  1003               	bcf	3,0
   174  002C  1283               	bcf	3,5
   175  002D  1303               	bcf	3,6	;carry unused
   176  002E  0CA8               	rrf	?a_isr
   177                           ;sig125_100Hz.c: 91: }
   178  002F  03A9               	decf	?a_isr+1
   179  0030  2814               	goto	l15
   180  0031                     l13
   181                           ;sig125_100Hz.c: 92: PORTC = oBuf;
   182  0031  0820               	movf	_oBuf,w
   183  0032  0087               	movwf	7	;volatile
   184                           ;sig125_100Hz.c: 93: TMR2IF = 0;
   185  0033  108C               	bcf	12,1
   186                           ;sig125_100Hz.c: 94: }
   187  0034                     l10
   188                           
   189                           	psect	intsave_1
   190  00FF                     	ds	1
   191                           
   192                           	psect	intsave_0
   193  007F                     saved_w
   194  007F                     	ds	1
   195                           
   196                           	psect	intret
   197  0034  082B               	movf	saved_fsr,w
   198  0035  0084               	movwf	4	;restore FSR
   199  0036  082C               	movf	saved_pclath,w
   200  0037  008A               	movwf	10
   201  0038                     int_restore
   202  0038  082A               	movf	saved_status,w
   203  0039  0083               	movwf	3
   204  003A  0EFF               	swapf	saved_w
   205  003B  0E7F               	swapf	saved_w,w
   206  003C  0009               	retfie
   207                           
   208                           	psect	intentry
   209  0004                     int_entry
   210  0004  00FF               	movwf	saved_w
   211  0005  0803               	movf	3,w
   212  0006  0183               	clrf	3
   213  0007  00AA               	movwf	saved_status
   214  0008  0804               	movf	4,w
   215  0009  00AB               	movwf	saved_fsr
   216  000A  080A               	movf	10,w
   217  000B  00AC               	movwf	saved_pclath

⌨️ 快捷键说明

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