📄 bldc3_21.lst
字号:
736 ;-----------------------------
737 lacc sp_up_done_flg
738 bcnd CLSD_LOOP, NEQ ;If set go into closed loop mode
739
740 CALL RMP3CNTL
741
742 POINT_B0
743 bldd #rmp3_done_flg, sp_up_done_flg
744 bldd #rmp3_out, cmtn_period_setpt
745
746 ldp #ig_period
747 bldd #rmp3_out, ig_period
748
749 CALL IMPULSE
750
751 ldp #m6_trig_in
752 bldd #ig_out, m6_trig_in
753 B OPEN_LOOP
754
755 CLSD_LOOP
756 ldp #m6_trig_in
757 bldd #cmtn_trig, m6_trig_in
758
759 OPEN_LOOP
760 CALL MOD6_CNT
761
762 ldp #cmtn_ptr_bd
763 bldd #m6_cntr, cmtn_ptr_bd ;Input to BLDC_PWM_DRV
764
765 ldp #cmtn_ptr_ct
766 bldd #m6_cntr, cmtn_ptr_ct ;Input to COMMUTATION_TRIGGER
767
768 ;------------------------------------------------------------------
769 ;Implements ramp control of D_func during open current loop control
770
771 ldp #rmp2_desired
772 bldd #D_func_desired, rmp2_desired
773
TMS320C24xx COFF Assembler Version 7.02 Mon Apr 28 11:35:36 2003
Copyright (c) 1987-2002 Texas Instruments Incorporated
bldc3_21.asm PAGE 17
774 CALL RMP2CNTL
775
776 ldp #D_func
777 bldd #rmp2_out, D_func
778 ;------------------------------------------------------------------
779
780 CALL BLDC_3PWM_DRV
781 CALL ADC04U_DRV
782
783 ldp #Va
784 bldd #C1_out, Va
785 bldd #C2_out, Vb
786 bldd #C3_out, Vc
787
788 CALL COMTN_TRIG
789
790 .endif
791 ;-------------------------------------------------------------------------------------------
792 ;-------------------------------------------------------------------------------------------
793 .if (phase5_inc_build)
794
795 ;Closed loop commutation control
796 ;-----------------------------
797
798 lacc sp_up_done_flg
799 bcnd CLSD_LOOP, NEQ ;If set go into closed loop mode
800
801 CALL RMP3CNTL
802
803 POINT_B0
804 bldd #rmp3_done_flg, sp_up_done_flg
805 bldd #rmp3_out, cmtn_period_setpt
806
807 ldp #ig_period
808 bldd #rmp3_out, ig_period
809
810 CALL IMPULSE
811
812 ldp #m6_trig_in
813 bldd #ig_out, m6_trig_in
814 B OPEN_LOOP
815
816 CLSD_LOOP
817 ldp #m6_trig_in
818 bldd #cmtn_trig, m6_trig_in
819
820 OPEN_LOOP
821 CALL MOD6_CNT
822
823 ldp #cmtn_ptr_bd
824 bldd #m6_cntr, cmtn_ptr_bd ;Input to BLDC_PWM_DRV
825
826 ldp #cmtn_ptr_ct
827 bldd #m6_cntr, cmtn_ptr_ct ;Input to COMMUTATION_TRIGGER
TMS320C24xx COFF Assembler Version 7.02 Mon Apr 28 11:35:36 2003
Copyright (c) 1987-2002 Texas Instruments Incorporated
bldc3_21.asm PAGE 18
828
829
830 ldp #pid_out_reg2
831 bldd #C4_out, pid_fb_reg2
832 bldd #current_set, pid_ref_reg2
833
834 CALL PID_REG2
835
836 ;------------------------------------------------------------------
837 ;Uses PID result when the flag is set, i.e., I_loop_flg=1
838 ;Implements ramp control of D_func during open current loop
839 ;control, i.e., I_loop_flg=0
840
841 POINT_B0
842 lacc I_loop_flg
843 bnz SKIP_D_FUNC_RMP
844 ldp #rmp2_desired
845 bldd #D_func_desired, rmp2_desired
846
847 CALL RMP2CNTL
848
849 ldp #D_func
850 bldd #rmp2_out, D_func
851 B SKIP_PID_DATA
852 ;------------------------------------------------------------------
853 SKIP_D_FUNC_RMP
854
855 ldp #D_func
856 bldd #pid_out_reg2, D_func
857
858 SKIP_PID_DATA
859
860 CALL BLDC_3PWM_DRV
861
862 CALL ADC04U_DRV
863
864 ldp #Va
865 bldd #C1_out, Va
866 bldd #C2_out, Vb
867 bldd #C3_out, Vc
868
869 CALL COMTN_TRIG
870
871
872 ldp #BC_IN
873 bldd #rev_period, BC_IN
874
875 CALL BC_CALC
876
877 ldp #event_period
878 bldd #BC_OUT,event_period
879
880 CALL SPEED_REV_PRD
881
TMS320C24xx COFF Assembler Version 7.02 Mon Apr 28 11:35:36 2003
Copyright (c) 1987-2002 Texas Instruments Incorporated
bldc3_21.asm PAGE 19
882 .endif
883 ;-------------------------------------------------------------------------------------------
884 ;Update Virtual Timer
885 ;--------------------------
886
887 00c6 updat_v_timer
888 00c6 POINT_B0
1 00c6 bc04 LDP #04h
889 00c7 1003- LACC v_timer ;Inc virtual timer
890 00c8 b801 ADD #1
891 00c9 bfb0 AND #07FFFh ;Force 15 bit wrap around
00ca 7fff
892 00cb 9003- SACL v_timer ;Save
893
894 ; CALL DAC_VIEW_DRV
895 00cc 7a80 CALL DATA_LOG
00cd 0000!
896 ;-------------------------------------------------------------------------------------------
897 ;End main section of ISR
898 ;-------------------------------------------------------------------------------------------
899 ;Restore Context
900 00ce END_ISR:
901 00ce 8b89 MAR *, AR1 ;make stack pointer active
902 00cf 0590 LAR AR5,*- ;Restore AR5
903 00d0 0690 LAR AR6,*- ;Restore AR6
904 00d1 6990 LACL *- ;Restore Acc low
905 00d2 6190 ADDH *- ;Restore Acc high
906 00d3 0e90 LST #0, *- ;load ST0
907 00d4 0f90 LST #1, *- ;load ST1
908 00d5 be40 CLRC INTM
909 00d6 ef00 RET
910
911
912 ;===========================================================================================
913 ; I S R - PHANTOM
914 ;
915 ; Description: Dummy ISR, used to trap spurious interrupts.
916 ;
917 ;===========================================================================================
918 00d7 7980 PHANTOM B PHANTOM
00d8 00d7'
919 00d9 7980 PHANTOM1 B PHANTOM1
00da 00d9'
920 00db 7980 PHANTOM2 B PHANTOM2
00dc 00db'
921 00dd 7980 PHANTOM3 B PHANTOM3
00de 00dd'
922 00df 7980 PHANTOM4 B PHANTOM4
00e0 00df'
923 00e1 7980 PHANTOM5 B PHANTOM5
00e2 00e1'
924 00e3 7980 PHANTOM6 B PHANTOM6
00e4 00e3'
925 ;===========================================================================================
TMS320C24xx COFF Assembler Version 7.02 Mon Apr 28 11:35:36 2003
Copyright (c) 1987-2002 Texas Instruments Incorporated
bldc3_21.asm PAGE 20
No Errors, No Warnings
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -