| ??? 04/23/02 10:07 Read: times |
#22076 - Help-Calibration Algorithm |
I have to do a driving system for speed of a d.c. motor.The provider gives me the source code which contains more routine.This program exist in hex format but I tanslated it in asm for 8051(it is the controller which is used).In the code that I have obtained I identified some routines: serial comunication, capture of the speed, the routine of reading and writing of a character on LCD, routine of command with PWM1(curent impulses) and other.I don't know where is the code for regulation(PID calibration in discreet time
u(k)=u(k-1)+u(k-2) recursive algorithm) and comunication with MATLAB, because the output of speed traductor is displayed and view with MATLAB.For this it exist a MATLAB model whiches block ar written in C.The code which I don't know what it,s doing is displayed below: X8a68: clr c mov a,52h addc a,6bh mov 52h,a mov a,53h addc a,6ah mov 53h,a mov a,54h addc a,#0 mov 54h,a mov a,55h addc a,#0 mov 55h,a ret ; X8a82: clr c mov a,52h addc a,5bh mov 52h,a mov a,53h addc a,5ah mov 53h,a mov a,54h addc a,59h mov 54h,a mov a,55h addc a,58h mov 55h,a ret ; clr c mov a,52h subb a,5dh mov 52h,a mov a,53h subb a,5ch mov 53h,a mov a,54h subb a,#0 mov 54h,a mov a,55h subb a,#0 mov 55h,a ret ; X8ab6: clr c mov a,52h subb a,61h mov 52h,a mov a,53h subb a,60h mov 53h,a mov a,54h subb a,5fh mov 54h,a mov a,55h subb a,5eh mov 55h,a ret ; X8ad0: mov a,55h cpl a mov 55h,a mov a,54h cpl a mov 54h,a mov a,53h cpl a mov 53h,a mov a,52h cpl a add a,#1 mov 52h,a mov a,53h addc a,#0 mov 53h,a mov a,54h addc a,#0 mov 54h,a mov a,55h addc a,#0 mov 55h,a ret ; X8af9: clr 20h.6 clr 20h.7 mov a,55h mov c,acc.7 mov 20h.6,c jnc X8b08 lcall X8ad0 X8b08: mov a,68h mov c,acc.7 mov 20h.7,c anl c,/20h.6 mov 20h.7,c mov c,20h.6 anl c,/acc.7 orl c,20h.7 mov 20h.6,c jnb acc.7,X8b2f mov a,68h cpl a mov 68h,a mov a,69h cpl a add a,#1 mov 69h,a mov a,68h addc a,#0 mov 68h,a X8b2f: mov 6fh,#0 mov 6eh,#0 mov b,52h mov a,69h mul ab mov 6ch,a mov 6dh,b mov b,53h mov a,69h mul ab add a,6dh mov 6dh,a mov a,b addc a,6eh mov 6eh,a jnc X8b54 inc 6fh X8b54: mov b,52h mov a,68h mul ab add a,6dh mov 6dh,a mov a,b addc a,6eh mov 6eh,a jnc X8b68 inc 6fh X8b68: mov b,54h mov a,69h mul ab add a,6eh mov 6eh,a mov a,b addc a,6fh mov 6fh,a mov b,53h mov a,68h mul ab add a,6eh mov 6eh,a mov a,b addc a,6fh mov 6fh,a mov b,55h mov a,69h mul ab add a,6fh mov 6fh,a mov b,54h mov a,68h mul ab add a,6fh mov 6fh,a mov 52h,6ch mov 53h,6dh mov 54h,6eh mov 55h,6fh jnb 20h.6,X8bae lcall X8ad0 X8bae: ret ; X8baf: clr 20h.6 clr 20h.7 mov a,55h mov c,acc.7 mov 20h.6,c jnc X8bbe lcall X8ad0 X8bbe: mov a,56h mov c,acc.7 mov 20h.7,c anl c,/20h.6 mov 20h.7,c mov c,20h.6 anl c,/acc.7 orl c,20h.7 mov 20h.6,c jnb acc.7,X8be5 mov a,56h cpl a mov 56h,a mov a,57h cpl a add a,#1 mov 57h,a mov a,56h addc a,#0 mov 56h,a X8be5: mov r7,#0 mov r6,#0 mov 6ch,#0 mov 6dh,#0 mov 6eh,#0 mov 6fh,#0 mov r1,56h mov r0,57h mov r5,#20h X8bfb: lcall X8c34 mov a,r6 rlc a mov r6,a mov a,r7 rlc a mov r7,a clr c mov a,r7 subb a,r1 jc X8c1b jnz X8c10 clr c mov a,r6 subb a,r0 jc X8c1b X8c10: clr c mov a,r6 subb a,r0 mov r6,a mov a,r7 subb a,r1 mov r7,a setb c ljmp X8c1c ; X8c1b: clr c X8c1c: lcall X8c60 djnz r5,X8bfb mov 52h,6ch mov 53h,6dh mov 54h,6eh mov 55h,6fh jnb 20h.6,X8c33 lcall X8ad0 X8c33: ret ; X8c34: clr c mov a,52h rlc a mov 52h,a mov a,53h rlc a mov 53h,a mov a,54h rlc a mov 54h,a mov a,55h rlc a mov 55h,a ret ; clr c mov a,55h rrc a mov 55h,a mov a,54h rrc a mov 54h,a mov a,53h rrc a mov 53h,a mov a,52h rrc a mov 52h,a ret ; X8c60: mov a,6ch rlc a mov 6ch,a mov a,6dh rlc a mov 6dh,a mov a,6eh rlc a mov 6eh,a mov a,6fh rlc a mov 6fh,a ret ; X8c75: mov 52h,37h mov 53h,38h mov 54h,#0 mov 55h,#0 mov 69h,#0c8h mov 68h,#0 lcall X8af9 mov 44h,53h mov 45h,52h mov 52h,33h mov 53h,34h mov 54h,#0 mov 55h,#0 mov 69h,#64h mov 68h,#0 lcall X8af9 mov 6bh,45h mov 6ah,44h lcall X8a68 mov 44h,53h mov 45h,52h mov 52h,#88h mov 53h,#13h mov 54h,#0 mov 55h,#0 mov 57h,35h mov 56h,36h lcall X8baf mov 6bh,45h mov 6ah,44h lcall X8a68 mov 57h,#64h mov 56h,#0 lcall X8baf mov 44h,53h mov 45h,52h mov 52h,37h mov 53h,38h mov 54h,#0 mov 55h,#0 mov 69h,#4 mov 68h,#0 lcall X8af9 mov 6bh,33h mov 6ah,34h lcall X8a68 lcall X8ad0 mov 46h,53h mov 47h,52h mov 52h,37h mov 53h,38h mov 54h,#0 mov 55h,#0 mov 69h,#2 mov 68h,#0 lcall X8af9 mov 48h,53h mov 49h,52h ret ; X8d24: mov 52h,45h mov 53h,44h mov 54h,#0 mov 55h,#0 mov a,44h jnb acc.7,X8d3b mov 54h,#0ffh mov 55h,#0ffh X8d3b: mov a,39h mov 69h,39h mov 68h,#0 jnb acc.7,X8d49 mov 68h,#0ffh X8d49: lcall X8af9 mov 4eh,52h mov 4fh,53h mov 50h,54h mov 51h,55h mov 52h,47h mov 53h,46h mov 54h,#0 mov 55h,#0 mov a,46h jnb acc.7,X8d6f mov 54h,#0ffh mov 55h,#0ffh X8d6f: mov a,3ah mov 69h,3ah mov 68h,#0 jnb acc.7,X8d7d mov 68h,#0ffh X8d7d: lcall X8af9 mov 5bh,4eh mov 5ah,4fh mov 59h,50h mov 58h,51h lcall X8a82 mov 4eh,52h mov 4fh,53h mov 50h,54h mov 51h,55h mov 52h,49h mov 53h,48h mov 54h,#0 mov 55h,#0 mov a,48h jnb acc.7,X8db2 mov 54h,#0ffh mov 55h,#0ffh X8db2: mov a,3bh mov 69h,3bh mov 68h,#0 jnb acc.7,X8dc0 mov 68h,#0ffh X8dc0: lcall X8af9 mov 5bh,4eh mov 5ah,4fh mov 59h,50h mov 58h,51h lcall X8a82 mov 57h,#0ah mov 56h,#0 lcall X8baf mov 4dh,52h mov 4ch,53h mov 4bh,54h mov 4ah,55h ret ; X8de8: mov 52h,2bh mov 53h,2ch mov 54h,#0 mov 55h,#0 mov 4eh,52h mov 4fh,53h mov 50h,54h mov 51h,55h mov 57h,#0ah mov 56h,#0 lcall X8baf mov 5bh,52h mov 5ah,53h mov 59h,54h mov 58h,55h mov 69h,#0ah mov 68h,#0 lcall X8af9 mov 61h,52h mov 60h,53h mov 5fh,54h mov 5eh,55h mov 52h,4eh mov 53h,4fh mov 54h,50h mov 55h,51h lcall X8ab6 mov a,52h push acc mov 52h,5bh mov 53h,5ah mov 54h,59h mov 55h,58h mov 4eh,52h mov 4fh,53h mov 50h,54h mov 51h,55h mov 57h,#0ah mov 56h,#0 lcall X8baf mov 5bh,52h mov 5ah,53h mov 59h,54h mov 58h,55h mov 69h,#0ah mov 68h,#0 lcall X8af9 mov 61h,52h mov 60h,53h mov 5fh,54h mov 5eh,55h mov 52h,4eh mov 53h,4fh mov 54h,50h mov 55h,51h lcall X8ab6 mov a,52h push acc mov 52h,5bh mov 53h,5ah mov 54h,59h mov 55h,58h mov 4eh,52h mov 4fh,53h mov 50h,54h mov 51h,55h mov 57h,#0ah mov 56h,#0 lcall X8baf mov 5bh,52h mov 5ah,53h mov 59h,54h mov 58h,55h mov 69h,#0ah mov 68h,#0 lcall X8af9 mov 61h,52h mov 60h,53h mov 5fh,54h mov 5eh,55h mov 52h,4eh mov 53h,4fh mov 54h,50h mov 55h,51h lcall X8ab6 mov a,52h push acc mov 52h,5bh mov 53h,5ah mov 54h,59h mov 55h,58h mov 4eh,52h mov 4fh,53h mov 50h,54h mov 51h,55h mov 57h,#0ah mov 56h,#0 lcall X8baf mov 5bh,52h mov 5ah,53h mov 59h,54h mov 58h,55h mov 69h,#0ah mov 68h,#0 lcall X8af9 mov 61h,52h mov 60h,53h mov 5fh,54h mov 5eh,55h mov 52h,4eh mov 53h,4fh mov 54h,50h mov 55h,51h lcall X8ab6 mov a,52h push acc mov dptr,#0952bh pop acc lcall X8f84 movx @dptr,a inc dptr pop acc lcall X8f84 movx @dptr,a inc dptr pop acc lcall X8f84 movx @dptr,a inc dptr pop acc lcall X8f84 movx @dptr,a ret ; mov dptr,#0952bh mov a,2ch anl a,#0f0h swap a lcall X8f84 movx @dptr,a inc dptr mov a,2ch anl a,#0fh lcall X8f84 movx @dptr,a inc dptr mov a,2bh anl a,#0f0h swap a lcall X8f84 movx @dptr,a inc dptr mov a,2bh anl a,#0fh lcall X8f84 movx @dptr,a ret ; X8f84: anl a,#0fh jnb acc.3,X8f91 jb acc.2,X8f8f jnb acc.1,X8f91 X8f8f: add a,#7 X8f91: add a,#30h ret ; X8f94: push dph push dpl mov dptr,#08fa3h anl a,#0fh movc a,@a+dptr pop dpl pop dph ret ; jnb 26h.1,X8fd8 rlc a addc a,#35h addc a,@r0 addc a,@r1 addc a,r0 addc a,r1 ajmp X8a42 ; orl 44h,#45h orl a,@r0 X8fb3: clr a movx a,@dptr inc dptr mov r0,a cjne r0,#24h,X8fbb ret ; X8fbb: lcall X8ff6 sjmp X8fb3 ; push acc mov 6ch,a swap a lcall X8f94 lcall X8ff6 mov a,6ch lcall X8f94 lcall X8ff6 pop acc ret ; push acc X8fd8: mov a,#20h lcall X8ff6 lcall X8ff6 pop acc ret ; mov a,#0dh lcall X8ff6 mov a,#0ah lcall X8ff6 ret |
| Topic | Author | Date |
| Help-Calibration Algorithm | 01/01/70 00:00 | |
| RE: Help-Calibration Algorithm | 01/01/70 00:00 | |
| RE: Help-Calibration Algorithm | 01/01/70 00:00 | |
| RE: Help-Calibration Algorithm | 01/01/70 00:00 | |
RE: Help-Calibration Algorithm | 01/01/70 00:00 |



