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

📄 sed1565drive.lst

📁 液晶显示
💻 LST
📖 第 1 页 / 共 3 页
字号:


HI-TECH Software PICC Macro Assembler V8.05PL2
Serial number: HCPIC-88888                            Mon Mar 17 10:44:29 2008

Licensed to: ONE TWO
     1                           	processor	16F877A
     2                           	opt	pw 79
     3                           	psect	__Z88888RS_,global,delta=1
     4                           	psect	text3,local,class=CODE,delta=2
     5                           	psect	text4,local,class=CODE,delta=2
     6                           	psect	text6,local,class=CODE,delta=2
     7                           	psect	text8,local,class=CODE,delta=2
     8                           	psect	strings,global,class=STRING,delta=2
     9                           	psect	const1,local,class=CONST,delta=2
    10                           	psect	const2,local,class=CONST,delta=2
    11                           	psect	const3,local,class=CONST,delta=2
    12                           	psect	const4,local,class=CONST,delta=2
    13                           	psect	text11,local,class=CODE,delta=2
    14                           	psect	temp,global,ovrld,class=BANK0,space=1,de
      +                          lta=1
    15  0000                     
    16  0000                     
    17  0000                     
    18  0000                     
    19  0000                     
    20  0000                     
    21  0000                     
    22  0000                     
    23  0000                     
    24  0000                     
    25                           
    26                           	psect	__Z88888RS_
    27  0190                     
    28  0190                     
    29                           
    30                           	psect	text3
    31                           ;SED1565DRIVE.c: 63: void ClearScreen()
    32                           ;SED1565DRIVE.c: 64: {
    33  06FC                     _ClearScreen
    34                           ;	_j assigned to ?a_ClearScreen+0
    35  0000                     _ClearScreen$j	set	?a_ClearScreen
    36                           ;	_i assigned to ?a_ClearScreen+1
    37  0000                     _ClearScreen$i	set	?a_ClearScreen+1
    38                           ;SED1565DRIVE.c: 65: unsigned char i,j;
    39  06FC  0183               	clrf	3	;select bank 0
    40  06FD  01A1               	clrf	?a_ClearScreen+1
    41  06FE                     l10
    42                           ;SED1565DRIVE.c: 67: {
    43                           ;SED1565DRIVE.c: 68: WriteCommand(0xb0+i);
    44  06FE  0821               	movf	?a_ClearScreen+1,w
    45  06FF  3EB0               	addlw	-80
    46  0700  120A  118A  273F   	fcall	_WriteCommand
    47                           ;SED1565DRIVE.c: 69: WriteCommand(0x10);
    48  0703  3010               	movlw	16
    49  0704  120A  118A  273F   	fcall	_WriteCommand
    50                           ;SED1565DRIVE.c: 70: WriteCommand(0x0);
    51  0707  3000               	movlw	0
    52  0708  120A  118A  273F   	fcall	_WriteCommand
    53                           ;SED1565DRIVE.c: 71: for(j=0;j<132;j++)
    54  070B  01A0               	clrf	?a_ClearScreen
    55  070C                     l13
    56                           ;SED1565DRIVE.c: 72: {
    57                           ;SED1565DRIVE.c: 73: WriteData(0x00);
    58  070C  3000               	movlw	0
    59  070D  120A  118A  2738   	fcall	_WriteData
      +       120A  118A         
    60                           ;SED1565DRIVE.c: 74: }
    61  0712  0AA0               	incf	?a_ClearScreen
    62  0713  3084               	movlw	-124
    63  0714  0220               	subwf	?a_ClearScreen,w
    64  0715  1C03               	btfss	3,0
    65  0716  2F0C               	goto	l13
    66                           ;SED1565DRIVE.c: 75: }
    67  0717  0AA1               	incf	?a_ClearScreen+1
    68  0718  3008               	movlw	8
    69  0719  0221               	subwf	?a_ClearScreen+1,w
    70  071A  1803               	btfsc	3,0
    71  071B  0008               	return
    72  071C  2EFE               	goto	l10
    73                           
    74                           	psect	text4
    75                           ;SED1565DRIVE.c: 82: void SetLine(unsigned char
      +                           line)
    76                           ;SED1565DRIVE.c: 83: {
    77  071D                     _SetLine
    78                           ;	_line assigned to ?a_SetLine+0
    79  0000                     _SetLine$line	set	?a_SetLine
    80                           ;_line stored from w
    81  071D  0183               	clrf	3	;select bank 0
    82  071E  00AA               	movwf	?a_SetLine
    83                           ;SED1565DRIVE.c: 84: line=line&0x07;
    84  071F  3007               	movlw	7
    85  0720  05AA               	andwf	?a_SetLine
    86                           ;SED1565DRIVE.c: 85: line=line|0xb0;
    87  0721  30B0               	movlw	-80
    88  0722  04AA               	iorwf	?a_SetLine
    89                           ;SED1565DRIVE.c: 86: WriteCommand(line);
    90  0723  082A               	movf	?a_SetLine,w
    91  0724  2F3F               	ljmp	_WriteCommand
    92  0725                     _SerialInputByte
    93                           ;	_dat assigned to ?a_SerialInputByte+0
    94  0000                     _SerialInputByte$dat	set	?a_SerialInputByte
    95                           ;	_i assigned to ?a_SerialInputByte+1
    96  0000                     _SerialInputByte$i	set	?a_SerialInputByte+1
    97                           ;_dat stored from w
    98  0725  0183               	clrf	3	;select bank 0
    99  0726  00AE               	movwf	?a_SerialInputByte
   100                           ;SED1565DRIVE.c: 23: unsigned char i;
   101  0727  01AF               	clrf	?a_SerialInputByte+1
   102  0728                     l2
   103                           ;SED1565DRIVE.c: 25: {
   104                           ;SED1565DRIVE.c: 26: if(dat&0x80)RB0=1;
   105  0728  1FAE               	btfss	?a_SerialInputByte,7
   106  0729  2F2C               	goto	l5
   107  072A  1406               	bsf	6,0
   108                           ;SED1565DRIVE.c: 27: else RB0=0;
   109  072B  2F2D               	goto	l6
   110  072C                     l5
   111  072C  1006               	bcf	6,0
   112  072D                     l6
   113                           ;SED1565DRIVE.c: 28: RB1=0;
   114  072D  1086               	bcf	6,1
   115                           ;SED1565DRIVE.c: 29: asm("nop");
   116  072E  0000               	nop	;#
   117                           ;SED1565DRIVE.c: 30: RB1=1;
   118  072F  1486               	bsf	6,1
   119                           ;SED1565DRIVE.c: 31: dat=dat<<1;
   120  0730  1003               	bcf	3,0
   121  0731  0DAE               	rlf	?a_SerialInputByte
   122                           ;SED1565DRIVE.c: 32: }
   123  0732  0AAF               	incf	?a_SerialInputByte+1
   124  0733  3008               	movlw	8
   125  0734  022F               	subwf	?a_SerialInputByte+1,w
   126  0735  1803               	btfsc	3,0
   127  0736  0008               	return
   128  0737  2F28               	goto	l2
   129                           ;SED1565DRIVE.c: 39: void WriteData(unsigned ch
      +                          ar dat)
   130                           ;SED1565DRIVE.c: 40: {
   131  0738                     _WriteData
   132                           ;	_dat assigned to ?a_WriteData+0
   133  0000                     _WriteData$dat	set	?a_WriteData
   134                           ;_dat stored from w
   135  0738  0183               	clrf	3	;select bank 0
   136  0739  00AA               	movwf	?a_WriteData
   137                           ;SED1565DRIVE.c: 41: RB3=0;
   138  073A  1186               	bcf	6,3
   139                           ;SED1565DRIVE.c: 42: RB2=1;
   140  073B  1506               	bsf	6,2
   141                           ;SED1565DRIVE.c: 43: SerialInputByte(dat);
   142  073C  2725               	fcall	_SerialInputByte
   143                           ;SED1565DRIVE.c: 44: RB3=1;
   144  073D  1586               	bsf	6,3
   145                           ;SED1565DRIVE.c: 45: }
   146  073E  0008               	return
   147                           ;SED1565DRIVE.c: 51: void WriteCommand(unsigned
      +                           char cmd)
   148                           ;SED1565DRIVE.c: 52: {
   149  073F                     _WriteCommand
   150                           ;	_cmd assigned to ?a_WriteCommand+0
   151  0000                     _WriteCommand$cmd	set	?a_WriteCommand
   152                           ;_cmd stored from w
   153  073F  0183               	clrf	3	;select bank 0
   154  0740  00AD               	movwf	?a_WriteCommand
   155                           ;SED1565DRIVE.c: 53: RB3=0;
   156  0741  1186               	bcf	6,3
   157                           ;SED1565DRIVE.c: 54: RB2=0;
   158  0742  1106               	bcf	6,2
   159                           ;SED1565DRIVE.c: 55: SerialInputByte(cmd);
   160  0743  2725               	fcall	_SerialInputByte
   161                           ;SED1565DRIVE.c: 56: RB3=1;
   162  0744  1586               	bsf	6,3
   163                           ;SED1565DRIVE.c: 57: }
   164  0745  0008               	return
   165                           ;SED1565DRIVE.c: 93: void SetColumn(unsigned ch
      +                          ar column)
   166                           ;SED1565DRIVE.c: 94: {
   167  0746                     _SetColumn
   168                           ;	_column_l assigned to ?a_SetColumn+0
   169  0000                     _SetColumn$column_l	set	?a_SetColumn
   170                           ;	_column assigned to ?a_SetColumn+1
   171  0000                     _SetColumn$column	set	?a_SetColumn+1
   172                           ;	_column_h assigned to ?a_SetColumn+2
   173  0000                     _SetColumn$column_h	set	?a_SetColumn+2
   174                           ;_column stored from w
   175  0746  0183               	clrf	3	;select bank 0
   176  0747  00AB               	movwf	?a_SetColumn+1
   177                           ;SED1565DRIVE.c: 95: unsigned char column_h,col
      +                          umn_l;
   178  0748  13AB               	bcf	?a_SetColumn+1,7
   179                           ;SED1565DRIVE.c: 97: column_h=column&0x0f0;
   180  0749  082B               	movf	?a_SetColumn+1,w
   181  074A  39F0               	andlw	-16
   182  074B  00AC               	movwf	?a_SetColumn+2
   183                           ;SED1565DRIVE.c: 98: column_h=column>>4;
   184  074C  0E2B               	swapf	?a_SetColumn+1,w
   185  074D  390F               	andlw	15
   186  074E  00AC               	movwf	?a_SetColumn+2
   187                           ;SED1565DRIVE.c: 99: column_l=column&0x0f;
   188  074F  082B               	movf	?a_SetColumn+1,w
   189  0750  390F               	andlw	15
   190  0751  00AA               	movwf	?a_SetColumn
   191                           ;SED1565DRIVE.c: 100: column_h=column_h|0x10;
   192  0752  162C               	bsf	?a_SetColumn+2,4
   193                           ;SED1565DRIVE.c: 101: column_l=column_l|0x00;
   194                           ;SED1565DRIVE.c: 102: WriteCommand(column_h);
   195  0753  082C               	movf	?a_SetColumn+2,w
   196  0754  273F  120A  118A   	fcall	_WriteCommand
   197                           ;SED1565DRIVE.c: 103: WriteCommand(column_l);
   198  0757  082A               	movf	?a_SetColumn,w
   199  0758  2F3F               	ljmp	_WriteCommand
   200  0759                     _Show16X16
   201                           ;	_column_temp assigned to ?a_Show16X16+0
   202  0000                     _Show16X16$column_temp	set	?a_Show16X16
   203                           ;	_line assigned to ?a_Show16X16+1
   204  0000                     _Show16X16$line	set	?a_Show16X16+1
   205                           ;	_i assigned to ?a_Show16X16+2
   206  0000                     _Show16X16$i	set	?a_Show16X16+2
   207                           ;_line stored from w
   208  0759  0183               	clrf	3	;select bank 0
   209  075A  00A8               	movwf	?a_Show16X16+1
   210                           ;SED1565DRIVE.c: 125: unsigned char i,column_te
      +                          mp;
   211  075B  30A1               	movlw	-95
   212  075C  273F  120A  118A   	fcall	_WriteCommand
   213                           ;SED1565DRIVE.c: 127: column_temp=column;
   214  075F  0824               	movf	?_Show16X16,w
   215  0760  00A7               	movwf	?a_Show16X16
   216                           ;SED1565DRIVE.c: 128: SetColumn(column);
   217  0761  0824               	movf	?_Show16X16,w
   218  0762  2746  120A  118A   	fcall	_SetColumn
   219                           ;SED1565DRIVE.c: 129: SetLine(line);
   220  0765  0828               	movf	?a_Show16X16+1,w
   221  0766  271D               	fcall	_SetLine
   222                           ;SED1565DRIVE.c: 130: for(i=0;i<16;i++)
   223  0767  01A9               	clrf	?a_Show16X16+2
   224  0768                     l20
   225                           ;SED1565DRIVE.c: 131: {
   226                           ;SED1565DRIVE.c: 132: WriteData(*pt);
   227  0768  0826               	movf	?_Show16X16+2,w
   228  0769  00B1               	movwf	code_ptr+1
   229  076A  0825               	movf	?_Show16X16+1,w
   230  076B  120A  118A  2008   	fcall	string_table
      +       120A  118A         
   231  0770  2738  120A  118A   	fcall	_WriteData
   232                           ;SED1565DRIVE.c: 133: *pt++;
   233  0773  0AA5               	incf	?_Show16X16+1
   234  0774  1903               	btfsc	3,2
   235  0775  0AA6               	incf	?_Show16X16+2
   236                           ;SED1565DRIVE.c: 134: column++;
   237  0776  0AA4               	incf	?_Show16X16
   238                           ;SED1565DRIVE.c: 135: }
   239  0777  0AA9               	incf	?a_Show16X16+2
   240  0778  3010               	movlw	16
   241  0779  0229               	subwf	?a_Show16X16+2,w
   242  077A  1C03               	btfss	3,0
   243  077B  2F68               	goto	l20
   244                           ;SED1565DRIVE.c: 136: SetLine(line+1);
   245  077C  0A28               	incf	?a_Show16X16+1,w
   246  077D  271D  120A  118A   	fcall	_SetLine
   247                           ;SED1565DRIVE.c: 137: column=column_temp;
   248  0780  0827               	movf	?a_Show16X16,w
   249  0781  00A4               	movwf	?_Show16X16
   250                           ;SED1565DRIVE.c: 138: SetColumn(column);
   251  0782  2746               	fcall	_SetColumn
   252                           ;SED1565DRIVE.c: 139: for(i=0;i<16;i++)
   253  0783  01A9               	clrf	?a_Show16X16+2
   254  0784                     l23
   255                           ;SED1565DRIVE.c: 140: {
   256                           ;SED1565DRIVE.c: 141: WriteData(*pt);
   257  0784  0826               	movf	?_Show16X16+2,w
   258  0785  00B1               	movwf	code_ptr+1
   259  0786  0825               	movf	?_Show16X16+1,w
   260  0787  120A  118A  2008   	fcall	string_table
      +       120A  118A         
   261  078C  2738  120A  118A   	fcall	_WriteData
   262                           ;SED1565DRIVE.c: 142: *pt++;
   263  078F  0AA5               	incf	?_Show16X16+1
   264  0790  1903               	btfsc	3,2
   265  0791  0AA6               	incf	?_Show16X16+2
   266                           ;SED1565DRIVE.c: 143: column++;
   267  0792  0AA4               	incf	?_Show16X16
   268                           ;SED1565DRIVE.c: 144: }
   269  0793  0AA9               	incf	?a_Show16X16+2
   270  0794  3010               	movlw	16
   271  0795  0229               	subwf	?a_Show16X16+2,w
   272  0796  1803               	btfsc	3,0
   273  0797  0008               	return
   274  0798  2F84               	goto	l23
   275                           ;SED1565DRIVE.c: 172: void test()
   276                           ;SED1565DRIVE.c: 173: {
   277  0799                     _test
   278                           ;	_set assigned to ?a_test+0
   279  0000                     _test$set	set	?a_test
   280                           ;	_column assigned to ?a_test+1
   281  0000                     _test$column	set	?a_test+1
   282                           ;	_i assigned to ?a_test+2
   283  0000                     _test$i	set	?a_test+2
   284                           ;SED1565DRIVE.c: 174: int i;
   285  0799  0183               	clrf	3	;select bank 0
   286  079A  01A0               	clrf	?a_test
   287                           ;SED1565DRIVE.c: 176: unsigned char column=32;
   288  079B  3020               	movlw	32
   289  079C  00A1               	movwf	?a_test+1
   290  079D                     l29
   291                           ;SED1565DRIVE.c: 177: while(1)
   292                           ;SED1565DRIVE.c: 178: {
   293  079D  0821               	movf	?a_test+1,w
   294  079E  00A4               	movwf	?_Show16X16
   295  079F  3040               	movlw	low _huan
   296  07A0  00A5               	movwf	?_Show16X16+1
   297  07A1  3000               	movlw	high _huan
   298  07A2  00A6               	movwf	?_Show16X16+2
   299  07A3  3003               	movlw	3
   300  07A4  2759               	fcall	_Show16X16
   301                           ;SED1565DRIVE.c: 180: Show16X16(3,column+16,yin
      +                          g);

⌨️ 快捷键说明

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