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

📄 asmpro.lst

📁 完整功放的控制程序
💻 LST
📖 第 1 页 / 共 5 页
字号:
00B2 0200CF     =1   193               LJMP  LBL_DIM_11
00B5            =1   194     LBL_DIM_3:        
00B5 B40405     =1   195               CJNE  A,#04H,LBL_DIM_4
00B8 748C       =1   196               MOV   A,#8CH
00BA 0200CF     =1   197               LJMP  LBL_DIM_11
00BD            =1   198     LBL_DIM_4:        
00BD B40505     =1   199               CJNE  A,#05H,LBL_DIM_5
00C0 748D       =1   200               MOV   A,#8DH
00C2 0200CF     =1   201               LJMP  LBL_DIM_11
00C5            =1   202     LBL_DIM_5:        
00C5 B40605     =1   203               CJNE  A,#06H,LBL_DIM_6
00C8 748E       =1   204               MOV   A,#8EH
00CA 0200CF     =1   205               LJMP  LBL_DIM_11
00CD            =1   206     LBL_DIM_6:
00CD 748F       =1   207               MOV    A,#8FH
00CF            =1   208     LBL_DIM_11:          
00CF A200     F =1   209               MOV   C,B_CLOSE_MACH
00D1 92E3       =1   210               MOV   ACC.3,C
                =1   211               
00D3 1200DA     =1   212               LCALL DISP                    ;send data to pt6311,here is control disp dimming
00D6 00         =1   213               NOP
00D7 D2B7       =1   214               SETB  BC_STB_6311             ;STD=1
00D9 22         =1   215               RET
                =1   216     ;********** 清除11段数据显示(清荧光屏) ********
                =1   217     
                =1   218     ;********** 送数据到6311的LED口 *********
                =1   219     ;================================= 文件内部子程序 ================================
                =1   220     ;************** 写一字节到6311 ************
                =1   221     ;******************************************
                =1   222     ;参数:  ACC     要写入的数据(从bit0位开始送出)
                =1   223     ;返回:
                =1   224     ;占用:  ACC, R0
                =1   225     
00DA 7808       =1   226     DISP:     MOV   R0,#008H                ;send command to pt6311
00DC C3         =1   227               CLR   C
00DD C2B6       =1   228     LBL206:   CLR   BC_CLK_6311             ;PT6311 CLK
00DF 13         =1   229               RRC   A
A51 MACRO ASSEMBLER      ASMPRO                                                              DATE  21/06/03   PAGE     5


LOC  OBJ            LINE     SOURCE

00E0 92A6       =1   230               MOV   BC_DIN_6311,C           ;send data to pt6311
00E2 00         =1   231               NOP
00E3 00         =1   232               NOP
00E4 00         =1   233               NOP
00E5 00         =1   234               NOP
00E6 00         =1   235               NOP
00E7 D2B6       =1   236               SETB  BC_CLK_6311             ;CLK 
00E9 00         =1   237               NOP
00EA 00         =1   238               NOP
00EB 00         =1   239               NOP
00EC 00         =1   240               NOP
00ED D8EE       =1   241               DJNZ  R0, LBL206
00EF D2A6       =1   242               SETB  BC_DIN_6311
00F1 D2B6       =1   243               SETB  BC_CLK_6311             ;BC_CLK_6311 normal high
00F3 22         =1   244               RET
                =1   245     ;******************************************
                     246     
                     247             $INCLUDE (PT6311_2.ASM)        
                =1   248     ;*******************************第二个PT6311 器件子程序集 ****************************
                =1   249     ;VFD控制驱动器
                =1   250     ;占用:  ACC, R0, R1
                =1   251     
                =1   252             ;************ 公共变量定义 ****************
                =1   253             PUBLIC  TWVFD_6311
                =1   254             PUBLIC  TSETUP_6311
                =1   255             PUBLIC  TDIM_VFD
                =1   256             PUBLIC  TWLED_6311
                =1   257            
                =1   258             ;************* 变量说明 *******************
  00A6          =1   259             TBC_DIN_6311    BIT     P2.6    ;数据输入脚
  00A6          =1   260             TBC_DOUT_6311   BIT     P2.6    ;数据输出脚
  00B6          =1   261             TBC_CLK_6311    BIT     P3.6    ;时钟
  00B4          =1   262             TBC_STB_6311    BIT     P3.4    ;使能脚
                =1   263             
                =1   264             ;************** 常数定义 ******************
  0018          =1   265             TPT6311KEY_NUM  EQU   24        ;现在用的6311键总数(48个)
  0042          =1   266             TREAD_6311KEY   EQU   42H       ;PT6311读键值命令符
                =1   267     ;=============================== 公共子程序 (可被C调用) ===============================
                =1   268     
                =1   269     ;************* 写6311显示内存  **************
                =1   270     ;********************************************
                =1   271     ;参数1: PAR     要写的显存地址(MSB: 1 1 B5,B4,B3,B2,B1,B0 :LSB)(B5-B0 MEM START ADDRESS)
                =1   272     ;参数2: PAR+03H 写的高1位数据
                =1   273     ;参数3: PAR+02H 写的中8位数据
                =1   274     ;参数4: PAR+01H 写的低8位数据(先送出, 且从bit0位开始)
                =1   275     ;返回:
                =1   276     ;占用:  ACC
                =1   277     
00F4            =1   278     TWVFD_6311:                      ;发送数据到PT6311进行显示
00F4 C2B4       =1   279               CLR   TBC_STB_6311      ;pt6311 stb=0 (ENABLE)
00F6 7440       =1   280               MOV   A,#40H            ;data set command--write data to disp mem by increment add
                             ress mod
00F8 120182     =1   281               LCALL TDISP             ;sendn data to pt6311 here is data set command
00FB D2B4       =1   282               SETB  TBC_STB_6311      ;STD=1 (DISABLE)
00FD 00         =1   283               NOP
00FE C2B4       =1   284               CLR   TBC_STB_6311      ;PT6311 ENABLE
0100 E500     F =1   285               MOV   A, PAR            ;pt6311 disp mem start mem in 1DH
0102 120182     =1   286               LCALL TDISP             ;send data to pt6311 here is address set command
                =1   287               
A51 MACRO ASSEMBLER      ASMPRO                                                              DATE  21/06/03   PAGE     6


LOC  OBJ            LINE     SOURCE

0105 C3         =1   288               CLR   C
0106 E500     F =1   289               MOV   A,PAR+02H
0108 33         =1   290               RLC   A
0109 D2E0       =1   291               SETB  ACC.0             ;P31段固定点亮
010B F500     F =1   292               MOV   PAR+02H,A
010D E500     F =1   293               MOV   A,PAR+01H
010F 33         =1   294               RLC   A
0110 F500     F =1   295               MOV   PAR+01,A
                =1   296               
0112 E500     F =1   297               MOV   A, PAR+02H
0114 120182     =1   298               LCALL TDISP             ;send data to pt6311 here is transmission data
0117 E500     F =1   299               MOV   A, PAR+01H
0119 120182     =1   300               LCALL TDISP             ;send data to pt6311 here is transmission data
011C D2B4       =1   301               SETB  TBC_STB_6311      ;PT6311 DISABLE
011E 22         =1   302               RET
                =1   303     
                =1   304     
                =1   305     ;******** 读键盘按键子程序  ************
                =1   306     ;***************************************
                =1   307     ;参数:
                =1   308     ;返回: PAR      返回键值, 0=无按键
                =1   309     ;占用: ACC
                =1   310     
                =1   311     ;*********************************************
                =1   312     ;参数:
                =1   313     ;返回:
                =1   314     ;占用: ACC
                =1   315     
011F            =1   316     TSETUP_6311:
011F C2B4       =1   317            CLR   TBC_STB_6311      ;ready to send data to pt6311 STB
0121 740B       =1   318            MOV   A,#0BH            ;0000,1011=0BH  12D,16P
0123 120182     =1   319            LCALL TDISP             ;send command to pt6311,here is set displayer mod,11dig/17seg
                             
0126 D2B4       =1   320            SETB  TBC_STB_6311      ;STD
0128 22         =1   321            RET
                =1   322     
                =1   323     ;********** 打开荧光显示  **************
                =1   324     ;参数:
                =1   325     ;返回:
                =1   326     ;占用:  ACC
                =1   327     
0129 C2B4       =1   328     TDIM_VFD: CLR   TBC_STB_6311             ;STD=0  点亮显示字符
012B 00         =1   329               NOP
012C E500     F =1   330               MOV   A,DIM_NUM
012E B40005     =1   331               CJNE  A,#00H,TLBL_DIM_00
0131 7488       =1   332               MOV   A,#88H
0133 020168     =1   333               LJMP  TLBL_DIM_11
0136            =1   334     TLBL_DIM_00:
0136 B40105     =1   335               CJNE  A,#01H,TLBL_DIM_1
0139 7489       =1   336               MOV   A,#89H
013B 020168     =1   337               LJMP  TLBL_DIM_11
013E            =1   338     TLBL_DIM_1:       
013E B40205     =1   339               CJNE  A,#02H,TLBL_DIM_2
0141 748A       =1   340               MOV   A,#8AH
0143 020168     =1   341               LJMP  TLBL_DIM_11
0146            =1   342     TLBL_DIM_2:       
0146 B40305     =1   343               CJNE  A,#03H,TLBL_DIM_3
0149 748B       =1   344               MOV   A,#8BH
014B 020168     =1   345               LJMP  TLBL_DIM_11
A51 MACRO ASSEMBLER      ASMPRO                                                              DATE  21/06/03   PAGE     7


LOC  OBJ            LINE     SOURCE

014E            =1   346     TLBL_DIM_3:       
014E B40405     =1   347               CJNE  A,#04H,TLBL_DIM_4
0151 748C       =1   348               MOV   A,#8CH
0153 020168     =1   349               LJMP  TLBL_DIM_11
0156            =1   350     TLBL_DIM_4:       
0156 B40505     =1   351               CJNE  A,#05H,TLBL_DIM_5
0159 748D       =1   352               MOV   A,#8DH
015B 020168     =1   353               LJMP  TLBL_DIM_11
015E            =1   354     TLBL_DIM_5:       
015E B40605     =1   355               CJNE  A,#06H,TLBL_DIM_6
0161 748E       =1   356               MOV   A,#8EH
0163 020168     =1   357               LJMP  TLBL_DIM_11
0166            =1   358     TLBL_DIM_6:
0166 748F       =1   359               MOV    A,#8FH
0168            =1   360     TLBL_DIM_11:     
                =1   361     
0168 A200     F =1   362               MOV   C,B_CLOSE_MACH
016A 92E3       =1   363               MOV   ACC.3,C
                =1   364                    
016C 120182     =1   365               LCALL TDISP                   ;send data to pt6311,here is control disp dimming
016F 00         =1   366               NOP
0170 D2B4       =1   367               SETB  TBC_STB_6311             ;STD=1
0172 22         =1   368               RET
                =1   369     ;********** 清除11段数据显示(清荧光屏) ********
                =1   370     
                =1   371     ;********** 送数据到6311的LED口 *********
                =1   372     ;****************************************
                =1   373     ;参数:  PAR     要送入的数据
                =1   374     ;返回:
                =1   375     ;占用:  ACC
                =1   376     
0173            =1   377     TWLED_6311:
0173 C2B4       =1   378         CLR  TBC_STB_6311            ;pt6311 stb=0 (ENABLE)
0175 7441       =1   379         MOV  A,#41H                 ;data set command--write data to LED PORT
0177 120182     =1   380         LCALL TDISP                 ;sendn data to pt6311 here is data set command
017A E500     F =1   381         MOV  A, PAR                 ;pt6311 LED DATA
017C 120182     =1   382         LCALL TDISP                 ;send data to pt6311 here is address set command
017F D2B4       =1   383         SETB TBC_STB_6311            ;PT6311 DISABLE
0181 22         =1   384         RET
                =1   385     
                =1   386     ;================================= 文件内部子程序 ================================
                =1   387     ;************** 写一字节到6311 ************
                =1   388     ;******************************************
                =1   389     ;参数:  ACC     要写入的数据(从bit0位开始送出)
                =1   390     ;返回:
                =1   391     ;占用:  ACC, R0
                =1   392     
0182 7808       =1   393     TDISP:    MOV   R0,#008H                ;send command to pt6311

⌨️ 快捷键说明

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