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

📄 lcm9864.lst

📁 基于三星S6B0724驱动的PIC点阵液晶98*98点阵程序
💻 LST
📖 第 1 页 / 共 4 页
字号:
   290  0166  3404               	retlw	4
   291  0167  347A               	retlw	122
   292  0168  3443               	retlw	67
   293  0169  3442               	retlw	66
   294  016A  3442               	retlw	66
   295  016B  34F2               	retlw	-14
   296  016C  344B               	retlw	75
   297  016D  3408               	retlw	8
   298  016E  3408               	retlw	8
   299  016F  3400               	retlw	0
   300  0170  3400               	retlw	0
   301  0171  3400               	retlw	0
   302  0172  3400               	retlw	0
   303  0173  34F0               	retlw	-16
   304  0174  3424               	retlw	36
   305  0175  3444               	retlw	68
   306  0176  3408               	retlw	8
   307  0177  3488               	retlw	-120
   308  0178  3450               	retlw	80
   309  0179  3420               	retlw	32
   310  017A  3450               	retlw	80
   311  017B  3488               	retlw	-120
   312  017C  340C               	retlw	12
   313  017D  3408               	retlw	8
   314  017E  3400               	retlw	0
   315  017F  3404               	retlw	4
   316  0180  3484               	retlw	-124
   317  0181  3444               	retlw	68
   318  0182  3467               	retlw	103
   319  0183  3400               	retlw	0
   320  0184  3404               	retlw	4
   321  0185  3404               	retlw	4
   322  0186  3404               	retlw	4
   323  0187  3404               	retlw	4
   324  0188  34FF               	retlw	-1
   325  0189  3404               	retlw	4
   326  018A  3404               	retlw	4
   327  018B  340C               	retlw	12
   328  018C  3404               	retlw	4
   329  018D  3400               	retlw	0
   330  018E  3400               	retlw	0
   331  018F  3400               	retlw	0
   332  0190  3400               	retlw	0
   333  0191  34F8               	retlw	-8
   334  0192  3410               	retlw	16
   335  0193  3420               	retlw	32
   336  0194  3400               	retlw	0
   337  0195  3400               	retlw	0
   338  0196  3400               	retlw	0
   339  0197  34FC               	retlw	-4
   340  0198  3400               	retlw	0
   341  0199  3400               	retlw	0
   342  019A  3400               	retlw	0
   343  019B  3400               	retlw	0
   344  019C  3400               	retlw	0
   345                           
   346                           	psect	text3
   347                           ;lcm9864.c: 51: void write_command(unsigned cha
      +                          r send_command)
   348                           ;lcm9864.c: 52: {
   349  06A7                     _write_command
   350                           ;	_send_command assigned to ?a_write_command+0
   351  0000                     _write_command$send_command	set	?a_write_comman
      +                          d
   352                           ;_send_command stored from w
   353  06A7  0183               	clrf	3	;select bank 0
   354  06A8  00AA               	movwf	?a_write_command
   355                           ;lcm9864.c: 53: RS = 0;
   356  06A9  1007               	bcf	7,0
   357                           ;lcm9864.c: 54: RW = 0;
   358  06AA  1087               	bcf	7,1
   359                           ;lcm9864.c: 55: PORTD = send_command;
   360  06AB  0088               	movwf	8	;volatile
   361                           ;lcm9864.c: 56: E = 1;
   362  06AC  1507               	bsf	7,2
   363                           ;lcm9864.c: 57: E = 0;
   364  06AD  1107               	bcf	7,2
   365                           ;lcm9864.c: 58: }
   366  06AE  0008               	return
   367                           ;lcm9864.c: 59: void write_data(unsigned char s
      +                          end_data)
   368                           ;lcm9864.c: 60: {
   369  06AF                     _write_data
   370                           ;	_send_data assigned to ?a_write_data+0
   371  0000                     _write_data$send_data	set	?a_write_data
   372                           ;_send_data stored from w
   373  06AF  0183               	clrf	3	;select bank 0
   374  06B0  00A9               	movwf	?a_write_data
   375                           ;lcm9864.c: 61: write_command(x_line);
   376  06B1  0821               	movf	_x_line,w	;volatile
   377  06B2  26A7               	fcall	_write_command
   378                           ;lcm9864.c: 62: write_command(y_line);
   379  06B3  0822               	movf	_y_line,w	;volatile
   380  06B4  26A7               	fcall	_write_command
   381                           ;lcm9864.c: 63: RS = 1;
   382  06B5  1407               	bsf	7,0
   383                           ;lcm9864.c: 64: RW = 0;
   384  06B6  1087               	bcf	7,1
   385                           ;lcm9864.c: 65: PORTD = send_data;
   386  06B7  0829               	movf	?a_write_data,w
   387  06B8  0088               	movwf	8	;volatile
   388                           ;lcm9864.c: 66: E = 1;
   389  06B9  1507               	bsf	7,2
   390                           ;lcm9864.c: 67: E = 0;
   391  06BA  1107               	bcf	7,2
   392                           ;lcm9864.c: 68: y_line ++;
   393  06BB  0AA2               	incf	_y_line	;volatile
   394                           ;lcm9864.c: 69: if ((y_line & 0x0f) == 0x00)
   395  06BC  0822               	movf	_y_line,w	;volatile
   396  06BD  390F               	andlw	15
   397  06BE  1D03               	btfss	3,2
   398  06BF  0008               	return
   399                           ;lcm9864.c: 70: {
   400  06C0  0AA1               	incf	_x_line	;volatile
   401                           ;lcm9864.c: 72: y_line = 0x00;
   402  06C1  01A2               	clrf	_y_line	;volatile
   403                           ;lcm9864.c: 73: }
   404  06C2  0008               	return
   405  06C3                     _disp_data
   406                           ;	_x assigned to ?a_disp_data+0
   407  0000                     _disp_data$x	set	?a_disp_data
   408                           ;	_i assigned to ?a_disp_data+1
   409  0000                     _disp_data$i	set	?a_disp_data+1
   410                           ;_x stored from w
   411  06C3  0183               	clrf	3	;select bank 0
   412  06C4  00A7               	movwf	?a_disp_data
   413                           ;lcm9864.c: 77: unsigned char i;
   414  06C5  00A1               	movwf	_x_line	;volatile
   415                           ;lcm9864.c: 79: y_line = y;
   416  06C6  0823               	movf	?_disp_data,w
   417  06C7  00A2               	movwf	_y_line	;volatile
   418                           ;lcm9864.c: 80: PAGE = page;
   419  06C8  0824               	movf	?_disp_data+1,w
   420  06C9  00A0               	movwf	_PAGE	;volatile
   421                           ;lcm9864.c: 81: write_command(PAGE);
   422  06CA  0820               	movf	_PAGE,w	;volatile
   423  06CB  26A7               	fcall	_write_command
   424                           ;lcm9864.c: 82: if (size == 0x00)
   425  06CC  08A6               	movf	?_disp_data+3
   426  06CD  1D03               	btfss	3,2
   427  06CE  2EF6               	goto	l12
   428                           ;lcm9864.c: 83: {
   429  06CF  01A8               	clrf	?a_disp_data+1
   430  06D0                     l13
   431                           ;lcm9864.c: 85: {
   432                           ;lcm9864.c: 86: write_data(sz_number[charater*1
      +                          6+i]);
   433  06D0  3000               	movlw	_sz_number shr (0+8)
   434  06D1  008A               	movwf	10
   435  06D2  0E25               	swapf	?_disp_data+2,w
   436  06D3  39F0               	andlw	240
   437  06D4  0728               	addwf	?a_disp_data+1,w
   438  06D5  2013               	call	((_sz_number+-1)& (0+2047))| (($)& (0+-20
      +                          48))
   439  06D6  120A  118A  26AF   	fcall	_write_data
   440                           ;lcm9864.c: 87: }
   441  06D9  0AA8               	incf	?a_disp_data+1
   442  06DA  3008               	movlw	8
   443  06DB  0228               	subwf	?a_disp_data+1,w
   444  06DC  1C03               	btfss	3,0
   445  06DD  2ED0               	goto	l13
   446                           ;lcm9864.c: 88: PAGE = PAGE - 1;
   447  06DE  03A0               	decf	_PAGE	;volatile
   448                           ;lcm9864.c: 89: write_command(PAGE);
   449  06DF  0820               	movf	_PAGE,w	;volatile
   450  06E0  26A7               	fcall	_write_command
   451                           ;lcm9864.c: 90: x_line = x;
   452  06E1  0827               	movf	?a_disp_data,w
   453  06E2  00A1               	movwf	_x_line	;volatile
   454                           ;lcm9864.c: 91: y_line = y;
   455  06E3  0823               	movf	?_disp_data,w
   456  06E4  00A2               	movwf	_y_line	;volatile
   457                           ;lcm9864.c: 92: for (i = 0; i < 8;i++)
   458  06E5  01A8               	clrf	?a_disp_data+1
   459  06E6                     l16
   460                           ;lcm9864.c: 93: {
   461                           ;lcm9864.c: 94: write_data(sz_number[charater*1
      +                          6+i+8]);
   462  06E6  3000               	movlw	_sz_number shr (0+8)
   463  06E7  008A               	movwf	10
   464  06E8  0E25               	swapf	?_disp_data+2,w
   465  06E9  39F0               	andlw	240
   466  06EA  0728               	addwf	?a_disp_data+1,w
   467  06EB  3E08               	addlw	8
   468  06EC  2013               	call	((_sz_number+-1)& (0+2047))| (($)& (0+-20
      +                          48))
   469  06ED  120A  118A  26AF   	fcall	_write_data
   470                           ;lcm9864.c: 95: }
   471  06F0  0AA8               	incf	?a_disp_data+1
   472  06F1  3008               	movlw	8
   473  06F2  0228               	subwf	?a_disp_data+1,w
   474  06F3  1803               	btfsc	3,0
   475  06F4  0008               	return
   476  06F5  2EE6               	goto	l16
   477                           ;lcm9864.c: 96: }
   478  06F6                     l12
   479                           ;lcm9864.c: 98: {
   480  06F6  01A8               	clrf	?a_disp_data+1
   481  06F7                     l20
   482                           ;lcm9864.c: 100: {
   483                           ;lcm9864.c: 101: write_data(hz_charater[charate
      +                          r*32+i]);
   484  06F7  0825               	movf	?_disp_data+2,w
   485  06F8  00F0               	movwf	btemp
   486  06F9  3005               	movlw	5
   487  06FA  00F1               	movwf	btemp+1
   488  06FB                     u65
   489  06FB  1003               	bcf	3,0
   490  06FC  0DF0               	rlf	btemp
   491  06FD  0BF1               	decfsz	btemp+1
   492  06FE  2EFB               	goto	u65
   493  06FF  0870               	movf	btemp,w
   494  0700  0728               	addwf	?a_disp_data+1,w
   495  0701  00F0               	movwf	btemp
   496  0702  3001               	movlw	_hz_charater shr (0+8)
   497  0703  008A               	movwf	10
   498  0704  0870               	movf	btemp,w
   499  0705  2100               	call	((_hz_charater+-1)& (0+2047))| (($)& (0+-
      +                          2048))
   500  0706  120A  118A  26AF   	fcall	_write_data
   501                           ;lcm9864.c: 102: }
   502  0709  0AA8               	incf	?a_disp_data+1
   503  070A  3010               	movlw	16
   504  070B  0228               	subwf	?a_disp_data+1,w
   505  070C  1C03               	btfss	3,0
   506  070D  2EF7               	goto	l20
   507                           ;lcm9864.c: 103: PAGE = PAGE - 1;
   508  070E  03A0               	decf	_PAGE	;volatile
   509                           ;lcm9864.c: 104: write_command(PAGE);
   510  070F  0820               	movf	_PAGE,w	;volatile
   511  0710  26A7               	fcall	_write_command
   512                           ;lcm9864.c: 105: x_line = x;
   513  0711  0827               	movf	?a_disp_data,w
   514  0712  00A1               	movwf	_x_line	;volatile
   515                           ;lcm9864.c: 106: y_line = y;
   516  0713  0823               	movf	?_disp_data,w
   517  0714  00A2               	movwf	_y_line	;volatile
   518                           ;lcm9864.c: 107: for (i = 0; i < 16;i++)
   519  0715  01A8               	clrf	?a_disp_data+1
   520  0716                     l23
   521                           ;lcm9864.c: 108: {
   522                           ;lcm9864.c: 109: write_data(hz_charater[charate
      +                          r*32+i+16]);
   523  0716  0825               	movf	?_disp_data+2,w
   524  0717  00F0               	movwf	btemp
   525  0718  3005               	movlw	5
   526  0719  00F1               	movwf	btemp+1
   527  071A                     u85
   528  071A  1003               	bcf	3,0
   529  071B  0DF0               	rlf	btemp
   530  071C  0BF1               	decfsz	btemp+1
   531  071D  2F1A               	goto	u85
   532  071E  0870               	movf	btemp,w
   533  071F  0728               	addwf	?a_disp_data+1,w
   534  0720  3E10               	addlw	16
   535  0721  00F0               	movwf	btemp
   536  0722  3001               	movlw	_hz_charater shr (0+8)
   537  0723  008A               	movwf	10
   538  0724  0870               	movf	btemp,w
   539  0725  2100               	call	((_hz_charater+-1)& (0+2047))| (($)& (0+-
      +                          2048))
   540  0726  120A  118A  26AF   	fcall	_write_data
   541                           ;lcm9864.c: 110: }
   542  0729  0AA8               	incf	?a_disp_data+1
   543  072A  3010               	movlw	16
   544  072B  0228               	subwf	?a_disp_data+1,w
   545  072C  1803               	btfsc	3,0
   546  072D  0008               	return
   547  072E  2F16               	goto	l23
   548                           ;lcm9864.c: 129: void lcd_clear(void)
   549                           ;lcm9864.c: 130: {
   550  072F                     _lcd_clear
   551                           ;	_i assigned to ?a_lcd_clear+0
   552  0000                     _lcd_clear$i	set	?a_lcd_clear
   553                           ;	_j assigned to ?a_lcd_clear+1
   554  0000                     _lcd_clear$j	set	?a_lcd_clear+1
   555                           ;lcm9864.c: 131: unsigned char i,j;
   556  072F  30B0               	movlw	-80
   557  0730  0183               	clrf	3	;select bank 0
   558  0731  00A0               	movwf	_PAGE	;volatile
   559                           ;lcm9864.c: 134: for(i = 0;i < 8;i++)
   560  0732  01A3               	clrf	?a_lcd_clear
   561  0733                     l28
   562                           ;lcm9864.c: 135: {
   563                           ;lcm9864.c: 136: x_line = 0x10;
   564  0733  3010               	movlw	16
   565  0734  00A1               	movwf	_x_line	;volatile
   566                           ;lcm9864.c: 137: y_line = 0x00;
   567  0735  01A2               	clrf	_y_line	;volatile
   568                           ;lcm9864.c: 138: write_command(PAGE);
   569  0736  0820               	movf	_PAGE,w	;volatile
   570  0737  26A7               	fcall	_write_command
   571                           ;lcm9864.c: 139: for(j=0;j<98;j++)
   572  0738  01A4               	clrf	?a_lcd_clear+1
   573  0739                     l31
   574                           ;lcm9864.c: 140: {
   575                           ;lcm9864.c: 141: write_data(0x00);

⌨️ 快捷键说明

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