打印

DIY 交流异步电机控制器!!口号 能走多远就走多远!!!!!!!

[复制链接]
楼主: electron0101
手机看帖
扫描二维码
随时随地手机跟帖
41

关注进展

使用特权

评论回复
42
itelectron| | 2009-6-25 22:47 | 只看该作者

八卦1

使用特权

评论回复
43
stan_man| | 2009-6-30 09:55 | 只看该作者

方案可行

矢量控制算法和电路都没有问题呀,这个不是很难的

使用特权

评论回复
44
stan_man| | 2009-6-30 10:01 | 只看该作者

难点

电机的转速通过电压,电流信号、电机模型来估算。磁通的估算和速度估算是个问题,低频和高频是个重点。国内矢量的变频器还是有的。

使用特权

评论回复
45
itelectron| | 2009-6-30 20:40 | 只看该作者

stan_man 用的是啥 方法估算速度的!

矢量控制算法

使用特权

评论回复
46
itelectron| | 2009-6-30 20:44 | 只看该作者

刚开始哪个 θ 的值是怎么得来的! θ 的初值

目前先做 开环 

 在闭环 
 
先基速 
 
在弱磁

使用特权

评论回复
47
itelectron| | 2009-6-30 20:47 | 只看该作者

NND 目前手头活紧 搞这个东东时间少,

使用特权

评论回复
48
itelectron| | 2009-7-11 11:24 | 只看该作者

郁闷 标幺很头疼

使用特权

评论回复
49
cauhorse| | 2009-7-18 16:48 | 只看该作者

我也想整个驱动器

当然只是实验性质的。用来驱动无刷永磁同步直线电机。
先支持下楼主。方法应该有很多,转起来应该也不太难(N多论文里都有转起来的例子),至于性能。。估计肯定有些问题的。。还有成本。。好像也是不太好控制的。。不过话说回来,做一个玩一下,应该还是有意义的。。

使用特权

评论回复
50
itelectron| | 2009-7-22 21:14 | 只看该作者

转起来 是比较简单

目前还在继续中.

使用特权

评论回复
51
itelectron| | 2009-7-26 10:45 | 只看该作者

目前困在角度估算中 俺用的是反电动势估算.

没有电机,用2路DA输出相差120度的正弦波模拟电机,

使用特权

评论回复
52
itelectron| | 2009-7-26 10:49 | 只看该作者

撤了.


撤了.

使用特权

评论回复
53
itelectron| | 2009-7-26 10:54 | 只看该作者

用的参考方案是Microchip的!传上资料

有赶兴趣的同志可以参考下.
相关链接:https://bbs.21ic.com/upfiles/img/20097/2009726105120403.zip

使用特权

评论回复
54
itelectron| | 2009-7-26 10:55 | 只看该作者
55
itelectron| | 2009-7-26 11:05 | 只看该作者
56
itelectron| | 2009-7-26 11:19 | 只看该作者

老王是做电表行业的?

 王奉瑾 发表于 2009-5-14 08:57 DIY小组讨论区 ←返回版面    

17楼: 哪有这么简单的事情 

那样本坛的烂仔都可以搞了
现在没搞出一个,就说明不是那么简单的了。。 
 
------------------------------------------------------------------

其实现在做电机控制的 专用开发平台.本坛的烂仔只要有足够的耐心和时间,完全没有问题.俺是时间XXXXXX.

就是一些变换 积分 滤波. 调制.  还有个PI调节.
产品后的问题一般是功率模块的保护问题.
还有个问题是共振,问题

使用特权

评论回复
57
DLSWL| | 2009-7-27 22:21 | 只看该作者

NMDVF.PCB

;    NMDVF.PCB   03.09.01 oc=int0

;P2.1=RUN  P2.3=REV P2.4=OH P2.7=CD
;REGC504.inc
WDTREL  EQU    086H;
PCON1   EQU    088H;
P1ANA   EQU    090H;
ITCON   EQU    09AH;
IEN0    EQU    0A8H;
IEN1    EQU    0A9H;
P3ANA   EQU    0B0H;
SYSCON  EQU    0B1H;
IP0     EQU    0B8H;
IP1     EQU    0B9H;
WDCON   EQU    0C0H;

CT2CON  EQU    0C1H;
CCL0    EQU    0C2H;
CCH0    EQU    0C3H;
CCL1    EQU    0C4H;
CCH1    EQU    0C5H;
CCL2    EQU    0C6H;
CCH2    EQU    0C7H;
T2MOD   EQU    0C9H;
RC2L    EQU    0CAH;
RC2H    EQU    0CBH;
TRCON   EQU    0CFH;
CP2L    EQU    0D2H;
CP2H    EQU    0D3H;
CMP2L   EQU    0D4H;
CMP2H   EQU    0D5H;
CCIE    EQU    0D6H;
BCON    EQU    0D7H;
ADCON0  EQU    0D8H;
ADDATH  EQU    0D9H;
ADDATL  EQU    0DAH;
ADCON1  EQU    0DCH;
CCPL    EQU    0DEH;
CCPH    EQU    0DFH;
CT1CON  EQU    0E1H;
COINI   EQU    0E2H;
CMSEL0  EQU    0E3H;
CMSEL1  EQU    0E4H;
CCIR    EQU    0E5H;
CT1OFL  EQU    0E6H;
CT1OFH  EQU    0E7H;
SWDT    BIT    0C0H;
WDT     BIT    0C1H;
WDTS    BIT    0C2H;
OWDS    BIT    0C3H;
MX0     BIT    0D8H;
MX1     BIT    0D9H;
MX2     BIT    0DAH;
ADM     BIT    0DBH;
BSY     BIT    0DCH;
IADC    BIT    0DDH;

Pr00     DATA    080H   ;
Pr01     DATA    082H   ;
Pr02     DATA    084H   ;
Pr03     DATA    086H   ;
Pr04     DATA    088H   ;
Pr05     DATA    08AH   ;
Pr06     DATA    08CH   ;
Pr07     DATA    08EH   ;
Pr08     DATA    090H   ;
Pr09     DATA    092H   ;
Pr10     DATA    094H   ;
Pr11     DATA    096H   ;
Pr12     DATA    098H   ;
Pr13     DATA    09AH   ;
Pr14     DATA    09CH   ;
Pr15     DATA    09EH   ;
Pr16     DATA    0A0H   ;
Pr17     DATA    0A2H   ;
Pr18     DATA    0A4H   ;
Pr19     DATA    0A6H   ;
Pr20     DATA    0A8H   ;
Pr21     DATA    0AAH   ;
Pr22     DATA    0ACH   ;
Pr23     DATA    0AEH   ;
Pr24     DATA    0B0H   ;
Pr25     DATA    0B2H   ;
Pr26     DATA    0B4H   ;
         ;BIT
Pr27     DATA    0B6H   ;    24H.0  ;
Pr28     DATA    0B8H   ;    24H.1  ;
Pr29     DATA    0BAH   ;    24H.2  ;
Pr30     DATA    0BCH   ;    24H.3  ;
Pr31     DATA    0BEH   ;    24H.4  ;
Pr32     DATA    0C0H   ;    24H.5  ;

        ORG     000H
        LJMP    WA
        ORG     0003H
        LJMP    IN0
        ORG     000BH
        LJMP    TT0
        ORG     001BH
        LJMP    TT1
        ORG     0023H
        LJMP    SIO
        ORG     0043H
        LJMP    ADI
        ORG     0053H
        LJMP    INP
        ORG     0063H
        LJMP    CM1
        ORG     006BH

WG:     PUSH    ACC
        PUSH    B
        PUSH    PSW
        ANL     CCIR, #7FH
;       CPL     P3.0
        SETB    RS0
        JNB     20H.7,WG1
        MOV     A,R6
        SUBB    A,R4
        MOV     R6,A
        MOV     A,R5
        SUBB    A,R3
        MOV     R5,A
        JNC     WG2
        DJNZ    R7,WG2
        MOV     R7,#6
WG2:    CPL     A
        MOV     DPTR,#SINB
        MOVC    A,@A+DPTR
        MOV     B,R1
        MUL     AB
        MOV     R2,B        ;ta
        MOV     A,R5
        MOVC    A,@A+DPTR
        MOV     B,R1
        MUL     AB          ;tb
        MOV     A,R7
        MOV     DPL,A
        MOV     DPH,A
        JMP     @A+DPTR

WG1:    MOV     A,R6
        ADD     A,R4
        MOV     R6,A
        MOV     A,R5
        ADDC    A,R3
        MOV     R5,A
        JNC     WG2
        INC     R7
        CJNE    R7,#7,WG2
        MOV     R7,#1
        JMP     WG2

        ORG     0102H       ;FOR0
        MOV     A,B
        ADD     A,R2
        JNB     24H.5,GA1
        CPL     A           ;t0
        MOV     CCL0,A
        ADD     A,R2        ;t0+ta
        MOV     CCL1,A
        MOV     CCL2,#0FFH
        JMP     GA11
GA1:    SETB    C
        RRC     A
        MOV     CCL2,A      ;T-t0/2
        CPL     A
        MOV     CCL0,A      ;t0/2
        ADD     A,R2
        MOV     CCL1,A      ;ta+t0/2
GA11:   ORL     CT1CON,#00100000B
        POP     PSW
        POP     B
        POP     ACC
        RETI

        ORG     0204H       ;FOR1
        MOV     A,B
        ADD     A,R2
        JNB     24H.5,GB1
        MOV     CCL2,A      ;T-t0
        MOV     CCL0,B      ;tb
        MOV     CCL1,#00H
        JMP     GB11
GB1:    SETB    C
        RRC     A
        MOV     CCL2,A      ;T-t0/2
        CPL     A
        MOV     CCL1,A      ;t0/2
        ADD     A,B
        MOV     CCL0,A      ;tb+t0/2
GB11:   ORL     CT1CON,#00100000B
        POP     PSW
        POP     B
        POP     ACC
        RETI

        ORG     0306H       ;FOR2
        MOV     A,B
        ADD     A,R2
        JNB     24H.5,GC1
        CPL     A           ;t0
        MOV     CCL1,A
        ADD     A,R2        ;t0+ta
        MOV     CCL2,A
        MOV     CCL0,#0FFH
        JMP     GC11
GC1:    SETB    C
        RRC     A
        MOV     CCL0,A      ;T-t0/2
        CPL     A
        MOV     CCL1,A      ;t0/2
        ADD     A,R2
        MOV     CCL2,A      ;ta+t0/2
GC11:   ORL     CT1CON,#00100000B
        POP     PSW
        POP     B
        POP     ACC
        RETI

        ORG     0408H       ;FOR3
        MOV     A,B
        ADD     A,R2
        JNB     24H.5,GD1
        MOV     CCL0,A      ;T-t0
        MOV     CCL1,B      ;tb
        MOV     CCL2,#00H
        JMP     GD11
GD1:    SETB    C
        RRC     A
        MOV     CCL0,A      ;T-t0/2
        CPL     A
        MOV     CCL2,A      ;t0/2
        ADD     A,B
        MOV     CCL1,A      ;tb+t0/2
GD11:   ORL     CT1CON,#00100000B
        POP     PSW
        POP     B
        POP     ACC
        RETI

        ORG     050AH       ;FOR4
        MOV     A,B
        ADD     A,R2
        JNB     24H.5,GE1
        CPL     A           ;t0
        MOV     CCL2,A
        ADD     A,R2        ;t0+ta
        MOV     CCL0,A
        MOV     CCL1,#0FFH
        JMP     GE11
GE1:    SETB    C
        RRC     A
        MOV     CCL1,A      ;T-t0/2
        CPL     A
        MOV     CCL2,A      ;t0/2
        ADD     A,R2
        MOV     CCL0,A      ;ta+t0/2
GE11:   ORL     CT1CON,#00100000B
        POP     PSW
        POP     B
        POP     ACC
        RETI

        ORG     060CH       ;FOR5
        MOV     A,B
        ADD     A,R2
        JNB     24H.5,GF1
        MOV     CCL1,A      ;T-t0
        MOV     CCL2,B      ;tb
        MOV     CCL0,#00H
        JMP     GF11
GF1:    SETB    C
        RRC     A
        MOV     CCL1,A      ;T-t0/2
        CPL     A
        MOV     CCL0,A      ;t0/2
        ADD     A,B
        MOV     CCL2,A      ;tb+t0/2
GF11:   ORL     CT1CON,#00100000B
        POP     PSW
        POP     B
        POP     ACC
        RETI

IN0:    MOV     COINI, #00111111B
        ANL     CT1CON,#11100111B
        ORL     CT1CON,#00010111B
        SETB    22H.2
        RETI

TT0:    MOV     TL0  ,#029H   ;f=32M  D656H
        MOV     TH0  ,#0EBH   ;t=4ms
        SETB    20H.0
        RETI

TT1:    NOP
        NOP
        RETI

INP:    MOV     COINI, #00111111B
        ANL     CT1CON,#11100111B
        ORL     CT1CON,#00010111B
        SETB    22H.2
        NOP
        NOP
        ANL     TRCON,#10111111B
        RETI

CM1:    NOP
        ANL     CCIR,#11000000B
        RETI

ADI:    CLR     IADC
        RETI

SIO:    JBC     TI  ,SIO1
        CLR     RI
        MOV     SBUF,#35H
        RETI
SIO1:   MOV     SBUF,#5AH
        RETI

WA:     MOV     R0   ,#0FFH
        CLR     A
        MOV     @R0  ,A
        DJNZ    R0   ,$-1
;        ORL     SYSCON, #01H
;       MOV     0D8H,#8H
;       MOV     CCL0,#0CFH
        MOV     SP   ,#0E0H
        SETB    P2.7        ;NMDVF
        MOV     0FH,#1
        CALL    INTR
;        CALL    RK0     ;;;;
        CALL    RA
WB:     NOP
        JNB     20H.0,WB
        CLR     20H.0
;       SETB    24H.5
;       SETB    20H.7
    CALL    DLFJ
     CALL    O95
        CALL    YX
;       MOV     28H,#00100111B
        CALL    QD
        CALL    KM
        CALL    KK
        CALL    ADC
        CALL    ADF
;        MOV     40H,#200  ;vdc
;        MOV     42H,#120   ;va
;       MOV     7AH,4EH
;    MOV    78H,#3       ;;;;;;;;
        MOV     A,7FH
        JZ      WB
        CALL    CA
        CALL    LA
        MOV     A,7FH
        CJNE    A,#3,WB
        CALL    FASS
        CALL    VF
        JMP     WB

DLFJ:
    ORL    P2,#00011010B
    NOP
    MOV    A,P2
;        ANL     A,#11111101B     ;;;;;;;;;;;;
        MOV     R2,A
    XRL    A,2FH
    JNZ    DL1
    MOV    A,2FH
        CPL     A
    MOV    25H,A
    JNB    ACC.1,DL11
    SETB    28H.0
    JNB    ACC.3,DL12
    CLR    28H.4
    SETB    28H.5
    RET

DL12:
    CLR    28H.5
    SETB    28H.4
    RET

DL1:    MOV    2FH,R2
    RET
DL11:    ANL    28H,#00000000B
    CLR    28H.4
    CLR    28H.5
    RET

FAS:    MOV     A,5EH
        JZ      FSA1
        SETB    21H.7
        MOV     R1,#250
        JMP     FSA10
FSA1:   CLR     21H.7
        MOV     R1,#10
FSA10:  MOV     B,R1
        MOV     A,59H
        MUL     AB
        MOV     R5,A
        MOV     R4,B
        MOV     B,R1
        MOV     A,58H
        MUL     AB
        ADD     A,R4
        MOV     R4,A
        MOV     A,B
        ADDC    A,#0
        MOV     R3,A
        MOV     R2,#00H
        MOV     R6,5EH
        MOV     R7,5FH
        CALL    DIVL
        MOV     52H,R4
        MOV     53H,R5
        RET

FASS:   JNB     21H.7,FAS20
        DJNZ    55H,FAS2
        MOV     55H,#25
FAS20:  CALL    FAS
        MOV     R4,50H
        MOV     R5,51H
        MOV     R6,5CH
        MOV     R7,5DH
        CALL    WMP2
        JB      21H.3,FAS11
        JB      21H.4,FAS13
        JB      21H.0,FAS15
        JB      21H.1,FAS16
        MOV     A,50H
        JB      21H.5,FAS22
        RET
FAS15:  SETB    21H.3
        RET
FAS16:  SETB    21H.4
        RET
FAS11:  JNB     21H.1,FAS12
        CLR     21H.4
;        MOV     50H,5CH
;        MOV     51H,5DH
;       MOV     54H,#00H
        CLR     21H.3
FAS2:   RET
FAS12:  JNB     24H.2,FAS21
        MOV     A,40H
        CJNE    A,#231,$+3 ;VCC=1.25
        JNC     FAS2
FAS21:  MOV     A,54H
        CLR     C
        SUBB    A,53H
        MOV     54H,A
        MOV     A,51H
        SUBB    A,52H
        MOV     51H,A
        MOV     A,50H
        SUBB    A,#0
        MOV     50H,A
        JNC     FAS22
        MOV     A,#0
        MOV     50H,A
        MOV     51H,A
        MOV     54H,A
FAS22:  JNZ     FAS2
        MOV     A,51H
        CJNE    A,#4,$+3       ;STF
        JNC     FAS2
        CALL    ST
        RET
FAS13:  JNB     21H.0,FAS14
        CLR     21H.3
;        MOV     50H,5CH
;        MOV     51H,5DH
;       MOV     54H,#00H
        CLR     21H.4
        RET

FAS14:  JNB     24H.1,FAS23
        MOV     A,42H
        CJNE    A,#154,$+3 ;In=1.5
        JNC     FAS2
FAS23:  MOV     A,54H
        ADD     A,53H
        MOV     54H,A
        MOV     A,51H
        ADDC    A,52H
        MOV     51H,A
        MOV     R5,A
        MOV     A,50H
        ADDC    A,#0
        MOV     50H,A
        MOV     R4,A
        MOV     R6,58H
        MOV     R7,59H
        CALL    WMP2
        JB      21H.1,FAS24
        MOV     50H,58H
        MOV     51H,59H
        CLR     21H.4
        RET
FAS24:  MOV     R6,5CH
        MOV     R7,5DH
        CALL    WMP2
        JB      21H.1,FAS2
        MOV     50H,5CH
        MOV     51H,5DH
        CLR     21H.4
        RET

ST:     MOV     COINI ,#00111111B
        ANL     CT1CON,#00000111B
        ORL     CT1CON,#00010000B  ;SOTP
        MOV     15H,#2
        CLR     A
        MOV     21H,A
        MOV     23H,A
        MOV     42H,A
        MOV     43H,A
        MOV     44H,A
        MOV     45H,A
        MOV     50H,A
        MOV     51H,A
        MOV     7DH,#10
        MOV     7FH,#00
        NOP
        RET

VF:     MOV     B,#0A0H
        MOV     A,51H
        MUL     AB
        MOV     R2,B
        MOV     R3,A
        MOV     B,#0A0H
        MOV     A,50H
        MUL     AB
        ADD     A,R2
        MOV     R2,A
        CLR     A
        ADDC    A,B
        MOV     R1,A
        MOV     B,7CH
        MOV     A,R2
        MUL     AB
        MOV     R3,A
        MOV     R2,B
        MOV     A,R1
        MOV     B,7CH
        MUL     AB
        ADD     A,R2
        MOV     R2,A
        CLR     A
        ADDC    A,B
        JZ      VF11
        MOV     R2,#0FFH
        MOV     R3,#0FFH
VF11:   MOV     A,R3
        CLR     C          ;16M
        RLC     A          ;16M
        MOV     0CH,A
        MOV     A,R2
        RLC     A          ;16M
        MOV     0BH,A

        MOV     A,79H
        CLR     C
        SUBB    A,#6
        JNC     VF2
        MOV     A,79H
        ADD     A,#2
        MOVC    A,@A+PC
        SJMP    VFA
DB      0,4,8,12,16,20
VFA:    MOV     R0,A
        MOV     B,#85
        MOV     A,5BH
        MUL     AB
        MOV     R5,B
        MOV     B,#85
        MOV     A,5AH
        MUL     AB
        ADD     A,R5
        MOV     R5,A
        CLR     A
        ADDC    A,B
        MOV     R4,A
        MOV     R6,50H
        MOV     R7,51H
        CALL    WMP2
        JB      21H.0,VFA1
        MOV     R0,#00

VFA1:   MOV     A,R0
        MOV     B,#3
        MUL     AB
VFAB:   CPL     A
        MOV     B,A
        MOV     R1,A
        MOV     A,51H
        MUL     AB
        MOV     R5,A
        MOV     R4,B
        MOV     B,R1
        MOV     A,50H
        MUL     AB
        ADD     A,R4
        MOV     R4,A
        CLR     A
        MOV     R2,A
        ADDC    A,B
        MOV     R3,A
        MOV     R6,5AH
        MOV     R7,5BH
        CALL    DIVL
        MOV     A,R5
        ADD     A,R0
        MOV     R5,A
        CLR     A
        ADDC    A,R4
        JZ      VFA2
        MOV     R5,#0FFH
VFA2:   MOV     A,R5
        MOV     B,7AH
        MUL     AB
        MOV     09H,B
        RET

VF2:    ADD     A,#2
        MOVC    A,@A+PC
        JMP     VFB
DB      4,8,12,16,20
VFB:    MOV     R0,A
        JMP     VFAB

INTR:   ORL     SYSCON, #010H
        MOV     P1ANA, #00001100B
;       MOV     P3ANA, #00111100B   ;SY
        MOV     P3ANA, #00011100B   ;MDVF
        ANL     SYSCON, #0EFH
        MOV     COINI,#00111111B
;        MOV     TRCON,#10111111B
    MOV     TRCON,#0    ;;;;
        MOV     CMSEL0, #033H
        MOV     CMSEL1, #003H
        MOV     CCPH, #00H
        MOV     CCPL, #0FFH
        MOV     CT1OFH,#00
        MOV     CT1OFL,#00
        MOV     CCIE, #10000000B
        MOV     IP0, #01H
        MOV     IP1, #020H
        MOV     TMOD, #00010001B
        MOV     TCON, #00000000B
        MOV     IEN0, #10000011B
        MOV     IEN1, #00110000B
        SETB    TR0
        MOV     15H,#2
        MOV     17H,#5
        MOV     55H,#1
        MOV     7DH,#10
        RET

RA:     MOV     R0,#80H
        MOV     R2,#00
        MOV     R3,#68
        CALL    I2CR    ;;;;;
        MOV     24H,#00H
        MOV     R0,#Pr27+1
        MOV     A,@R0
        JZ      $+4
        SETB    24H.0
        MOV     R0,#Pr28+1
        MOV     A,@R0
        JZ      $+4
        SETB    24H.1
        MOV     R0,#Pr29+1
        MOV     A,@R0
        JZ      $+4
        SETB    24H.2
        MOV     R0,#Pr30+1
        MOV     A,@R0
        JZ      $+4
        SETB    24H.3
        MOV     R0,#Pr31+1
        MOV     A,@R0
        JZ      $+4
        SETB    24H.4
        MOV     R0,#Pr32+1
        MOV     A,@R0
        JZ      $+4
        SETB    24H.5
        MOV     R0,#Pr20+1
        MOV     A,@R0
        MOV     B,#08EH
        MUL     AB
        MOV     R2,B
        MOV     A,@R0
        MOV     B,#02H
        MUL     AB
        ADD     A,R2
        MOV     7AH,A
        MOV     R0,#Pr21+1
        MOV     A,@R0
        MOV     B,#160
        MUL     AB
        RLC     A
        MOV     A,B
        RLC     A
        MOV     7BH,A

        MOV     R0,#Pr18+1
        MOV     A,@R0
        CJNE    A,#16,$+3
        JC      RA0
        MOV     A,#16
RA0:    ADD     A,#2
        MOVC    A,@A+PC
        SJMP    RA1
DB      64    ;0   fz=976.5   F=32Mz
DB      64    ;1   fz=976.5
DB      32    ;2   fz=1953
DB      32    ;3   fz=1953
DB      16    ;4   fz=3906.25
DB      16    ;5   fz=3906.25
DB      16    ;6   fz=3906.25
DB      16    ;7   fz=3906.25
DB      8     ;8   fz=7812.5Hz
DB      8     ;9   fz=7812.5Hz
DB      8     ;10  fz=7812.5Hz
DB      8     ;11  fz=7812.5Hz
DB      4     ;12  fz=15625Hz
DB      4     ;13  fz=15625Hz
DB      4     ;14  fz=15625Hz
DB      4     ;15  fz=15625Hz
DB      4     ;16  fz=15625Hz
RA1:    MOV     7CH,A
        CLR     C
        RRC     A
        CLR     C
        RRC     A
        MOV     B,A
        ANL     A,#00000111B
        ORL     A,#11010000B    ;;;;
        MOV     CT1CON,A        ;;;;
        MOV     A,#20           ;TMIN
        DIV     AB
        CJNE    A,#2,$+3
        JNC     RA10
        MOV     A,#4
RA10:   MOV     72H,A
        CPL     A
   &

使用特权

评论回复
58
DLSWL| | 2009-7-27 22:23 | 只看该作者

LPC935变频器

KK:     JNB     26H.0,KK1
        NOP                  ;STOP
        DJNZ    71H,KK01
        CALL    ST
        CLR     EA
        JMP     WA
KK01:   JNB     24H.3 ,KK02
        CALL    ST
        RET
KK02:   SETB    23H.7
        CLR     23H.6
;        CLR     20H.3
        RET
KK1:    JNB     26H.6,KK2
        NOP                  ;RUN
        SETB    23H.6
        CLR     23H.7
KK0:    RET
KK2:    JNB     26H.4,KK3
        JB      27H.4,KK0
        SETB    27H.4
        INC     15H
        MOV     A,#04
;;;;;   JB      21H.2,KK21
        MOV     A,#06
KK21:   CJNE    A,15H,KM
        MOV     15H,#01
        CLR     27H.0
        JMP     KM           ;MODE
KK3:    JNB     26H.7,KK4
        JB      27H.5,KK0
        SETB    27H.5        ;ENT
        JMP     KE
KK4:    JNB     26H.5,KK5
;       JB      27H.6,KK0
;       SETB    27H.6        ;^
        JMP     KS
KK5:    JNB     26H.3,KK6
;       JB      27H.7,KK0
;       SETB    27H.7        ;v
        JMP     KX
KK6:    ANL     27H,#00001111B
        MOV     13H,#0
        MOV     14H,#1
        MOV     70H,#10
        MOV     71H,#250
        JNB     27H.1,KK61
        CLR     27H.1
        MOV     R0,#4AH
        MOV     R2,#00H
        MOV     R3,#2
        CALL    I2CW
KK61:   RET

KM:     JB      20H.3,KK61
        MOV     A,15H
        CJNE    A,#1,KM1
        MOV     R2,50H     ;H
        MOV     R3,51H
        MOV     1CH,#00H
        MOV     12H,#1
        SETB    20H.6
        JMP     KM00

KM1:    CJNE    A,#2,KM2    ;F
    MOV    A,78H
    CJNE    A,#0,KM11
        MOV     R2,4AH      ;0F
        MOV     R3,4BH
KM10:   MOV     1CH,#00H
        MOV     12H,#2
        SETB    20H.6
        JMP     KM00
KM11:    CJNE    A,#1,KM12
    MOV     R2,56H      ;1F
        MOV     R3,57H
        JMP    KM10

KM12:    CJNE    A,#2,KM13
    MOV     R2,4AH      ;2F
        MOV     R3,4BH
        JMP    KM10

KM13:    CJNE    A,#3,KM14
        MOV     R2,56H      ;3F
        MOV     R3,57H
        JMP    KM10

KM14:   MOV     R2,5CH      ;4F
        MOV     R3,5DH
        JMP    KM10

KM2:    CJNE    A,#3,KM3
        MOV     A,7BH        ;A
        MOV     B,42H
        MUL     AB
        RLC     A
        MOV     A,B
        RLC     A
        MOV     R3,A
        CLR     A
        RLC     A
        MOV     R2,A
        MOV     1CH,#00H
        MOV     12H,#3
        SETB    20H.6
        JMP     KM00

KM3:    CJNE    A,#4,KM4    ;Pr
        JB      27H.0,KM01
        MOV     1CH,#00H
        MOV     12H,#4
        CLR     20H.6
        JMP     KS23

KM4:    CJNE    A,#5,KM0     ;E
        MOV     R2,#00H
        MOV     R3,40H
        MOV     1CH,#00H
        MOV     12H,#5
        CLR     20H.6
        JMP     KM00
KM0:    RET

KM00:   CLR     27H.0
KM02:   CALL    BTD
        CALL    DIR
        RET
KM01:   JMP     KS4
        MOV     R2,10H
        MOV     R3,11H
        JMP     KM02

KE:     MOV     A,15H
        CJNE    A,#4,KE1
        CPL     27H.0
        JNB     27H.0,KE2
        MOV     A,16H
        ADD     A,16H
        MOV     R2,A
        MOV     R0,#10H
        MOV     R3,#2
        CALL    I2CR
        MOV     12H,#0
        JMP     KS4
KE1:    RET
KE2:
        MOV     A,16H
        CJNE    A,#33,KE21
        MOV     A,11H
        JZ      KE21
        JB      21H.2,KE21
        CALL    RK0
        CALL    RA
        MOV     12H,#00H
        MOV     18H,#00H
        MOV     19H,#39H
        MOV     1AH,#3FH
        MOV     1BH,#5BH
        RET
KE21:   ADD     A,16H
        MOV     R2,A
        MOV     R0,#10H
        MOV     R3,#2
        CALL    I2CW
        JMP     KS23

KS11:   MOV     14H,#50
        JMP     KS12
KS1:    CJNE    A,#2,KS2
        JMP     KS10
KS0:    RET
KS:     MOV     A,15H
        CJNE    A,#1,KS1
KS10:   DJNZ    14H,KS0
        DJNZ    70H,KS11
        MOV     70H,#1
        MOV     14H,#5
KS12:   MOV     A,4BH
        ADD     A,#1
        MOV     4BH,A
        MOV     A,4AH
        ADDC    A,#0
        MOV     4AH,A
        MOV     R4,4AH
        MOV     R5,4BH
        MOV     R6,58H
        MOV     R7,59H
        CALL    WMP2
        JB      21H.1,KS13
        MOV     4AH,58H
        MOV     4BH,59H
KS13:   MOV     R2,4AH
        MOV     R3,4BH
        SETB    27H.1
        CALL    BTD
        CALL    DIR
        RET

KS21:   MOV     14H,#100
        JMP     KS22

KS2:    CJNE    A,#4,KS0
        DJNZ    14H,KS0
        DJNZ    70H,KS21
        MOV     70H,#1
        MOV     14H,#50
KS22:   JB      27H.0,KS3
        MOV     A,16H
        ADD     A,#1
        MOV     16H,A
        CLR     C
        SUBB    A,#33
        JC      KS23
        MOV     16H,#00
KS23:   MOV     R2,#00H
        MOV     R3,16H
        MOV     12H,#4
        CALL    BTD
        CALL    DIR
        RET

KS3:    INC     13H
        MOV     A,13H
        CJNE    A,#11,$+3
        JNC     KS31
        MOV     A,11H
        ADD     A,#1
        MOV     11H,A
        MOV     A,10H
        ADDC    A,#0
        MOV     10H,A
        JMP     KS4
KS31:   CJNE    A,#20,$+3
        JNC     KS32
        MOV     A,11H
        ADD     A,#10
        MOV     11H,A
        MOV     A,10H
        ADDC    A,#0
        MOV     10H,A
        JMP     KS4

KS32:   MOV     13H,#20
        MOV     A,11H
        ADD     A,#100
        MOV     11H,A
        MOV     A,10H
        ADDC    A,#0
        MOV     10H,A
        JMP     KS4
KS4:    MOV     DPTR,#KKB
        MOV     A,16H
        MOV     B,#8
        MUL     AB
        ADD     A,DPL
        MOV     DPL,A
        MOV     A,B
        ADDC    A,DPH
        MOV     DPH,A
        MOV     A,#2
        MOVC    A,@A+DPTR
        MOV     R4,A
        MOV     A,#3
        MOVC    A,@A+DPTR
        MOV     R5,A
        MOV     R6,10H
        MOV     R7,11H
        CALL    WMP2
        JB      21H.0,KS41
        MOV     10H,R4
        MOV     11H,R5
KS41:   MOV     A,#7
        MOVC    A,@A+DPTR
        MOV     C,ACC.0
        MOV     20H.6,C
        MOV     R2,10H
        MOV     R3,11H
        CALL    BTD
        CALL    DIR
        RET

KX0:    RET
KX1:    CJNE    A,#2,KX2
        JMP     KX10
KX11:   MOV     14H,#100
        JMP     KX12
KX:     MOV     A,15H
        CJNE    A,#1,KX1
KX10:   DJNZ    14H,KX0
        DJNZ    70H,KX11
        MOV     70H,#1
        MOV     14H,#5
KX12:   MOV     A,4BH
        CLR     C
        SUBB    A,#1
        MOV     4BH,A
        MOV     A,4AH
        SUBB    A,#0
        MOV     4AH,A
        JNC     KX14
        MOV     4AH,#00
        MOV     4BH,#00
KX14:   MOV     R2,4AH
        MOV     R3,4BH
        SETB    27H.1
        CALL    BTD
        CALL    DIR
        RET
KX21:   MOV     14H,#100
        JMP     KX22

KX2:    CJNE    A,#4,KX0
        DJNZ    14H,KX0
        DJNZ    70H,KX21
        MOV     70H,#1
        MOV     14H,#50
KX22:   JB      27H.0,KX3
        MOV     A,16H
        CLR     C
        SUBB    A,#1
        MOV     16H,A
        JNC     KX31
        MOV     16H,#33
KX23:   MOV     R2,#00H
        MOV     R3,16H
        MOV     12H,#4
        CALL    BTD
        CALL    DIR
        RET

KX3:    INC     13H
        MOV     A,13H
        CJNE    A,#11,$+3
        JNC     KX31
        MOV     A,11H
        CLR     C
        SUBB    A,#1
        MOV     11H,A
        MOV     A,10H
        SUBB    A,#0
        MOV     10H,A
        JMP     KX4
KX31:   CJNE    A,#20,$+3
        JNC     KX32
        MOV     A,11H
        CLR     C
        SUBB    A,#10
        MOV     11H,A
        MOV     A,10H
        SUBB    A,#0
        MOV     10H,A
        JMP     KX4

KX32:   MOV     13H,#20
        MOV     A,11H
        CLR     C
        SUBB    A,#100
        MOV     11H,A
        MOV     A,10H
        SUBB    A,#0
        MOV     10H,A
        JMP     KX4
KX4:    MOV     DPTR,#KKB
        MOV     A,16H
        MOV     B,#8
        MUL     AB
        ADD     A,DPL
        MOV     DPL,A
        MOV     A,B
        ADDC    A,DPH
        MOV     DPH,A
        CLR     A
        MOVC    A,@A+DPTR
        MOV     R4,A
        MOV     A,#1
        MOVC    A,@A+DPTR
        MOV     R5,A
        MOV     A,#7
        MOVC    A,@A+DPTR
        MOV     C,ACC.0
        MOV     20H.6,C
        MOV     A,10H
        JB      ACC.7,KX41
        MOV     R6,A
        MOV     R7,11H
        CALL    WMP2
        JB      21H.1,KX42
KX41:   MOV     10H,R4
        MOV     11H,R5

KX42:   MOV     R2,10H
        MOV     R3,11H
        CALL    BTD
        CALL    DIR
        RET

ADC:    ANL     ADCON1,#11111000B  ;AN0 VG
        NOP
        NOP
        NOP
        INC     ADDATL
ADC1:   NOP
        JB      ADCON0.4,ADC1
        CLR     IADC
        MOV     4EH,ADDATH
        MOV     4FH,ADDATL
        ORL     ADCON1,#00000001B  ;AN1 VA
        NOP
        NOP
        NOP
        INC     ADDATL
ADC2:   NOP
        JB      ADCON0.4,ADC2
        CLR     IADC
        MOV     42H,ADDATH
        MOV     43H,ADDATL
        ORL     ADCON1,#00000111B  ;AN7 VDC
        NOP
        NOP
        NOP
        INC     ADDATL
ADC3:   NOP
        JB      ADCON0.4,ADC3
        CLR     IADC
        MOV     40H,ADDATH
        MOV     41H,ADDATL
        RET

O95:    DJNZ    17H,O96
        MOV     17H ,#5
I65:    MOV     R0,#8
        SETB    P3.0
I66:    CLR     P2.6
        MOV     C,P3.0
        RLC     A
        SETB    P2.6
        NOP
        DJNZ    R0,I66
        CPL     A
        ANL     A,#0FFH
        MOV     R1,A
        XRL     A,77H
        JNZ     I67
        MOV     26H,77H
        JMP     O96
I67:    MOV     77H,R1
O96:  ; CLR     P3.5    ;SY
        CLR     P2.5    ;NMDVF
        MOV     R0,#08
        MOV     A,17H
        ADD     A,#2
        MOVC    A,@A+PC
        SJMP    O97
DB      11111111B
DB      11111110B
DB      11111101B
DB      11111011B
DB      11110111B
DB      11101111B
DB      11111111B
DB      11111111B
O97:    CLR     P2.6
        RLC     A
        MOV     P3.1,C
        NOP
        NOP
        NOP
        NOP
        SETB    P2.6
        DJNZ    R0,O97
        MOV     A,17H
        ADD     A,#17H
        MOV     R0,A
        MOV     A,@R0
        MOV     R0,#08H       ;ACCA=HC595
O98:    CLR     P2.6
        RLC     A
        MOV     P3.1,C
        NOP
        NOP
        NOP
        NOP
        SETB    P2.6
        DJNZ    R0,O98
        CLR     P3.1
;      SETB    P3.5          ;SY
        SETB    P2.5         ;NMDVF
        RET

M2UL:   MOV     A,R2  ;R2R3*R6R7=R4R5R6R7
        XRL     A,R6
        MOV     C,ACC.7
        MOV     F0,C
        MOV     A,R2
        CLR     ACC.7
        MOV     R2,A
        MOV     A,R6
        CLR     ACC.7
        MOV     R6,A
        MOV     A,R3
        MOV     B,R7
        MUL     AB
        XCH     A,R7
        MOV     R5,B
        MOV     B,R2
        MUL     AB
        ADD     A,R5
        MOV     R4,A
        CLR     A
        ADDC    A,B
        MOV     R5,A
        MOV     A,R6
        MOV     B,R3
        MUL     AB
        ADD     A,R4
        XCH     A,R6
        XCH     A,B
        ADDC    A,R5
        MOV     R5,A
        MOV     21H.0,C
        MOV     A,R2
        MUL     AB
        ADD     A,R5
        MOV     R5,A
        CLR     A
        MOV     ACC.0,C
        MOV     C,21H.0
        ADDC    A,B
        MOV     C,F0
        MOV     ACC.7,C
        MOV     R4,A
        RET

DIVL:   MOV     A,R3  ;R2R3R4R5/R6R7
        CLR     A     ;=R4R5
        SUBB    A,R7
        MOV     A, R2
        SUBB    A,R6
        JNC     DIVE1
        MOV     B,#16
DIV1:   CLR     C
        MOV     A,R5
        RLC     A
        MOV     R5,A
        MOV     A,R4
        RLC     A
        MOV     R4,A
        MOV     A,R3
        RLC     A
        MOV     R3,A
        XCH     A,R2
        RLC     A
        XCH     A,R2
        MOV     F0,C
        CLR     C
        SUBB    A,R7
        MOV     R1,A
        MOV     A,R2
        SUBB    A,R6
        JB      F0,DIV2
        JC      DIV3
DIV2:   MOV     R2,A
        MOV     A,R1
        MOV     R3,A
        INC     R5
DIV3:   DJNZ    B,DIV1
        CLR     F0
        RET
DIVE1:  SETB    F0
        RET

A2DD:   MOV     A,R4    ;R4R5+R6R7=R4R5
        MOV     C,ACC.7
        MOV     F0,C
        MOV     A,R6
        MOV     C,ACC.7
        MOV     21H.0,C
        XRL     A,R4
        MOV     C,ACC.7
        MOV     A,R4
        CLR     ACC.7
        MOV     R4,A
        MOV     A,R6
        CLR     ACC.7
        MOV     R6,A
        JC      DAB2
        MOV     A,R5
        ADD     A,R7
        MOV     R5,A
        MOV     A,R4
        ADDC    A,R6
        MOV     R4,A
        JB      ACC.7,DABE
DAB1:   MOV     C,F0
        MOV     ACC.7,C
        MOV     R4,A
        MOV     C,21H.0
        MOV     A,R6
        MOV     ACC.7,C
        MOV     R6,A
        CLR     C
        RET

DABE:   SETB    C
        RET
DAB2:   MOV     A,R5
        CLR     C
        SUBB    A,R7
        MOV     R5,A
        MOV     A,R4
        SUBB    A,R6
        MOV     R4,A
        JNB     ACC.7,DAB1
        MOV     A,R5
        CPL     A
        ADD     A,#1
        MOV     R5,A
        MOV     A,R4
        CPL     A
        ADDC    A,#0
        MOV     R4,A
        CPL     F0
        SJMP    DAB1

WMP2:   MOV     A,  R4     ;R4R5>R6R7  21H.0=1
        CJNE    A,6H,WMP21 ;R4R5<R6R7  21H.1=1
        MOV     A,  R5     ;R4R5=R6R7  21H.0=0  21H.1=0
        CJNE    A,7H,WMP21
        CLR     21H.0
        CLR     21H.1
        RET
WMP21:  MOV     21H.1,C
        CPL     C
        MOV     21H.0,C
        RET

BTD:    CLR     A     ;R2R3.B=R4R5R6.BCD
        MOV     R4,A
        MOV     R5,A
        MOV     R6,A
        MOV     R7,#16
BTD1:   CLR     C
        MOV     A,R3
        RLC     A
        MOV     R3,A
        MOV     A,R2
        RLC     A
        MOV     R2 ,A
        MOV     A,R6
        ADDC    A,R6
        DA      A
        MOV     R6,A
        MOV     A,R5
        ADDC    A,R5
        DA      A
        MOV     R5,A
        MOV     A,R4
        ADDC    A,R4
        DA      A
        MOV     R4,A
        DJNZ    R7,BTD1
        RET

DTB:    MOV     R2,#3  ;@R0+1+1+1.BCD=
        MOV     R3,#0  ;R3R4.B
        MOV     A,@R0
        MOV     R4,A
DTB1:   MOV     A,R4
        MOV     B,#10
        MUL     AB
        MOV     R4,A
        MOV     A,#10
        XCH     A,B
        XCH     A,R3
        MUL     AB
        ADD     A,R3
        XCH     A,R4
        INC     R0
        ADD     A,@R0
        XCH     A,R4
        ADDC    A,#0
        MOV     R3,A
        DJNZ    R2,DTB1
        RET

DIR01:  SWAP    A
        CALL    RDIR
        MOV     19H  ,A
        MOV     A,R5
        ANL     A,#0FH
        CALL    RDIR
        MOV     1AH,A
        MOV     A,R6
        ANL     A,#0F0H
        SWAP    A
        CALL    RDIR
        MOV     1BH  ,A
        JMP     DIR02
DIR:    MOV     A,R5
        ANL     A,#0F0H
        JB      27H.0,DIR00
        JNZ     DIR01
DIR00:  SWAP    A
        CALL    RDIR
        MOV     18H  ,A
        MOV     A,R5     ;R4R5R6=18H19H1AH1BH; 20H.6=DP
        ANL     A,#0FH   ;12H ,0= ,1=H, 2=F, 3=A, 4=Pr
        CALL    RDIR     ;5=E
        MOV     19H  ,A
        MOV     A,R6
        ANL     A,#0F0H
        SWAP    A
        CALL    RDIR
        MOV     C,20H.6
        MOV     ACC.7,C
        MOV     1AH,A
        MOV     A,R6
        ANL     A,#0FH
        CALL    RDIR
        MOV     1BH  ,A
DIR02:  MOV     A,12H
        CJNE    A,#1,DIR1
        MOV     18H,#76H   ;H
        JMP     DIR2
DIR1:   CJNE    A,#2,DIR11
        MOV     18H,#71H   ;F
        JMP     DIR2
DIR11:  CJNE    A,#3,DIR12
        MOV     18H,#77H   ;A
        JMP     DIR2
DIR12:  CJNE    A,#4,DIR13
        MOV     18H,#73H   ;Pr
        MOV     19H,#50H   ;Pr
        JMP     DIR2
DIR13:  CJNE    A,#5,DIR14
        MOV     18H,#79H   ;E
        JMP     DIR2
DIR14:  MOV     A,18H
        XRL     A,#03FH
        JNZ     DIR3
        MOV     18H,#00H
DIR2:   MOV     A,19H
        XRL     A,#03FH
        JNZ     DIR3
        MOV     19H,#00H
        MOV     A,1AH
        JB      ACC.7,DIR3
        XRL     A,#03FH
        JNZ     DIR3
        MOV     1AH,#00H
DIR3:   RET

RDIR:   ADD    A    ,#1
        MOVC   A    ,@A+PC
        RET
DIR0:   DB   3FH, 06H, 5BH, 4FH, 66H, 6DH, 7DH, 07H;
        DB   7FH, 6FH, 77H, 7CH, 39H, 5EH, 79H, 00H;

I2CW:   NOP
I2CW3:  MOV     A    ,#0A0H  ;
        MOV     R5   ,#10H
        LCALL   ICQ
        LCALL   ICW
        MOV     A    ,R2
      &nbs

使用特权

评论回复
59
itelectron| | 2009-7-28 10:23 | 只看该作者

LS用51做的! 强 不过要做到通用高性能恐怕...!!

LS用51做的! 强  不过要做到通用高性能恐怕...!!

使用特权

评论回复
60
aidsheng| | 2009-7-30 17:52 | 只看该作者

俺可以提供器件和焊接

并且可以提供老外做的交流伺服电机驱动器做参考

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则