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

📄 lcd.ls1

📁 一个完整的51单片机的操作糸统源程序! 内容十分丰富!很有借鉴价值!
💻 LS1
📖 第 1 页 / 共 5 页
字号:
A51 MACRO ASSEMBLER  LCD                                                                  10/31/2003 02:22:22 PAGE     1


MACRO ASSEMBLER A51 V7.01
OBJECT MODULE PLACED IN .\Lcd.OBJ
ASSEMBLER INVOKED BY: C:\Program Files\Keil\C51\BIN\A51.EXE .\Lcd.src PR(.\Lcd.ls1) EP DEBUG

LOC  OBJ            LINE     SOURCE

                       1     ; .\Lcd.SRC generated from: ..\SourceFile\Lcd.c
                       2     ; COMPILER INVOKED BY:
                       3     ;        C:\Program Files\Keil\C51\BIN\C51.EXE ..\SourceFile\Lcd.c LARGE BROWSE DEBUG OBJEC
                             TEXTEND PRINT(.\Lcd.lst) SRC(.\Lcd.SRC)
                       4     
                       5     
                       6     NAME    LCD
                       7     
                       8     ?PR?_SetPage?LCD     SEGMENT CODE 
                       9     ?PR?_SetColumn?LCD   SEGMENT CODE 
                      10     ?PR?InitTg19264?LCD  SEGMENT CODE 
                      11     ?PR?lcd_init?LCD     SEGMENT CODE 
                      12     ?PR?lcd_clear?LCD    SEGMENT CODE 
                      13     ?PR?_lcd_display_graphic?LCD             SEGMENT CODE 
                      14     ?XD?_lcd_display_graphic?LCD             SEGMENT XDATA OVERLAYABLE 
                      15     ?BI?_lcd_display_graphic?LCD             SEGMENT BIT OVERLAYABLE 
                      16     ?PR?_lcd_display_char?LCD                SEGMENT CODE 
                      17     ?XD?_lcd_display_char?LCD                SEGMENT XDATA OVERLAYABLE 
                      18     ?BI?_lcd_display_char?LCD                SEGMENT BIT OVERLAYABLE 
                      19     ?PR?_lcd_display_text?LCD                SEGMENT CODE 
                      20     ?XD?_lcd_display_text?LCD                SEGMENT XDATA OVERLAYABLE 
                      21     ?BI?_lcd_display_text?LCD                SEGMENT BIT OVERLAYABLE 
                      22     ?PR?_lcd_display_byte?LCD                SEGMENT CODE 
                      23     ?XD?_lcd_display_byte?LCD                SEGMENT XDATA OVERLAYABLE 
                      24     ?BI?_lcd_display_byte?LCD                SEGMENT BIT OVERLAYABLE 
                      25             EXTRN   XDATA (g_Graphic)
                      26             EXTRN   CODE (g_ASCII)
                      27             EXTRN   CODE (g_Data2Char)
                      28             EXTRN   CODE (_strlen)
                      29             EXTRN   CODE (?C?ILDIX)
                      30             EXTRN   CODE (?C?CLDPTR)
                      31             PUBLIC  ?_lcd_display_byte?BIT
                      32             PUBLIC  ?_lcd_display_byte?BYTE
                      33             PUBLIC  _lcd_display_byte
                      34             PUBLIC  ?_lcd_display_text?BIT
                      35             PUBLIC  ?_lcd_display_text?BYTE
                      36             PUBLIC  _lcd_display_text
                      37             PUBLIC  ?_lcd_display_char?BIT
                      38             PUBLIC  ?_lcd_display_char?BYTE
                      39             PUBLIC  _lcd_display_char
                      40             PUBLIC  ?_lcd_display_graphic?BIT
                      41             PUBLIC  ?_lcd_display_graphic?BYTE
                      42             PUBLIC  _lcd_display_graphic
                      43             PUBLIC  lcd_clear
                      44             PUBLIC  lcd_init
                      45     
----                  46             RSEG  ?XD?_lcd_display_byte?LCD
0000                  47     ?_lcd_display_byte?BYTE:
0000                  48          XStart?870:   DS   1
0001                  49          YStart?871:   DS   1
0002                  50           value?874:   DS   1
0003                  51             ORG  3
0003                  52           Shift?875:   DS   1
0004                  53          Result?876:   DS   1
                      54     
----                  55             RSEG  ?BI?_lcd_display_byte?LCD
0000                  56     ?_lcd_display_byte?BIT:
0000                  57            bHex?872:   DBIT   1
A51 MACRO ASSEMBLER  LCD                                                                  10/31/2003 02:22:22 PAGE     2

0001                  58     bReverseDisplay?873:   DBIT   1
                      59     
----                  60             RSEG  ?XD?_lcd_display_text?LCD
0000                  61     ?_lcd_display_text?BYTE:
0000                  62          XStart?764:   DS   1
0001                  63          YStart?765:   DS   1
0002                  64           pText?767:   DS   3
0005                  65             ORG  5
0005                  66               i?768:   DS   1
0006                  67             len?769:   DS   1
                      68     
----                  69             RSEG  ?BI?_lcd_display_text?LCD
0000                  70     ?_lcd_display_text?BIT:
0000                  71     bReverseDisplay?766:   DBIT   1
                      72     
----                  73             RSEG  ?XD?_lcd_display_graphic?LCD
0000                  74     ?_lcd_display_graphic?BYTE:
0000                  75          XStart?544:   DS   1
0001                  76          YStart?545:   DS   1
0002                  77           Width?546:   DS   1
0003                  78          Height?547:   DS   1
0004                  79     GraphicIndex?549:   DS   1
0005                  80             ORG  5
0005                  81       PageStart?552:   DS   1
0006                  82         PageEnd?553:   DS   1
                      83     
----                  84             RSEG  ?BI?_lcd_display_graphic?LCD
0000                  85     ?_lcd_display_graphic?BIT:
0000                  86     bReverseDisplay?548:   DBIT   1
                      87     
----                  88             RSEG  ?XD?_lcd_display_char?LCD
0000                  89     ?_lcd_display_char?BYTE:
0000                  90          XStart?655:   DS   1
0001                  91          YStart?656:   DS   1
0002                  92       character?658:   DS   1
0003                  93             ORG  3
0003                  94         PageEnd?662:   DS   1
                      95     
----                  96             RSEG  ?BI?_lcd_display_char?LCD
0000                  97     ?_lcd_display_char?BIT:
0000                  98     bReverseDisplay?657:   DBIT   1
                      99     ; /*************************************************/
                     100     ; 
                     101     ; /**************液晶显示屏*******************/
                     102     ; 
                     103     ; /***************2003年1月20日*******************/
                     104     ; 
                     105     ; /************WROTE BY WANGSW********************/
                     106     ; 
                     107     ; 
                     108     ; 
                     109     ; 
                     110     ; 
                     111     ; #include <absacc.h>                   /*XBYTE绝对外部内存空间头文件*/
                     112     ; #include <string.h>
                     113     ; #include <intrins.h>
                     114     ; #include "define.h"
                     115     ; #include "ascii.h"
                     116     ; #include "lcd.h"
                     117     ; 
                     118     ; 
                     119     ; #ifdef DP_51
                     120     ; #define WLCD XBYTE[0xF800]            /*r定义WLCD为写LCD的内容*/
                     121     ; #define RLCD XBYTE[0xF801]            /*r定义RLCD为读LCD的内容*/
                     122     ; #define RS XBYTE[0xF802]              /*对于TG19264A1,RS=0为命令,RS=1为数据*/
                     123     ; #endif
A51 MACRO ASSEMBLER  LCD                                                                  10/31/2003 02:22:22 PAGE     3

                     124     ; 
                     125     ; #ifdef TG19264
                     126     ; #define MAX_COLUMN                    64
                     127     ; #define MAX_PAGE                      8
                     128     ; #endif
                     129     ; 
                     130     ; 
                     131     ; #define SendCtr(value)        RS = 0; RS = 0; WLCD = value;
                     132     ; #define SendData(value)       RS = 1; RS = 1; WLCD = value;
                     133     ; 
                     134     ; /*******************************************************************/
                     135     ; //static void SendCtr(byte value);
                     136     ; //static void SendData(byte value);
                     137     ; static void SetPage(byte value);
                     138     ; static void SetColumn(byte value);
                     139     ; static void InitTg19264(void);
                     140     ; 
                     141     ; 
                     142     ; 
                     143     ; 
                     144     ; /****************************************************************************************
                             **
                     145     ; *函数名:              SetPage
                     146     ; *参数:                        value                   设置的页码值,从0~7有效
                     147     ; *返回值:              无
                     148     ; *描述:                        对于TG19264液晶屏,设置当前操作的页码值
                     149     ; *编写:                        王绍伟
                     150     ; *版本信息:            V1.0                    2003年8月15日
                     151     ; *****************************************************************************************
                             */
                     152     ; static void SetPage(byte value)
                     153     
----                 154             RSEG  ?PR?_SetPage?LCD
0000                 155     _SetPage:
                     156                             ; SOURCE LINE # 54
                     157     ;---- Variable 'value?040' assigned to Register 'R7' ----
                     158     ; {
                     159                             ; SOURCE LINE # 55
                     160     ; #ifdef TG19264
                     161     ;       SendCtr(0xB8 + value);
                     162                             ; SOURCE LINE # 57
0000 90F802          163             MOV     DPTR,#0F802H
0003 E4              164             CLR     A
0004 F0              165             MOVX    @DPTR,A
0005 F0              166             MOVX    @DPTR,A
0006 EF              167             MOV     A,R7
0007 24B8            168             ADD     A,#0B8H
0009 90F800          169             MOV     DPTR,#0F800H
000C F0              170             MOVX    @DPTR,A
                     171     ; #endif
                     172     ; }
                     173                             ; SOURCE LINE # 59
000D 22              174             RET     
                     175     ; END OF _SetPage
                     176     
                     177     ; 
                     178     ; 
                     179     ; /****************************************************************************************
                             **
                     180     ; *函数名:              SetColumn
                     181     ; *参数:                        value                   设置的X坐标位置,从0~63有效
                     182     ; *返回值:              无
                     183     ; *描述:                        设置当前液晶屏操作的X坐标位置
                     184     ; *编写:                        王绍伟
                     185     ; *版本信息:            V1.0                    2003年8月15日
                     186     ; *****************************************************************************************
A51 MACRO ASSEMBLER  LCD                                                                  10/31/2003 02:22:22 PAGE     4

                             */
                     187     ; static void SetColumn(byte value)
                     188     
----                 189             RSEG  ?PR?_SetColumn?LCD
0000                 190     _SetColumn:
                     191                             ; SOURCE LINE # 70
                     192     ;---- Variable 'value?141' assigned to Register 'R7' ----

⌨️ 快捷键说明

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