📄 pmsm32.lst
字号:
787 ;>>>> speed.K2_fr = 32361;
788 ;>>>> speed.K3_fr = 407;
789 ;>>>> speed.rpm_max = 6000;
790 ;>>>> ilg2_vdc.init(&ilg2_vdc);
791 ;>>>> dac.qptr0=&qep.theta_elec;
792 ;>>>> dac.qptr1=&sfoc.svgen.va;
793 ;>>>> dac.qptr2=&sfoc.smo.thetae;
794 ;>>>> dac.qptr3=&sfoc.svgen.vb;
795 ;>>>> #endif /* (BUILDLEVEL==LEVEL5) */
796 ;>>>> #if (BUILDLEVEL==LEVEL6)
797 ;>>>> #if TARGET==F243
798 ;>>>> pwm.period_max=667; /* This is based on 15kHz PWM frequency (20MHz) */
799 ;>>>> #elif TARGET==F2407
800 ;>>>> pwm.period_max=1333; /* This is based on 15kHz PWM frequency (40MHz)*/
801 ;>>>> #endif /* TARGET */
802 ;>>>> SFOC_TI_Init(&sfoc);
803 ;>>>> rtmon_init(); /* Call the monitor init function */
804 ;>>>> enable_ints(); /* Set off the system running. */
805 ;>>>> while(drive.enable_flg==0)
806 ;>>>> drive.init(&drive);
807 ;>>>> pwm.init(&pwm);
808 ;>>>> qep.init(&qep);
809 ;>>>> speed.K1_fr = 4800;
810 ;>>>> speed.K2_fr = 32361;
811 ;>>>> speed.K3_fr = 407;
812 ;>>>> speed.rpm_max = 6000;
813 ;>>>> ilg2_vdc.init(&ilg2_vdc);
814 ;>>>> dac.qptr0=&ilg2_vdc.Imeas_a;
815 ;>>>> dac.qptr1=&sfoc.svgen.va;
816 ;>>>> dac.qptr2=&sfoc.smo.thetae;
817 ;>>>> dac.qptr3=&sfoc.svgen.vb;
818 ;>>>> #endif /* (BUILDLEVEL==LEVEL6) */
819 ;>>>> #if (BUILDLEVEL==LEVEL7)
820 ;>>>> #if TARGET==F243
821 ;>>>> pwm.period_max=667; /* This is based on 15kHz PWM frequency (20MHz) */
822 ;>>>> #elif TARGET==F2407
823 ;>>>> pwm.period_max=1333; /* This is based on 15kHz PWM frequency (40MHz)*/
824 ;>>>> #endif /* TARGET */
825 ;>>>> SFOC_TI_Init(&sfoc);
826 ;>>>> rtmon_init(); /* Call the monitor init function */
TMS320C24xx COFF Assembler Version 7.02 Mon Apr 28 15:46:07 2003
Copyright (c) 1987-2002 Texas Instruments Incorporated
../temp/pmsm32.asm PAGE 18
827 ;>>>> enable_ints(); /* Set off the system running. */
828 ;>>>> while(drive.enable_flg==0)
829 ;>>>> drive.init(&drive);
830 ;>>>> pwm.init(&pwm);
831 ;>>>> qep.init(&qep);
832 ;>>>> speed.K1_fr = 4800;
833 ;>>>> speed.K2_fr = 32361;
834 ;>>>> speed.K3_fr = 407;
835 ;>>>> speed.rpm_max = 6000;
836 ;>>>> ilg2_vdc.init(&ilg2_vdc);
837 ;>>>> dac.qptr0=&ilg2_vdc.Imeas_a;
838 ;>>>> dac.qptr1=&sfoc.svgen.vb;
839 ;>>>> dac.qptr2=&sfoc.smo.thetae;
840 ;>>>> dac.qptr3=&sfoc.svgen.vc;
841 ;>>>> #endif /* (BUILDLEVEL==LEVEL7) */
842 ;>>>> #if TARGET==F243
843 ;>>>> EVIFRA=0x0ffff; /* Clear all Group A EV interrupt flags */
844 ;>>>> #elif TARGET==F2407
845 0037 bf80 LALK _sfoc+128
0038 00b6-
846 0039 900a- SACL _dac+3
847 .line 542
848 ;>>>> EVAIFRA=0x0ffff; /* Clear all EV1 Group A EV interrupt flags*/
849 ;>>>> #endif
850 ;>>>> while(1) /* Nothing running in the background at present */
851 003a ae80 SPLK #-1,*
003b ffff
852 003c L3:
853 .line 550
854 003c 7980 B L3
003d 003c'
855 .endfunc 655,000000000H,1
856
857 .sym _c_int02,_c_int02,32,2,0
858 .globl _c_int02
859
860 .func 658
861 ;>>>> void interrupt c_int02()
862 ******************************************************
863 * FUNCTION DEF : _c_int02
864 ******************************************************
865 003e _c_int02:
866 003e 7a80 CALL I$$SAVE
003f 0000!
867 0040 8180 SAR AR1,*
868 0041 b001 LARK AR0,1
869 0042 00e0 LAR AR0,*0+
870
871 .line 3
872 ;>>>> asm(" CLRC XF ");
873 0043 be4c CLRC XF
874 .line 5
875 ;>>>> isr_ticker++;
876 ;>>>> #if (BUILDLEVEL==LEVEL1)
TMS320C24xx COFF Assembler Version 7.02 Mon Apr 28 15:46:07 2003
Copyright (c) 1987-2002 Texas Instruments Incorporated
../temp/pmsm32.asm PAGE 19
877 ;>>>> #if TARGET==F243
878 ;>>>> EVIFRA=0x0ffff; /* Clear all Group A EV interrupt flags */
879 ;>>>> #elif TARGET==F2407
880 0044 bc00- LDPK _isr_ticker
881 0045 1000- LAC _isr_ticker
882 0046 b801 ADDK 1
883 0047 9000- SACL _isr_ticker
884 .line 13
885 ;>>>> EVAIFRA=0x0ffff; /* Clear all EV1 Group A EV interrupt flags*/
886 ;>>>> #endif
887 0048 bf0b LARK AR3,29743
0049 742f
888 004a 8b8b MAR * ,AR3
889 004b ae89 SPLK #-1,* ,AR1
004c ffff
890 .line 19
891 ;>>>> drive.calc(&drive);
892 004d bf80 LALK _drive+0
004e 0004-
893 004f 90a0 SACL *+
894 0050 1006- LAC _drive+2
895 0051 be30 CALA
896 0052 8b90 MAR *-
897 .line 25
898 ;>>>> SFOC_TI_Run(&sfoc);
899 0053 bf80 LALK _sfoc+0
0054 0036-
900 0055 90a0 SACL *+
901 0056 7a80 CALL _SFOC_TI_Run
0057 0000!
902 0058 8b90 MAR *-
903 .line 31
904 ;>>>> pwm.mfunc_c1 = sfoc.svgen.va;
905 0059 bc00- LDPK _sfoc+32
906 005a a956- BLDD _sfoc+32,#_pwm+2
005b 000f-
907 .line 32
908 ;>>>> pwm.mfunc_c2 = sfoc.svgen.vb;
909 005c a810- BLKD #_sfoc+33,_pwm+3
005d 0057-
910 .line 33
911 ;>>>> pwm.mfunc_c3 = sfoc.svgen.vc;
912 005e a811- BLKD #_sfoc+34,_pwm+4
005f 0058-
913 .line 34
914 ;>>>> pwm.update(&pwm);
915 0060 bf80 LALK _pwm+0
0061 000d-
916 0062 90a0 SACL *+
917 0063 1013- LAC _pwm+6
918 0064 be30 CALA
919 0065 8b90 MAR *-
920 .line 39
921 ;>>>> dac.update(&dac);
TMS320C24xx COFF Assembler Version 7.02 Mon Apr 28 15:46:07 2003
Copyright (c) 1987-2002 Texas Instruments Incorporated
../temp/pmsm32.asm PAGE 20
922 ;>>>> #endif /* BUILDLEVEL==LEVEL1 */
923 ;>>>> #if (BUILDLEVEL==LEVEL2)
924 ;>>>> #if TARGET==F243
925 ;>>>> EVIFRA=0x0ffff; /* Clear all Group A EV interrupt flags */
926 ;>>>> #elif TARGET==F2407
927 ;>>>> EVAIFRA=0x0ffff; /* Clear all EV1 Group A EV interrupt flags*/
928 ;>>>> #endif
929 ;>>>> drive.calc(&drive);
930 ;>>>> SFOC_TI_Run(&sfoc);
931 ;>>>> pwm.mfunc_c1 = sfoc.svgen.va;
932 ;>>>> pwm.mfunc_c2 = sfoc.svgen.vb;
933 ;>>>> pwm.mfunc_c3 = sfoc.svgen.vc;
934 ;>>>> pwm.update(&pwm);
935 ;>>>> ilg2_vdc.read(&ilg2_vdc);
936 ;>>>> sfoc.current_abc.a = ilg2_vdc.Imeas_a;
937 ;>>>> sfoc.current_abc.b = ilg2_vdc.Imeas_b;
938 ;>>>> sfoc.current_abc.c = ilg2_vdc.Imeas_c;
939 ;>>>> sfoc.Vbus = ilg2_vdc.Vdc_meas;
940 ;>>>> dac.update(&dac);
941 ;>>>> #endif /* BUILDLEVEL==LEVEL2 */
942 ;>>>> #if (BUILDLEVEL==LEVEL3)
943 ;>>>> #if TARGET==F243
944 ;>>>> EVIFRA=0x0ffff; /* Clear all Group A EV interrupt flags */
945 ;>>>> #elif TARGET==F2407
946 ;>>>> EVAIFRA=0x0ffff; /* Clear all EV1 Group A EV interrupt flags*/
947 ;>>>> #endif
948 ;>>>> drive.calc(&drive);
949 ;>>>> SFOC_TI_Run(&sfoc);
950 ;>>>> pwm.mfunc_c1 = sfoc.svgen.va;
951 ;>>>> pwm.mfunc_c2 = sfoc.svgen.vb;
952 ;>>>> pwm.mfunc_c3 = sfoc.svgen.vc;
953 ;>>>> pwm.update(&pwm);
954 ;>>>> ilg2_vdc.read(&ilg2_vdc);
955 ;>>>> sfoc.current_abc.a = ilg2_vdc.Imeas_a;
956 ;>>>> sfoc.current_abc.b = ilg2_vdc.Imeas_b;
957 ;>>>> sfoc.current_abc.c = ilg2_vdc.Imeas_c;
958 ;>>>> sfoc.Vbus = ilg2_vdc.Vdc_meas;
959 ;>>>> dac.update(&dac);
960 ;>>>> #endif /* BUILDLEVEL==LEVEL3 */
961 ;>>>> #if (BUILDLEVEL==LEVEL4)
962 ;>>>> #if TARGET==F243
963 ;>>>> EVIFRA=0x0ffff; /* Clear all Group A EV interrupt flags */
964 ;>>>> #elif TARGET==F2407
965 ;>>>> EVAIFRA=0x0ffff; /* Clear all EV1 Group A EV interrupt flags*/
966 ;>>>> #endif
967 ;>>>> drive.calc(&drive);
968 ;>>>> SFOC_TI_Run(&sfoc);
969 ;>>>> pwm.mfunc_c1 = sfoc.svgen.va;
970 ;>>>> pwm.mfunc_c2 = sfoc.svgen.vb;
971 ;>>>> pwm.mfunc_c3 = sfoc.svgen.vc;
972 ;>>>> pwm.update(&pwm);
973 ;>>>> ilg2_vdc.read(&ilg2_vdc);
974 ;>>>> sfoc.current_abc.a = ilg2_vdc.Imeas_a;
975 ;>>>> sfoc.current_abc.b = ilg2_vdc.Imeas_b;
TMS320C24xx COFF Assembler Version 7.02 Mon Apr 28 15:46:07 2003
Copyright (c) 1987-2002 Texas Instruments Incorporated
../temp/pmsm32.asm PAGE 21
976 ;>>>> sfoc.current_abc.c = ilg2_vdc.Imeas_c;
977 ;>>>> sfoc.Vbus = ilg2_vdc.Vdc_meas;
978 ;>>>> qep.calc(&qep);
979 ;>>>> sfoc.shaft_theta_elec = qep.theta_elec;
980 ;>>>> sfoc.shaft_direction = qep.dir_QEP;
981 ;>>>> speed.theta_elec = qep.theta_elec;
982 ;>>>> speed.calc(&speed);
983 ;>>>> sfoc.Mea_spd = speed.speed_frq;
984 ;>>>> dac.update(&dac);
985 ;>>>> #endif /* BUILDLEVEL==LEVEL4 */
986 ;>>>> #if (BUILDLEVEL==LEVEL5)
987 ;>>>> #if TARGET==F243
988 ;>>>> EVIFRA=0x0ffff; /* Clear all Group A EV interrupt flags */
989 ;>>>> #elif TARGET==F2407
990 ;>>>> EVAIFRA=0x0ffff; /* Clear all EV1 Group A EV interrupt flags*/
991 ;>>>> #endif
992 ;>>>> drive.calc(&drive
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -