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

📄 lcd1602a.lst

📁 PIC单片机的1602液晶显示
💻 LST
📖 第 1 页 / 共 3 页
字号:
   313  06F6  0800               	movf	0,w
   314  06F7  00A2               	movwf	?_LCD_write_data
   315  06F8  01A3               	clrf	?_LCD_write_data+1
   316  06F9  26C2  120A  118A   	fcall	_LCD_write_data
   317                           ;lcd1602a.c: 147: s ++;
   318  06FC  0AA1               	incf	?_LCD_write_string+1
   319  06FD                     l13
   320                           ;lcd1602a.c: 148: }
   321  06FD  0821               	movf	?_LCD_write_string+1,w
   322  06FE  0084               	movwf	4
   323  06FF  1383               	bcf	3,7
   324  0700  0880               	movf	0
   325  0701  1903               	btfsc	3,2
   326  0702  0008               	return
   327  0703  2EF3               	goto	l14
   328                           ;lcd1602a.c: 215: void delay_1ms(void)
   329                           ;lcd1602a.c: 216: {
   330  0704                     _delay_1ms
   331                           ;	_i assigned to ?a_delay_1ms+0
   332  0000                     _delay_1ms$i	set	?a_delay_1ms
   333                           ;lcd1602a.c: 217: unsigned int i;
   334  0704  0183               	clrf	3	;select bank 0
   335  0705  01AD               	clrf	?a_delay_1ms
   336  0706  01AE               	clrf	?a_delay_1ms+1
   337  0707                     l33
   338  0707  0AAD               	incf	?a_delay_1ms
   339  0708  1903               	btfsc	3,2
   340  0709  0AAE               	incf	?a_delay_1ms+1
   341  070A  3003               	movlw	3
   342  070B  022E               	subwf	?a_delay_1ms+1,w
   343  070C  30E8               	movlw	232
   344  070D  1903               	btfsc	3,2
   345  070E  022D               	subwf	?a_delay_1ms,w
   346  070F  1803               	btfsc	3,0
   347  0710  0008               	return
   348  0711  2F07               	goto	l33
   349  0712                     _delay_nms
   350                           ;	_i assigned to ?a_delay_nms+0
   351  0000                     _delay_nms$i	set	?a_delay_nms
   352                           ;lcd1602a.c: 223: unsigned int i=0;
   353  0712  0183               	clrf	3	;select bank 0
   354  0713  01AB               	clrf	?a_delay_nms
   355  0714  01AC               	clrf	?a_delay_nms+1
   356                           ;lcd1602a.c: 224: for (i=0;i<n;i++)
   357  0715  01AB               	clrf	?a_delay_nms
   358  0716  01AC               	clrf	?a_delay_nms+1
   359  0717  2F1C               	goto	l40
   360  0718                     l37
   361                           ;lcd1602a.c: 225: delay_1ms();
   362  0718  2704               	fcall	_delay_1ms
   363  0719  0AAB               	incf	?a_delay_nms
   364  071A  1903               	btfsc	3,2
   365  071B  0AAC               	incf	?a_delay_nms+1
   366  071C                     l40
   367  071C  082A               	movf	?_delay_nms+1,w
   368  071D  022C               	subwf	?a_delay_nms+1,w
   369  071E  1D03               	btfss	3,2
   370  071F  2F22               	goto	u95
   371  0720  0829               	movf	?_delay_nms,w
   372  0721  022B               	subwf	?a_delay_nms,w
   373  0722                     u95
   374  0722  1803               	btfsc	3,0
   375  0723  0008               	return
   376  0724  2F18               	goto	l37
   377  0725                     _LCD_init
   378                           ;lcd1602a.c: 34: delay_nms(15);
   379  0725  300F               	movlw	15
   380  0726  0183               	clrf	3	;select bank 0
   381  0727  00A9               	movwf	?_delay_nms
   382  0728  01AA               	clrf	?_delay_nms+1
   383  0729  2712               	fcall	_delay_nms
   384                           ;lcd1602a.c: 36: LCD_write_cmd(0x28);
   385  072A  3028               	movlw	40
   386  072B  00A5               	movwf	?_LCD_write_cmd
   387  072C  01A6               	clrf	?_LCD_write_cmd+1
   388  072D  268C  120A  118A   	fcall	_LCD_write_cmd
   389                           ;lcd1602a.c: 37: delay_nus(500);
   390  0730  30F4               	movlw	244
   391  0731  00A2               	movwf	?_delay_nus
   392  0732  3001               	movlw	1
   393  0733  00A3               	movwf	?_delay_nus+1
   394  0734  2678               	fcall	_delay_nus
   395                           ;lcd1602a.c: 38: LCD_write_cmd(0x0f);
   396  0735  300F               	movlw	15
   397  0736  00A5               	movwf	?_LCD_write_cmd
   398  0737  01A6               	clrf	?_LCD_write_cmd+1
   399  0738  268C  120A  118A   	fcall	_LCD_write_cmd
   400                           ;lcd1602a.c: 39: delay_nus(500);
   401  073B  30F4               	movlw	244
   402  073C  00A2               	movwf	?_delay_nus
   403  073D  3001               	movlw	1
   404  073E  00A3               	movwf	?_delay_nus+1
   405  073F  2678               	fcall	_delay_nus
   406                           ;lcd1602a.c: 40: LCD_write_cmd(0x01);
   407  0740  01A5               	clrf	?_LCD_write_cmd
   408  0741  0AA5               	incf	?_LCD_write_cmd
   409  0742  01A6               	clrf	?_LCD_write_cmd+1
   410  0743  268C  120A  118A   	fcall	_LCD_write_cmd
   411                           ;lcd1602a.c: 41: delay_nms(50);
   412  0746  3032               	movlw	50
   413  0747  00A9               	movwf	?_delay_nms
   414  0748  01AA               	clrf	?_delay_nms+1
   415  0749  2712               	fcall	_delay_nms
   416                           ;lcd1602a.c: 42: LCD_write_cmd(0x06);
   417  074A  3006               	movlw	6
   418  074B  00A5               	movwf	?_LCD_write_cmd
   419  074C  01A6               	clrf	?_LCD_write_cmd+1
   420  074D  268C  120A  118A   	fcall	_LCD_write_cmd
   421                           ;lcd1602a.c: 43: delay_nms(5);
   422  0750  3005               	movlw	5
   423  0751  00A9               	movwf	?_delay_nms
   424  0752  01AA               	clrf	?_delay_nms+1
   425  0753  2F12               	ljmp	_delay_nms
   426  0754                     _LCD_en_write
   427                           ;lcd1602a.c: 48: RA3 = 0;
   428  0754  0183               	clrf	3	;select bank 0
   429  0755  1185               	bcf	5,3
   430                           ;lcd1602a.c: 49: delay_nms(10);
   431  0756  300A               	movlw	10
   432  0757  00A9               	movwf	?_delay_nms
   433  0758  01AA               	clrf	?_delay_nms+1
   434  0759  2712               	fcall	_delay_nms
   435                           ;lcd1602a.c: 50: RA3 = 1;
   436  075A  1585               	bsf	5,3
   437                           ;lcd1602a.c: 51: }
   438  075B  0008               	return
   439                           ;lcd1602a.c: 160: void main()
   440                           ;lcd1602a.c: 161: { int i;
   441  075C                     _main
   442                           ;	_i assigned to ?a_main+0
   443  0000                     _main$i	set	?a_main
   444                           ;lcd1602a.c: 162: delay_nms(10);
   445  075C  300A               	movlw	10
   446  075D  1283               	bcf	3,5
   447  075E  1303               	bcf	3,6	;carry unused
   448  075F  00A9               	movwf	?_delay_nms
   449  0760  01AA               	clrf	?_delay_nms+1
   450  0761  2712               	fcall	_delay_nms
   451                           ;lcd1602a.c: 163: INTCON=0x00;
   452  0762  018B               	clrf	11	;volatile
   453                           ;lcd1602a.c: 164: ADCON1=0x07;
   454  0763  3007               	movlw	7
   455  0764  1683               	bsf	3,5
   456  0765  009F               	movwf	31	;volatile
   457                           ;lcd1602a.c: 165: TRISA=0x00;
   458  0766  0185               	clrf	5	;volatile
   459                           ;lcd1602a.c: 166: TRISC=0x00;
   460  0767  0187               	clrf	7	;volatile
   461                           ;lcd1602a.c: 167: LCD_init();
   462  0768  2725  120A  118A   	fcall	_LCD_init
   463  076B                     l18
   464                           ;lcd1602a.c: 170: while(1)
   465                           ;lcd1602a.c: 171: {
   466  076B  01A5               	clrf	?_LCD_write_cmd
   467  076C  0AA5               	incf	?_LCD_write_cmd
   468  076D  01A6               	clrf	?_LCD_write_cmd+1
   469  076E  268C  120A  118A   	fcall	_LCD_write_cmd
   470                           ;lcd1602a.c: 173: delay_nms(20);
   471  0771  3014               	movlw	20
   472  0772  00A9               	movwf	?_delay_nms
   473  0773  01AA               	clrf	?_delay_nms+1
   474  0774  2712               	fcall	_delay_nms
   475                           ;lcd1602a.c: 174: LCD_set_xy(3,0);
   476  0775  01A2               	clrf	?_LCD_set_xy
   477  0776  3003               	movlw	3
   478  0777  26B4               	fcall	_LCD_set_xy
   479                           ;lcd1602a.c: 175: i=0;
   480  0778  01A0               	clrf	?a_main
   481  0779  01A1               	clrf	?a_main+1
   482                           ;lcd1602a.c: 176: while(dis0[i] != '\0')
   483  077A                     l20
   484                           ;lcd1602a.c: 181: }
   485  077A  3000               	movlw	_dis0 shr (0+8)
   486  077B  008A               	movwf	10
   487  077C  0820               	movf	?a_main,w
   488  077D  2037               	call	((_dis0+-1)& (0+2047))| (($)& (0+-2048))
   489  077E  120A  118A         	pagesel	$
   490  0780  3800               	iorlw	0
   491  0781  1903               	btfsc	3,2
   492  0782  2F92               	goto	l22
   493                           ;lcd1602a.c: 177: {
   494  0783  3000               	movlw	_dis0 shr (0+8)
   495  0784  008A               	movwf	10
   496  0785  0820               	movf	?a_main,w
   497  0786  2037               	call	((_dis0+-1)& (0+2047))| (($)& (0+-2048))
   498  0787  00A2               	movwf	?_LCD_write_data
   499  0788  01A3               	clrf	?_LCD_write_data+1
   500  0789  120A  118A  26C2   	fcall	_LCD_write_data
      +       120A  118A         
   501                           ;lcd1602a.c: 180: i++;
   502  078E  0AA0               	incf	?a_main
   503  078F  1903               	btfsc	3,2
   504  0790  0AA1               	incf	?a_main+1
   505  0791  2F7A               	goto	l20
   506  0792                     l22
   507                           ;lcd1602a.c: 182: LCD_set_xy(1,1);
   508  0792  01A2               	clrf	?_LCD_set_xy
   509  0793  0AA2               	incf	?_LCD_set_xy
   510  0794  3001               	movlw	1
   511  0795  26B4               	fcall	_LCD_set_xy
   512                           ;lcd1602a.c: 183: i = 0;
   513  0796  01A0               	clrf	?a_main
   514  0797  01A1               	clrf	?a_main+1
   515                           ;lcd1602a.c: 184: while(dis1[i] != '\0')
   516  0798                     l23
   517                           ;lcd1602a.c: 189: }
   518  0798  3000               	movlw	_dis1 shr (0+8)
   519  0799  008A               	movwf	10
   520  079A  0820               	movf	?a_main,w
   521  079B  2019               	call	((_dis1+-1)& (0+2047))| (($)& (0+-2048))
   522  079C  120A  118A         	pagesel	$
   523  079E  3800               	iorlw	0
   524  079F  1903               	btfsc	3,2
   525  07A0  2FB0               	goto	l25
   526                           ;lcd1602a.c: 185: {
   527  07A1  3000               	movlw	_dis1 shr (0+8)
   528  07A2  008A               	movwf	10
   529  07A3  0820               	movf	?a_main,w
   530  07A4  2019               	call	((_dis1+-1)& (0+2047))| (($)& (0+-2048))
   531  07A5  00A2               	movwf	?_LCD_write_data
   532  07A6  01A3               	clrf	?_LCD_write_data+1
   533  07A7  120A  118A  26C2   	fcall	_LCD_write_data
      +       120A  118A         
   534                           ;lcd1602a.c: 188: i++;
   535  07AC  0AA0               	incf	?a_main
   536  07AD  1903               	btfsc	3,2
   537  07AE  0AA1               	incf	?a_main+1
   538  07AF  2F98               	goto	l23
   539  07B0                     l25
   540                           ;lcd1602a.c: 190: delay_nms(1000);
   541  07B0  30E8               	movlw	232
   542  07B1  00A9               	movwf	?_delay_nms
   543  07B2  3003               	movlw	3
   544  07B3  00AA               	movwf	?_delay_nms+1
   545  07B4  2712               	fcall	_delay_nms
   546                           ;lcd1602a.c: 191: LCD_write_cmd(0x01);
   547  07B5  01A5               	clrf	?_LCD_write_cmd
   548  07B6  0AA5               	incf	?_LCD_write_cmd
   549  07B7  01A6               	clrf	?_LCD_write_cmd+1
   550  07B8  268C  120A  118A   	fcall	_LCD_write_cmd
   551                           ;lcd1602a.c: 192: delay_nms(50);
   552  07BB  3032               	movlw	50
   553  07BC  00A9               	movwf	?_delay_nms
   554  07BD  01AA               	clrf	?_delay_nms+1
   555  07BE  2712               	fcall	_delay_nms
   556                           ;lcd1602a.c: 193: LCD_set_xy(1,0);
   557  07BF  01A2               	clrf	?_LCD_set_xy
   558  07C0  3001               	movlw	1
   559  07C1  26B4               	fcall	_LCD_set_xy
   560                           ;lcd1602a.c: 194: i=0;
   561  07C2  01A0               	clrf	?a_main
   562  07C3  01A1               	clrf	?a_main+1
   563                           ;lcd1602a.c: 195: while(dis2[i] != '\0')
   564  07C4                     l26
   565                           ;lcd1602a.c: 200: }
   566  07C4  3000               	movlw	_dis2 shr (0+8)
   567  07C5  008A               	movwf	10
   568  07C6  0820               	movf	?a_main,w
   569  07C7  2029               	call	((_dis2+-1)& (0+2047))| (($)& (0+-2048))
   570  07C8  120A  118A         	pagesel	$
   571  07CA  3800               	iorlw	0
   572  07CB  1903               	btfsc	3,2
   573  07CC  2FDC               	goto	l28
   574                           ;lcd1602a.c: 196: {
   575  07CD  3000               	movlw	_dis2 shr (0+8)
   576  07CE  008A               	movwf	10
   577  07CF  0820               	movf	?a_main,w
   578  07D0  2029               	call	((_dis2+-1)& (0+2047))| (($)& (0+-2048))
   579  07D1  00A2               	movwf	?_LCD_write_data
   580  07D2  01A3               	clrf	?_LCD_write_data+1
   581  07D3  120A  118A  26C2   	fcall	_LCD_write_data
      +       120A  118A         
   582                           ;lcd1602a.c: 199: i++;
   583  07D8  0AA0               	incf	?a_main
   584  07D9  1903               	btfsc	3,2
   585  07DA  0AA1               	incf	?a_main+1
   586  07DB  2FC4               	goto	l26
   587  07DC                     l28
   588                           ;lcd1602a.c: 201: LCD_set_xy(1,1);
   589  07DC  01A2               	clrf	?_LCD_set_xy
   590  07DD  0AA2               	incf	?_LCD_set_xy
   591  07DE  3001               	movlw	1
   592  07DF  26B4               	fcall	_LCD_set_xy
   593                           ;lcd1602a.c: 202: i = 0;
   594  07E0  01A0               	clrf	?a_main
   595  07E1  01A1               	clrf	?a_main+1
   596                           ;lcd1602a.c: 203: while(dis3[i] != '\0')
   597  07E2                     l29
   598                           ;lcd1602a.c: 208: }
   599  07E2  3000               	movlw	_dis3 shr (0+8)
   600  07E3  008A               	movwf	10
   601  07E4  0820               	movf	?a_main,w
   602  07E5  2008               	call	((_dis3+-1)& (0+2047))| (($)& (0+-2048))
   603  07E6  120A  118A         	pagesel	$
   604  07E8  3800               	iorlw	0
   605  07E9  1903               	btfsc	3,2
   606  07EA  2FFA               	goto	l31
   607                           ;lcd1602a.c: 204: {
   608  07EB  3000               	movlw	_dis3 shr (0+8)
   609  07EC  008A               	movwf	10
   610  07ED  0820               	movf	?a_main,w
   611  07EE  2008               	call	((_dis3+-1)& (0+2047))| (($)& (0+-2048))
   612  07EF  00A2               	movwf	?_LCD_write_data
   613  07F0  01A3               	clrf	?_LCD_write_data+1
   614  07F1  120A  118A  26C2   	fcall	_LCD_write_data
      +       120A  118A         
   615                           ;lcd1602a.c: 207: i++;
   616  07F6  0AA0               	incf	?a_main
   617  07F7  1903               	btfsc	3,2
   618  07F8  0AA1               	incf	?a_main+1
   619  07F9  2FE2               	goto	l29
   620  07FA                     l31
   621                           ;lcd1602a.c: 209: delay_nms(1000);
   622  07FA  30E8               	movlw	232
   623  07FB  00A9               	movwf	?_delay_nms
   624  07FC  3003               	movlw	3
   625  07FD  00AA               	movwf	?_delay_nms+1
   626  07FE  2712               	fcall	_delay_nms
   627                           ;lcd1602a.c: 210: }

⌨️ 快捷键说明

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