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

📄 lcd.lst

📁 基于跳转表的LCD目录跳转C程序
💻 LST
📖 第 1 页 / 共 4 页
字号:
   625  0DF8  00C5               	movwf	code_ptr+1
   626  0DF9  0844               	movf	code_ptr,w
   627  0DFA  1803               	btfsc	3,0
   628  0DFB  0AC5               	incf	code_ptr+1
   629  0DFC  120A  118A  202A   	fcall	string_table
      +       120A  158A         
   630  0E01  00F0               	movwf	btemp
   631  0E02  305B               	movlw	91
   632  0E03  0270               	subwf	btemp,w
   633  0E04  0826               	movf	?a_DisplayChar+2,w
   634  0E05  1803               	btfsc	3,0
   635  0E06  2E25               	goto	L1
   636  0E07  0720               	addwf	?_DisplayChar,w
   637  0E08  00C4               	movwf	code_ptr
   638  0E09  0821               	movf	?_DisplayChar+1,w
   639  0E0A  00C5               	movwf	code_ptr+1
   640  0E0B  0844               	movf	code_ptr,w
   641  0E0C  1803               	btfsc	3,0
   642  0E0D  0AC5               	incf	code_ptr+1
   643  0E0E  120A  118A  202A   	fcall	string_table
      +       120A  158A         
   644  0E13  00F0               	movwf	btemp
   645  0E14  3041               	movlw	65
   646  0E15  0270               	subwf	btemp,w
   647                           ;lcd.c: 116: temp=0x41+(str[i]-'A');
   648  0E16  0826               	movf	?a_DisplayChar+2,w
   649  0E17  1C03               	btfss	3,0
   650  0E18  2E25               	goto	L1
   651  0E19  0720               	addwf	?_DisplayChar,w
   652  0E1A  00C4               	movwf	code_ptr
   653  0E1B  0821               	movf	?_DisplayChar+1,w
   654  0E1C  00C5               	movwf	code_ptr+1
   655  0E1D  0844               	movf	code_ptr,w
   656  0E1E  1803               	btfsc	3,0
   657  0E1F  0AC5               	incf	code_ptr+1
   658  0E20  120A  118A  202A   	fcall	string_table
   659  0E23  00A5               	movwf	?a_DisplayChar+1
   660                           ;lcd.c: 117: if(str[i]<='z' && str[i]>='a')
   661  0E24  0826               	movf	?a_DisplayChar+2,w
   662  0E25                     L1
   663  0E25  0720               	addwf	?_DisplayChar,w
   664  0E26  00C4               	movwf	code_ptr
   665  0E27  0821               	movf	?_DisplayChar+1,w
   666  0E28  00C5               	movwf	code_ptr+1
   667  0E29  0844               	movf	code_ptr,w
   668  0E2A  1803               	btfsc	3,0
   669  0E2B  0AC5               	incf	code_ptr+1
   670  0E2C  120A  118A  202A   	fcall	string_table
      +       120A  158A         
   671  0E31  00F0               	movwf	btemp
   672  0E32  307B               	movlw	123
   673  0E33  0270               	subwf	btemp,w
   674  0E34  0826               	movf	?a_DisplayChar+2,w
   675  0E35  1803               	btfsc	3,0
   676  0E36  2E55               	goto	L2
   677  0E37  0720               	addwf	?_DisplayChar,w
   678  0E38  00C4               	movwf	code_ptr
   679  0E39  0821               	movf	?_DisplayChar+1,w
   680  0E3A  00C5               	movwf	code_ptr+1
   681  0E3B  0844               	movf	code_ptr,w
   682  0E3C  1803               	btfsc	3,0
   683  0E3D  0AC5               	incf	code_ptr+1
   684  0E3E  120A  118A  202A   	fcall	string_table
      +       120A  158A         
   685  0E43  00F0               	movwf	btemp
   686  0E44  3061               	movlw	97
   687  0E45  0270               	subwf	btemp,w
   688                           ;lcd.c: 118: temp=0x61+(str[i]-'a');
   689  0E46  0826               	movf	?a_DisplayChar+2,w
   690  0E47  1C03               	btfss	3,0
   691  0E48  2E55               	goto	L2
   692  0E49  0720               	addwf	?_DisplayChar,w
   693  0E4A  00C4               	movwf	code_ptr
   694  0E4B  0821               	movf	?_DisplayChar+1,w
   695  0E4C  00C5               	movwf	code_ptr+1
   696  0E4D  0844               	movf	code_ptr,w
   697  0E4E  1803               	btfsc	3,0
   698  0E4F  0AC5               	incf	code_ptr+1
   699  0E50  120A  118A  202A   	fcall	string_table
   700  0E53  00A5               	movwf	?a_DisplayChar+1
   701                           ;lcd.c: 119: if(str[i]<='9' && str[i]>='0')
   702  0E54  0826               	movf	?a_DisplayChar+2,w
   703  0E55                     L2
   704  0E55  0720               	addwf	?_DisplayChar,w
   705  0E56  00C4               	movwf	code_ptr
   706  0E57  0821               	movf	?_DisplayChar+1,w
   707  0E58  00C5               	movwf	code_ptr+1
   708  0E59  0844               	movf	code_ptr,w
   709  0E5A  1803               	btfsc	3,0
   710  0E5B  0AC5               	incf	code_ptr+1
   711  0E5C  120A  118A  202A   	fcall	string_table
      +       120A  158A         
   712  0E61  00F0               	movwf	btemp
   713  0E62  303A               	movlw	58
   714  0E63  0270               	subwf	btemp,w
   715  0E64  0826               	movf	?a_DisplayChar+2,w
   716  0E65  1803               	btfsc	3,0
   717  0E66  2E85               	goto	L3
   718  0E67  0720               	addwf	?_DisplayChar,w
   719  0E68  00C4               	movwf	code_ptr
   720  0E69  0821               	movf	?_DisplayChar+1,w
   721  0E6A  00C5               	movwf	code_ptr+1
   722  0E6B  0844               	movf	code_ptr,w
   723  0E6C  1803               	btfsc	3,0
   724  0E6D  0AC5               	incf	code_ptr+1
   725  0E6E  120A  118A  202A   	fcall	string_table
      +       120A  158A         
   726  0E73  00F0               	movwf	btemp
   727  0E74  3030               	movlw	48
   728  0E75  0270               	subwf	btemp,w
   729                           ;lcd.c: 120: temp=0x30+(str[i]-'0');
   730  0E76  0826               	movf	?a_DisplayChar+2,w
   731  0E77  1C03               	btfss	3,0
   732  0E78  2E85               	goto	L3
   733  0E79  0720               	addwf	?_DisplayChar,w
   734  0E7A  00C4               	movwf	code_ptr
   735  0E7B  0821               	movf	?_DisplayChar+1,w
   736  0E7C  00C5               	movwf	code_ptr+1
   737  0E7D  0844               	movf	code_ptr,w
   738  0E7E  1803               	btfsc	3,0
   739  0E7F  0AC5               	incf	code_ptr+1
   740  0E80  120A  118A  202A   	fcall	string_table
   741  0E83  00A5               	movwf	?a_DisplayChar+1
   742                           ;lcd.c: 121: if(str[i]=='!') temp=0x21;
   743  0E84  0826               	movf	?a_DisplayChar+2,w
   744  0E85                     L3
   745  0E85  0720               	addwf	?_DisplayChar,w
   746  0E86  00C4               	movwf	code_ptr
   747  0E87  0821               	movf	?_DisplayChar+1,w
   748  0E88  00C5               	movwf	code_ptr+1
   749  0E89  0844               	movf	code_ptr,w
   750  0E8A  1803               	btfsc	3,0
   751  0E8B  0AC5               	incf	code_ptr+1
   752  0E8C  120A  118A  202A   	fcall	string_table
      +       120A  158A         
   753  0E91  3A21               	xorlw	33
   754  0E92  1D03               	btfss	3,2
   755  0E93  2E96               	goto	l28
   756  0E94  3021               	movlw	33
   757  0E95  00A5               	movwf	?a_DisplayChar+1
   758  0E96                     l28
   759                           ;lcd.c: 122: if(str[i]==',') temp=0x2c;
   760  0E96  0826               	movf	?a_DisplayChar+2,w
   761  0E97  0720               	addwf	?_DisplayChar,w
   762  0E98  00C4               	movwf	code_ptr
   763  0E99  0821               	movf	?_DisplayChar+1,w
   764  0E9A  00C5               	movwf	code_ptr+1
   765  0E9B  0844               	movf	code_ptr,w
   766  0E9C  1803               	btfsc	3,0
   767  0E9D  0AC5               	incf	code_ptr+1
   768  0E9E  120A  118A  202A   	fcall	string_table
      +       120A  158A         
   769  0EA3  3A2C               	xorlw	44
   770  0EA4  1D03               	btfss	3,2
   771  0EA5  2EA8               	goto	l29
   772  0EA6  302C               	movlw	44
   773  0EA7  00A5               	movwf	?a_DisplayChar+1
   774  0EA8                     l29
   775                           ;lcd.c: 123: if(str[i]==':') temp=0x3a;
   776  0EA8  0826               	movf	?a_DisplayChar+2,w
   777  0EA9  0720               	addwf	?_DisplayChar,w
   778  0EAA  00C4               	movwf	code_ptr
   779  0EAB  0821               	movf	?_DisplayChar+1,w
   780  0EAC  00C5               	movwf	code_ptr+1
   781  0EAD  0844               	movf	code_ptr,w
   782  0EAE  1803               	btfsc	3,0
   783  0EAF  0AC5               	incf	code_ptr+1
   784  0EB0  120A  118A  202A   	fcall	string_table
      +       120A  158A         
   785  0EB5  3A3A               	xorlw	58
   786  0EB6  1D03               	btfss	3,2
   787  0EB7  2EBA               	goto	l30
   788  0EB8  303A               	movlw	58
   789  0EB9  00A5               	movwf	?a_DisplayChar+1
   790  0EBA                     l30
   791                           ;lcd.c: 124: if(str[i]=='.') temp=0x2e;
   792  0EBA  0826               	movf	?a_DisplayChar+2,w
   793  0EBB  0720               	addwf	?_DisplayChar,w
   794  0EBC  00C4               	movwf	code_ptr
   795  0EBD  0821               	movf	?_DisplayChar+1,w
   796  0EBE  00C5               	movwf	code_ptr+1
   797  0EBF  0844               	movf	code_ptr,w
   798  0EC0  1803               	btfsc	3,0
   799  0EC1  0AC5               	incf	code_ptr+1
   800  0EC2  120A  118A  202A   	fcall	string_table
      +       120A  158A         
   801  0EC7  3A2E               	xorlw	46
   802  0EC8  1D03               	btfss	3,2
   803  0EC9  2ECC               	goto	l31
   804  0ECA  302E               	movlw	46
   805  0ECB  00A5               	movwf	?a_DisplayChar+1
   806  0ECC                     l31
   807                           ;lcd.c: 125: if(str[i]==' ') temp=0x20;
   808  0ECC  0826               	movf	?a_DisplayChar+2,w
   809  0ECD  0720               	addwf	?_DisplayChar,w
   810  0ECE  00C4               	movwf	code_ptr
   811  0ECF  0821               	movf	?_DisplayChar+1,w
   812  0ED0  00C5               	movwf	code_ptr+1
   813  0ED1  0844               	movf	code_ptr,w
   814  0ED2  1803               	btfsc	3,0
   815  0ED3  0AC5               	incf	code_ptr+1
   816  0ED4  120A  118A  202A   	fcall	string_table
      +       120A  158A         
   817  0ED9  3A20               	xorlw	32
   818  0EDA  1D03               	btfss	3,2
   819  0EDB  2EDE               	goto	l32
   820  0EDC  3020               	movlw	32
   821  0EDD  00A5               	movwf	?a_DisplayChar+1
   822  0EDE                     l32
   823                           ;lcd.c: 126: if(str[i]== 39) temp=0x27;
   824  0EDE  0826               	movf	?a_DisplayChar+2,w
   825  0EDF  0720               	addwf	?_DisplayChar,w
   826  0EE0  00C4               	movwf	code_ptr
   827  0EE1  0821               	movf	?_DisplayChar+1,w
   828  0EE2  00C5               	movwf	code_ptr+1
   829  0EE3  0844               	movf	code_ptr,w
   830  0EE4  1803               	btfsc	3,0
   831  0EE5  0AC5               	incf	code_ptr+1
   832  0EE6  120A  118A  202A   	fcall	string_table
      +       120A  158A         
   833  0EEB  3A27               	xorlw	39
   834  0EEC  1D03               	btfss	3,2
   835  0EED  2EF0               	goto	l33
   836  0EEE  3027               	movlw	39
   837  0EEF  00A5               	movwf	?a_DisplayChar+1
   838  0EF0                     l33
   839                           ;lcd.c: 127: if(str[i]=='-') temp=0x2d;
   840  0EF0  0826               	movf	?a_DisplayChar+2,w
   841  0EF1  0720               	addwf	?_DisplayChar,w
   842  0EF2  00C4               	movwf	code_ptr
   843  0EF3  0821               	movf	?_DisplayChar+1,w
   844  0EF4  00C5               	movwf	code_ptr+1
   845  0EF5  0844               	movf	code_ptr,w
   846  0EF6  1803               	btfsc	3,0
   847  0EF7  0AC5               	incf	code_ptr+1
   848  0EF8  120A  118A  202A   	fcall	string_table
      +       120A  158A         
   849  0EFD  3A2D               	xorlw	45
   850  0EFE  1D03               	btfss	3,2
   851  0EFF  2F02               	goto	l34
   852  0F00  302D               	movlw	45
   853  0F01  00A5               	movwf	?a_DisplayChar+1
   854  0F02                     l34
   855                           ;lcd.c: 128: if(str[i]=='<') temp=0x3c;
   856  0F02  0826               	movf	?a_DisplayChar+2,w
   857  0F03  0720               	addwf	?_DisplayChar,w
   858  0F04  00C4               	movwf	code_ptr
   859  0F05  0821               	movf	?_DisplayChar+1,w
   860  0F06  00C5               	movwf	code_ptr+1
   861  0F07  0844               	movf	code_ptr,w
   862  0F08  1803               	btfsc	3,0
   863  0F09  0AC5               	incf	code_ptr+1
   864  0F0A  120A  118A  202A   	fcall	string_table
      +       120A  158A         
   865  0F0F  3A3C               	xorlw	60
   866  0F10  1D03               	btfss	3,2
   867  0F11  2F14               	goto	l35
   868  0F12  303C               	movlw	60
   869  0F13  00A5               	movwf	?a_DisplayChar+1
   870  0F14                     l35
   871                           ;lcd.c: 129: WRData(temp);
   872  0F14  0825               	movf	?a_DisplayChar+1,w
   873  0F15  25B7  120A  158A   	fcall	_WRData
   874                           ;lcd.c: 130: }
   875  0F18  0AA6               	incf	?a_DisplayChar+2
   876  0F19  2DE9               	goto	l24
   877                           ;lcd.c: 189: void Test()
   878                           ;lcd.c: 190: {
   879  0F1A                     _Test
   880                           ;lcd.c: 191: CleanScreen();
   881                           ;lcd.c: 170: WRCommand(0x01);
   882  0F1A  3001               	movlw	1
   883  0F1B  25AD  120A  158A   	fcall	_WRCommand
   884                           ;lcd.c: 192: DisplayChar("Y're welcome!!",1,0);
   885  0F1E  305C               	movlw	low u19
   886  0F1F  00A0               	movwf	?_DisplayChar
   887  0F20  3000               	movlw	high u19
   888  0F21  00A1               	movwf	?_DisplayChar+1
   889  0F22  01A2               	clrf	?_DisplayChar+2
   890  0F23  0AA2               	incf	?_DisplayChar+2
   891  0F24  01A3               	clrf	?_DisplayChar+3
   892  0F25  25CA               	fcall	_DisplayChar
   893                           ;lcd.c: 193: DisplayChar("What a fuck !!",18,1)
      +                          ;
   894  0F26  306B               	movlw	low u29
   895  0F27  00A0               	movwf	?_DisplayChar
   896  0F28  3000               	movlw	high u29
   897  0F29  00A1               	movwf	?_DisplayChar+1
   898  0F2A  3012               	movlw	18
   899  0F2B  00A2               	movwf	?_DisplayChar+2
   900  0F2C  01A3               	clrf	?_DisplayChar+3
   901  0F2D  0AA3               	incf	?_DisplayChar+3
   902  0F2E  25CA               	fcall	_DisplayChar
   903                           ;lcd.c: 194: HideCursor();
   904                           ;lcd.c: 175: WRCommand(0x0c);
   905  0F2F  300C               	movlw	12
   906  0F30  25AD  120A  158A   	fcall	_WRCommand
   907  0F33                     l60
   908                           ;lcd.c: 195: for(;;)ScreenScroll(0);
   909  0F33  3000               	movlw	0
   910  0F34  258D               	fcall	_ScreenScroll
   911  0F35  2F33               	goto	l60
   912  0F36                     _DisplayNum
   913                           ;	_digit assigned to ?a_DisplayNum+0
   914  0000                     _DisplayNum$digit	set	?a_DisplayNum
   915                           ;lcd.c: 199: unsigned char digit[5];
   916  0F36  300A               	movlw	10
   917  0F37  00F2               	movwf	btemp+2
   918  0F38  01F3               	clrf	btemp+3
   919  0F39  1283               	bcf	3,5
   920  0F3A  1303               	bcf	3,6	;carry unused
   921  0F3B  0821               	movf	?_DisplayNum+1,w
   922  0F3C  00F1               	movwf	btemp+1
   923  0F3D  0820               	movf	?_DisplayNum,w
   924  0F3E  00F0               	movwf	btemp
   925  0F3F  120A  118A  2783   	fcall	awmod
   926  0F42  0870               	movf	btemp,w
   927  0F43  3E30               	addlw	48
   928  0F44  00A4               	movwf	?a_DisplayNum+4
   929                           ;lcd.c: 201: digit[3]=(val%100-digit[4])/10+48;

⌨️ 快捷键说明

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