电子大神的日记本,供应链专家的功夫茶盘,在这里记录、分享与共鸣。

登录以开始

查表程序设计

查表在程序中应用十分广泛,以设计一流水灯为例

介绍设计方法

一。在ROM(程序存储器)将数据建表

TAB1:  DB 0FEH,0FDH,0FBH,0F7H            ; 设定数据

              DB 0EFH,0DFH,0BFH,07FH             
              DB 0FEH,0FDH,0FDH,0FDH            
              DB 0EFH,0DFH,0BFH,07FH            
              DB 01H   

                                       
  二。取表中数据             

                     MOV DPTR, #TAB1            ; 指向设定数据表位址
                     CLR A                                     ; 使偏移量为0
                     MOVC A,@A+DPTR          ; 取出设定数据

三。应用范例

                  ORG 00H
START:   MOV DPTR, #TAB1           ; 指向设定数据表位址
LOOP:     CLR A                                    ; 使偏移量为0
               MOVC A,@A+DPTR             ; 取出设定数据
               CJNE A,#01,LOOP1              ; 01为结束字符
               JMP START                            ; 结束返回
LOOP1: MOV P0,A                              ; 没结束则取出数据送到P0

               MOV R3,#250                         ; 改变R3(1-255),改变延时间的长短
               CALL T_100M                        ; 转延时子程序
               INC DPTR                                ; 取下一位数据
               JMP LOOP                             ; 循环



            ; ****延时子程序****
T_100M:


              MOV R4,#200
          D1: MOV R5,#249
              DJNZ R5,$
              DJNZ R4,D1
              DJNZ R3,T_100M
              RET

 


****TAB1:  DB 0FEH,0FDH,0FBH,0F7H            ; 设定数据


****              DB 0EFH,0DFH,0BFH,07FH             
              DB 0FEH,0FDH,0FDH,0FDH            
              DB 0EFH,0DFH,0BFH,07FH            
              DB 01H ****

end

     

博主
倪大德
欢迎您的光临
虚心学习充实自己 帮助别人巩固自己 相互交流提高自己 声明: 1.欢迎转载我博客文章!请标明出处! 2.欢迎评论我博客文章!
点击跳转