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

📄 lcd12232ea.lst

📁 这是一个PIC单片机的实时操作系统
💻 LST
📖 第 1 页 / 共 2 页
字号:


HI-TECH Software PICC Macro Assembler V8.05PL1
Serial number: HCPIC-40231                            Tue Nov 20 21:37:42 2007

Licensed to: ONE
     1                           	processor	16F877A
     2                           	opt	pw 79
     3                           	psect	__Z40231RS_,global,delta=1
     4                           	psect	text0,local,class=CODE,delta=2
     5                           	psect	text4,local,class=CODE,delta=2
     6                           	psect	text6,local,class=CODE,delta=2
     7                           	psect	text7,local,class=CODE,delta=2
     8                           	psect	rbss_0,global,class=BANK0,space=1,delta=
      +                          1
     9  0000                     
    10  0000                     
    11  0000                     
    12  0000                     
    13  0000                     
    14  0000                     
    15  0000                     
    16  0000                     
    17  0000                     
    18  0000                     
    19                           
    20                           	psect	__Z40231RS_
    21  0190                     
    22  0190                     
    23  0000                     _delayLCD$time	set	?_delayLCD
    24                           
    25                           	psect	text0
    26  026D                     _delayLCD
    27                           ;	_s assigned to ?a_delayLCD+0
    28  0000                     _delayLCD$s	set	?a_delayLCD
    29                           ;LCD12232EA.c: 27: int s;
    30  026D  0183               	clrf	3	;select bank 0
    31  026E  01CA               	clrf	?a_delayLCD
    32  026F  01CB               	clrf	?a_delayLCD+1
    33  0270  2A74               	goto	l5
    34  0271                     l2
    35  0271  0ACA               	incf	?a_delayLCD
    36  0272  1903               	btfsc	3,2
    37  0273  0ACB               	incf	?a_delayLCD+1
    38  0274                     l5
    39  0274  0849               	movf	?_delayLCD+1,w
    40  0275  024B               	subwf	?a_delayLCD+1,w
    41  0276  1D03               	btfss	3,2
    42  0277  2A7A               	goto	u15
    43  0278  0848               	movf	?_delayLCD,w
    44  0279  024A               	subwf	?a_delayLCD,w
    45  027A                     u15
    46  027A  1803               	btfsc	3,0
    47  027B  0008               	return
    48  027C  2A71               	goto	l2
    49                           ;LCD12232EA.c: 31: void check_busy(){
    50  027D                     _check_busy
    51                           ;LCD12232EA.c: 32: RA0=0;RA1=1;
    52  027D  0183               	clrf	3	;select bank 0
    53  027E  1005               	bcf	5,0
    54  027F  1485               	bsf	5,1
    55                           ;LCD12232EA.c: 33: do{
    56                           ;LCD12232EA.c: 34: RA2=0;
    57  0280  1105               	bcf	5,2
    58  0281                     L1
    59                           ;LCD12232EA.c: 35: RA2=1;
    60  0281  1505               	bsf	5,2
    61                           ;LCD12232EA.c: 38: RA2=0;
    62  0282  1105               	bcf	5,2
    63                           ;LCD12232EA.c: 36: }while(PORTD&0x80);
    64  0283  1B88               	btfsc	8,7	;volatile
    65  0284  2A81               	goto	L1
    66                           ;LCD12232EA.c: 39: TRISD=0;
    67  0285  1683               	bsf	3,5
    68  0286  0188               	clrf	8	;volatile
    69                           ;LCD12232EA.c: 41: }
    70  0287  1283               	bcf	3,5
    71  0288  0008               	return
    72                           ;LCD12232EA.c: 43: void LCD_Write_Com(unsigned 
      +                          char val)
    73                           ;LCD12232EA.c: 44: {
    74  0289                     _LCD_Write_Com
    75                           ;	_val assigned to ?a_LCD_Write_Com+0
    76  0000                     _LCD_Write_Com$val	set	?a_LCD_Write_Com
    77                           ;_val stored from w
    78  0289  0183               	clrf	3	;select bank 0
    79  028A  00C7               	movwf	?a_LCD_Write_Com
    80                           ;LCD12232EA.c: 45: check_busy();
    81  028B  227D               	fcall	_check_busy
    82                           ;LCD12232EA.c: 46: RA0=0;RA1=0;
    83  028C  1005               	bcf	5,0
    84  028D  1085               	bcf	5,1
    85                           ;LCD12232EA.c: 47: RA2=1;
    86  028E  1505               	bsf	5,2
    87                           ;LCD12232EA.c: 48: PORTD=val;
    88  028F  0847               	movf	?a_LCD_Write_Com,w
    89  0290  0088               	movwf	8	;volatile
    90                           ;LCD12232EA.c: 49: asm("nop");
    91  0291  0000               	nop	;#
    92                           ;LCD12232EA.c: 50: asm("nop");
    93  0292  0000               	nop	;#
    94                           ;LCD12232EA.c: 51: RA2=0;
    95  0293  1105               	bcf	5,2
    96                           ;LCD12232EA.c: 52: TRISD=0xff;
    97  0294  30FF               	movlw	-1
    98  0295  1683               	bsf	3,5
    99  0296  0088               	movwf	8	;volatile
   100                           ;LCD12232EA.c: 53: delayLCD(10);
   101  0297  300A               	movlw	10
   102  0298  1283               	bcf	3,5
   103  0299  00C8               	movwf	?_delayLCD
   104  029A  01C9               	clrf	?_delayLCD+1
   105  029B  2A6D               	ljmp	_delayLCD
   106                           ;LCD12232EA.c: 57: void LCD_Write_Dat(unsigned 
      +                          char val)
   107                           ;LCD12232EA.c: 58: {
   108  029C                     _LCD_Write_Dat
   109                           ;	_val assigned to ?a_LCD_Write_Dat+0
   110  0000                     _LCD_Write_Dat$val	set	?a_LCD_Write_Dat
   111                           ;_val stored from w
   112  029C  0183               	clrf	3	;select bank 0
   113  029D  00C7               	movwf	?a_LCD_Write_Dat
   114                           ;LCD12232EA.c: 59: check_busy();
   115  029E  227D               	fcall	_check_busy
   116                           ;LCD12232EA.c: 60: RA0=1;RA1=0;
   117  029F  1405               	bsf	5,0
   118  02A0  1085               	bcf	5,1
   119                           ;LCD12232EA.c: 61: RA2=1;
   120  02A1  1505               	bsf	5,2
   121                           ;LCD12232EA.c: 62: PORTD=val;
   122  02A2  0847               	movf	?a_LCD_Write_Dat,w
   123  02A3  0088               	movwf	8	;volatile
   124                           ;LCD12232EA.c: 63: RA2=0;
   125  02A4  1105               	bcf	5,2
   126                           ;LCD12232EA.c: 64: TRISD=0xff;
   127  02A5  30FF               	movlw	-1
   128  02A6  1683               	bsf	3,5
   129  02A7  0088               	movwf	8	;volatile
   130                           ;LCD12232EA.c: 65: delayLCD(10);
   131  02A8  300A               	movlw	10
   132  02A9  1283               	bcf	3,5
   133  02AA  00C8               	movwf	?_delayLCD
   134  02AB  01C9               	clrf	?_delayLCD+1
   135  02AC  2A6D               	ljmp	_delayLCD
   136                           
   137                           	psect	text4
   138                           ;LCD12232EA.c: 68: void ioint()
   139                           ;LCD12232EA.c: 69: {
   140  023B                     _ioint
   141                           ;LCD12232EA.c: 70: PORTA=0;
   142  023B  0183               	clrf	3	;select bank 0
   143  023C  0185               	clrf	5	;volatile
   144                           ;LCD12232EA.c: 71: PORTD=0;
   145  023D  0188               	clrf	8	;volatile
   146                           ;LCD12232EA.c: 72: TRISA =0B11100000;
   147  023E  30E0               	movlw	-32
   148  023F  1683               	bsf	3,5
   149  0240  0085               	movwf	5	;volatile
   150                           ;LCD12232EA.c: 73: TRISD=0x00;
   151  0241  0188               	clrf	8	;volatile
   152                           ;LCD12232EA.c: 74: }
   153  0242  1283               	bcf	3,5
   154  0243  0008               	return
   155                           ;LCD12232EA.c: 76: void Lcdint()
   156                           ;LCD12232EA.c: 77: {
   157  0244                     _Lcdint
   158                           ;LCD12232EA.c: 78: ioint();
   159  0244  223B               	fcall	_ioint
   160                           ;LCD12232EA.c: 82: delay1ms(0X7F);
   161  0245  307F               	movlw	127
   162  0246  120A  118A  2635   	fcall	_delay1ms
   163                           ;LCD12232EA.c: 83: LCD_Write_Com(0x30);
   164  0249  3030               	movlw	48
   165  024A  120A  118A  2289   	fcall	_LCD_Write_Com
   166                           ;LCD12232EA.c: 86: delay3();
   167  024D  120A  118A  21C3   	fcall	_delay3
   168                           ;LCD12232EA.c: 87: LCD_Write_Com(0x30);
   169  0250  3030               	movlw	48
   170  0251  120A  118A  2289   	fcall	_LCD_Write_Com
   171                           ;LCD12232EA.c: 90: delay3();
   172  0254  120A  118A  21C3   	fcall	_delay3
   173                           ;LCD12232EA.c: 91: LCD_Write_Com(0X0F);
   174  0257  300F               	movlw	15
   175  0258  120A  118A  2289   	fcall	_LCD_Write_Com
   176                           ;LCD12232EA.c: 94: delay1ms(0x7f);
   177  025B  307F               	movlw	127
   178  025C  120A  118A  2635   	fcall	_delay1ms
   179                           ;LCD12232EA.c: 95: LCD_Write_Com(0X01);
   180  025F  3001               	movlw	1
   181  0260  120A  118A  2289   	fcall	_LCD_Write_Com
   182                           ;LCD12232EA.c: 97: LCD_Write_Com(0X06);
   183  0263  3006               	movlw	6
   184  0264  120A  118A  2289   	fcall	_LCD_Write_Com
      +       120A  118A         
   185                           ;LCD12232EA.c: 100: delay1ms(0x7f);
   186  0269  307F               	movlw	127
   187  026A  120A  118A  2E35   	ljmp	_delay1ms
   188                           
   189                           	psect	text6
   190  02AD                     _LcdFuc2
   191                           ;	_CLen assigned to ?a_LcdFuc2+0
   192  0000                     _LcdFuc2$CLen	set	?a_LcdFuc2
   193                           ;	_c assigned to ?a_LcdFuc2+1
   194  0000                     _LcdFuc2$c	set	?a_LcdFuc2+1
   195                           ;_CLen stored from w
   196  02AD  0183               	clrf	3	;select bank 0
   197  02AE  00C7               	movwf	?a_LcdFuc2
   198                           ;LCD12232EA.c: 106: char c;
   199  02AF  3001               	movlw	1
   200  02B0  120A  118A  2289   	fcall	_LCD_Write_Com
   201                           ;LCD12232EA.c: 108: delay1ms(0x7f);
   202  02B3  307F               	movlw	127
   203  02B4  120A  118A  2635   	fcall	_delay1ms
      +       120A  118A         
   204                           ;LCD12232EA.c: 109: if(CLen<15)
   205  02B9  300F               	movlw	15
   206  02BA  0247               	subwf	?a_LcdFuc2,w
   207  02BB  1803               	btfsc	3,0
   208  02BC  2ADD               	goto	l15
   209                           ;LCD12232EA.c: 110: {
   210  02BD  3080               	movlw	-128
   211  02BE  120A  118A  2289   	fcall	_LCD_Write_Com
      +       120A  118A         
   212                           ;LCD12232EA.c: 112: asm("nop");
   213  02C3  0000               	nop	;#
   214                           ;LCD12232EA.c: 113: if (CLen != 0)
   215  02C4  08C7               	movf	?a_LcdFuc2
   216  02C5  1903               	btfsc	3,2
   217  02C6  0008               	return
   218                           ;LCD12232EA.c: 114: {
   219  02C7  01C8               	clrf	?a_LcdFuc2+1
   220  02C8                     l20
   221  02C8  0847               	movf	?a_LcdFuc2,w
   222  02C9  0248               	subwf	?a_LcdFuc2+1,w
   223  02CA  1803               	btfsc	3,0
   224  02CB  0008               	return
   225                           ;LCD12232EA.c: 117: {
   226                           ;LCD12232EA.c: 119: LCD_Write_Dat(*FData++);
   227  02CC  0848               	movf	?_LcdFuc2+1,w
   228  02CD  00D5               	movwf	code_ptr+1
   229  02CE  0847               	movf	?_LcdFuc2,w
   230  02CF  0AC7               	incf	?_LcdFuc2
   231  02D0  1903               	btfsc	3,2
   232  02D1  0AC8               	incf	?_LcdFuc2+1
   233  02D2  120A  118A  2073   	fcall	string_table
   234  02D5  120A  118A  229C   	fcall	_LCD_Write_Dat
      +       120A  118A         
   235                           ;LCD12232EA.c: 120: asm("nop");
   236  02DA  0000               	nop	;#
   237                           ;LCD12232EA.c: 121: }
   238  02DB  0AC8               	incf	?a_LcdFuc2+1
   239  02DC  2AC8               	goto	l20
   240                           ;LCD12232EA.c: 122: }
   241                           ;LCD12232EA.c: 124: else if(CLen>14)
   242  02DD                     l15
   243  02DD  300F               	movlw	15
   244  02DE  0247               	subwf	?a_LcdFuc2,w
   245  02DF  1C03               	btfss	3,0
   246  02E0  0008               	return
   247                           ;LCD12232EA.c: 125: {
   248  02E1  3080               	movlw	-128
   249  02E2  120A  118A  2289   	fcall	_LCD_Write_Com
   250                           ;LCD12232EA.c: 127: for (c = 0; c < 14; c++)
   251  02E5  01C8               	clrf	?a_LcdFuc2+1
   252  02E6                     l23
   253                           ;LCD12232EA.c: 128: {
   254                           ;LCD12232EA.c: 129: LCD_Write_Dat(*FData++);
   255  02E6  0848               	movf	?_LcdFuc2+1,w
   256  02E7  00D5               	movwf	code_ptr+1
   257  02E8  0847               	movf	?_LcdFuc2,w
   258  02E9  0AC7               	incf	?_LcdFuc2
   259  02EA  1903               	btfsc	3,2
   260  02EB  0AC8               	incf	?_LcdFuc2+1
   261  02EC  120A  118A  2073   	fcall	string_table
   262  02EF  120A  118A  229C   	fcall	_LCD_Write_Dat
      +       120A  118A         
   263                           ;LCD12232EA.c: 130: }
   264  02F4  0AC8               	incf	?a_LcdFuc2+1
   265  02F5  300E               	movlw	14
   266  02F6  0248               	subwf	?a_LcdFuc2+1,w
   267  02F7  1C03               	btfss	3,0
   268  02F8  2AE6               	goto	l23
   269                           ;LCD12232EA.c: 131: LCD_Write_Com(0X90);
   270  02F9  3090               	movlw	-112
   271  02FA  120A  118A  2289   	fcall	_LCD_Write_Com
      +       120A  118A         
   272                           ;LCD12232EA.c: 132: for (c = 14; c < CLen; c++)
   273  02FF  300E               	movlw	14
   274  0300  00C8               	movwf	?a_LcdFuc2+1
   275  0301                     l29
   276  0301  0847               	movf	?a_LcdFuc2,w
   277  0302  0248               	subwf	?a_LcdFuc2+1,w
   278  0303  1803               	btfsc	3,0
   279  0304  0008               	return
   280                           ;LCD12232EA.c: 133: {
   281                           ;LCD12232EA.c: 134: LCD_Write_Dat(*FData++);
   282  0305  0848               	movf	?_LcdFuc2+1,w
   283  0306  00D5               	movwf	code_ptr+1
   284  0307  0847               	movf	?_LcdFuc2,w
   285  0308  0AC7               	incf	?_LcdFuc2
   286  0309  1903               	btfsc	3,2
   287  030A  0AC8               	incf	?_LcdFuc2+1
   288  030B  120A  118A  2073   	fcall	string_table
   289  030E  120A  118A  229C   	fcall	_LCD_Write_Dat
      +       120A  118A         

⌨️ 快捷键说明

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