找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 2829|回复: 0
打印 上一主题 下一主题
收起左侧

智能信号发生器程序清单

[复制链接]
跳转到指定楼层
楼主
ID:84264 发表于 2015-6-29 20:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
程序清单
ORG    000H                           AJMP   100H ORG    0013H AJMP    KEY ORG    100H SETB    EA SETB    EX1 CLR     PSW.5 MOV    A , 50H LCALL  INI79 L1:     JNB     PSW.5 , L3 CLR     PSW.5          MOV   A, 50H LCALL  RDIR1 CJNE    A, #0FH, L1 L2:     JNB     PSW.5, L2 CLR     PSW.5 MOV    R5,50H LCALL  RDIR1  L3:     JNB     PSW.5, L3 CLR     PSW.5 MOV    A,50H LCALL  PDIR1 CJNE    A, #0FH, L2  L4:     MOV    40H,#00H MOV    41H,#00H MOV    42H,#00H  L5:     JNB     PSW.5,L5 CLR     PSW.5 MOV    40H,50H MOV    A ,50H LCALL   RDIR1 CJNE    A,#0FH,L6 AJMP    L4  L6:     MOV    41H,40H          MOV    40H,50H  L7:     JNB     PSW.5,L7 CLR     PSW.5 MOV    A,50H LCALL   RDIR1 CJNE    A,#0FH,L8 AJMP    L12  L8:     MOV    42H,41H    MOV    41H,40H          MOV    40H,50H L9:     JNB     PSW.5,L9 CLR     PSW.5 MOV    A,50H LCALL   RDIR1 CJNE    A,#0FH,L10 AJMP    L12  L10:    MOV    43H,42H MOV    42H,41H
MOV    41H,40H
MOV    40H,50H
L11:    JNB     PSW.5,L11
CLR     PSW.5 MOV    A,50H
LCALL   RDIR1
CJNE    A,#0FH,L4  L12:    LCALL   RDIR2 LCALL   DT
CJNE     R5,#0AH,L13
LCALL   PS0  L13:    CJNE     R5,#0BH,L14 LCALL   PS1  L14:    CJNE     R5,#0CH,L15
         LCALL   PS2
L15:    CJNE     R5,#0DH,L16          LCALL   PS3
L16:    CJNE     R5,#0EH,L17
        LCALL   PS4 L17:    AJMP     0000H   8209 初始化子程序 INI79:   MOV    DPTR,#0DFFFH   
        MOV    A,#0D1H MOVX  @DPTR,A  WND:   MOVX  A,@DPTR         
JB      ACC.7,WND MOV    A,#0H           MOVX  @DPTR,A MOV    A,#34H           MOV    IE,#84H           
RET










18
键输入中断子程序
KEY:   PUSH    DPL
PUSH    DPH PUSH    ACC PUSH    B
MOV     DPTR,#0DFFFH MOVX   A,@DPTR ANL     A,#0FH JZ       PKYR MOV    A,#40H MOVX   @DPTR,A
MOV    DPTR,#0DFFEH MOVX   A,@DPTR MOV    R2,A
ANL     A,#38H           RR      A RR      A RR      A
MOV    B,#08H MUL    AB XCH    A,R2 ANL    A,#07H ADD    A,R2 MOV    50H,A
SETB    PSW.5            
PKYR:  POP     B
POP     ACC POP     DPH POP     DPL RET  
显示子程序1
RDIR1: PUSH    DPL
PUSH    DPH
MOV    DPTR,#0DFFFH     MOV    A,#90H MOVX   @DPTR,A SETB    P1.0
MOV    A,50H            MOV    DPTR,#TAB MOVC   A,@A+DPTR MOV    DPTR,#0DFFFH MOVX  @DPTR,A LCALL  DL
POP     DPH POP     DPL RET
TAB:   DB      3FH,06H,5BH,4FH,66H
DB     6DH,7DH,06H,7FH,67H DB  77H,7CH,39H,5EH,79H,71H   
显示子程序2
RDIR2: PUSH    DPL
PUSH    DPH
MOV    DPTR,#0DFFFH     MOV    A,#90H MOVX   @DPTR,A MOV    R3,#10H
LA1:   SETB    P1.3
MOV    R0,#40H MOV    A,@R0
MOV    DPTR,#TAB1 MOVC   A,@A+DPTR MOV    DPTR,#0DFFEH MOVX  @DPTR,A LCALL  DL CLR     P1.3 SETB    P1.2 INC     R0 MOV    A,@R0
MOV    DPTR,#TAB1 MOVC   A,@A+DPTR MOV    DPTR,#0DFFEH MOVX  @DPTR,A LCALL  DL CLR     P1.2 SETB    P1.1 INC     R0 MOV    A,@R0
MOV    DPTR,#TAB1 MOVC   A,@A+DPTR MOV    DPTR,#0DFFEH MOVX   @DPTR,A LCALL   DL CLR     P1.1 SETP    P1.0










19
INC      R0 MOV    A,@R0
MOV    DPTR,#TAB1 MOVC   A,@A+DPTR MOV    DPTR,#0DFFEH MOVX   @DPTR,A LCALL   DL DJNZ    R3,LA1 POP     DPH POP     DPL RET
TAB1 :  DB      3FH,06H,5BH,4FH,66H
DB      
6DH,7DH,06H,7FH,67H
DB      
77H,7CH,39H,5EH,79H,71H

计算△t 子程序
DT:    CLR     P1.7
MOV    A,43H JZ       S1
MOV    R1,#00H AJMP    END
S1:    MOV    A,42H
ANL     A,#0EH JZ       S2
MOV    R1,#00H AJMP    END
S2:     MOV    A,41H
JNZ     S3
MOV    R1,#01H AJMP    END
S3:     MOV    A,41H
JZ       S7
MOV    B,#0AH MUL    AB ADD    A,40H MOV    R1,#00H CLR     C MOV    R6,A
S4:     ADD    A,R6          INC     R1          JNC     S4  S5:     CLR     C
ADD     A,R6 INC      R1
CJNE    A,#86H,S6
S6:    JC      S5
DEC     R1 AJMP    END
S7:   SETB    P1.7
MOV    A,40H CJNE    A,#09H,S8 MOVE   R1,#08H AJMP    END
S8:     MOV    A,40H
CJNE    A,#08H,S9 MOV    R1,#09H AJMP    END
S9:     MOV    A,40H
CJNE    A,#07H,S10 MOV    R1,#0BH AJMP    END
S10:    MOV    A,40H
CJNE    A,#06H,S11 MOV    R1,#0DH AJMP    END
S11:    MOV    A,40H
CJNE    A,#05H,S12 MOV    R1,#0FH AJMP    END
S12:    MOV    A,40H
CJNE    A,#40H,S13 MOV    R1,#13H AJMP    END
S13:    MOV    A,40H
CJNE    A,#03H,S14 MOV    R1,#1AH AJMP    END
S14:    MOV    A,40H
CJNE    A,#02H,S15 MOV    R1,#27H AJMP    END
S15:    MOV    A,40H
CJNE    A,#01H,0000H MOV    R1,#30H
END:   RET  










20
2ms延时子程序
DL:    PUSH    PSW
SETB     PSW.3 MOV     R1,#14H
DLA:  MOV     R2,#18H DLB:  NOP         NOP
        DJNZ     R2,DLB
DJNZ     R1,DLA POP      PSW RET
20us延时子程序 DL11:  NOP
NOP NOP NOP NOP  NOP NOP NOP NOP NOP NOP NOP NOP NOP NOP NOP NOP NOP NOP RET

1ms延时子程序
DL12:  PUSH     PSW
SETB     PSW.3 MOV     R1,#0AH
DL2A:  MOV     R2,#18H DL2B:  NOP
NOP
DJNZ     R2,DL2B DJNZ     R1,DL2A POP      PSW RET
三角波输出子程序
PS2:   MOV     R4,#80H EDA2:  MOV     A,R4
MOV     DPTR,#0BFFFH MOVX    @DPTR,A MOV     A,R1 JZ        ED23
JB        P1.7,ED22
ED21:  LCALL    DL11
DJNZ     R1,ED21 AJMP     ED23
ED22:  LCALL    DL12
DJNZ     R1,ED22
ED23:  CJNE,R4,#0FFH,ED24
AJMP     ED25
ED24:  INC      R4
INC      R4 INC      R4 INC      R4 AJMP    EDA2
ED25:  MOV    A,R4
MOV    DPTR,#0BFFFH MOVX   @DPTR,A MOV    A,R1 JZ      ED23A
JB      P1.7,ED22A
ED21A: LCALL  DL11
DJNZ    R1,ED21A AJMP    ED23A
ED22A: LCALL  DL12
DJNZ    R1,ED22A
ED23A:CJNE    R4,#80H,ED24A
AJMP    ED25A
ED24A: DEC     R4
DEC     R4 DEC     R4 DEC     R4 AJMP    ED25
ED25A: AJMP    PS2        









21
阶梯波输出子程序
PS4:   MOV    R4,#00H  EDA4:  MOV    R7,#08H  ED4A:  MOV    A,R4
MOV    DPTR,#0BFFFH MOVX   @DPTR,A MOV    A,R1 JZ      ED43
JB      P1.7,ED42
ED41:  LCALL  DL11
DJNZ   R1,ED41   
AJMP   ED43
ED42:  LCALL  DL12
DJNZ    R1,ED42
ED43:  DJNZ    R7,ED4A
CJNE    R4,#0FFH,ED44 AJMP    PS4
ED44:  MOV    A,R4
ADD    A,#10H MOV    R4,A AJMP    EDA4

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的积分奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表