согласованеие по таймингам для повышения частоты

This commit is contained in:
seklyuts 2024-09-16 12:43:05 +03:00
parent a4da680dff
commit e621743421
8 changed files with 31 additions and 63 deletions

File diff suppressed because one or more lines are too long

View File

@ -1,16 +1,16 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<configurations XML_version="1.2" id="configurations_0"> <configurations XML_version="1.2" id="configurations_0">
<configuration XML_version="1.2" id="Texas Instruments XDS100v2 USB Debug Probe_0"> <configuration XML_version="1.2" id="Texas Instruments XDS2xx USB Debug Probe_0">
<instance XML_version="1.2" desc="Texas Instruments XDS100v2 USB Debug Probe_0" href="connections/TIXDS100v2_Connection.xml" id="Texas Instruments XDS100v2 USB Debug Probe_0" xml="TIXDS100v2_Connection.xml" xmlpath="connections"/> <instance XML_version="1.2" desc="Texas Instruments XDS2xx USB Debug Probe_0" href="connections/TIXDS2XXUSB_Connection.xml" id="Texas Instruments XDS2xx USB Debug Probe_0" xml="TIXDS2XXUSB_Connection.xml" xmlpath="connections"/>
<connection XML_version="1.2" id="Texas Instruments XDS100v2 USB Debug Probe_0"> <connection XML_version="1.2" id="Texas Instruments XDS2xx USB Debug Probe_0">
<instance XML_version="1.2" href="drivers/tixds100v2icepick_c.xml" id="drivers" xml="tixds100v2icepick_c.xml" xmlpath="drivers"/> <instance XML_version="1.2" href="drivers/tixds560icepick_c.xml" id="drivers" xml="tixds560icepick_c.xml" xmlpath="drivers"/>
<instance XML_version="1.2" href="drivers/tixds100v2c28x.xml" id="drivers" xml="tixds100v2c28x.xml" xmlpath="drivers"/> <instance XML_version="1.2" href="drivers/tixds560c28x.xml" id="drivers" xml="tixds560c28x.xml" xmlpath="drivers"/>
<instance XML_version="1.2" href="drivers/tixds100v2cla2.xml" id="drivers" xml="tixds100v2cla2.xml" xmlpath="drivers"/> <instance XML_version="1.2" href="drivers/tixds560cla2.xml" id="drivers" xml="tixds560cla2.xml" xmlpath="drivers"/>
<instance XML_version="1.2" href="drivers/tixds100v2cs_child.xml" id="drivers" xml="tixds100v2cs_child.xml" xmlpath="drivers"/> <instance XML_version="1.2" href="drivers/tixds560cs_child.xml" id="drivers" xml="tixds560cs_child.xml" xmlpath="drivers"/>
<instance XML_version="1.2" href="drivers/tixds100v2cs_dap.xml" id="drivers" xml="tixds100v2cs_dap.xml" xmlpath="drivers"/> <instance XML_version="1.2" href="drivers/tixds560cs_dap.xml" id="drivers" xml="tixds560cs_dap.xml" xmlpath="drivers"/>
<instance XML_version="1.2" href="drivers/tixds100v2cortexM.xml" id="drivers" xml="tixds100v2cortexM.xml" xmlpath="drivers"/> <instance XML_version="1.2" href="drivers/tixds560cortexM.xml" id="drivers" xml="tixds560cortexM.xml" xmlpath="drivers"/>
<instance XML_version="1.2" href="drivers/tixds510ajsm.xml" id="drivers" xml="tixds510ajsm.xml" xmlpath="drivers"/> <instance XML_version="1.2" href="drivers/tixds560ajsm.xml" id="drivers" xml="tixds560ajsm.xml" xmlpath="drivers"/>
<platform XML_version="1.2" id="platform_0"> <platform XML_version="1.2" id="platform_0">
<instance XML_version="1.2" desc="TMS320F28388D_0" href="devices/f28388d.xml" id="TMS320F28388D_0" xml="f28388d.xml" xmlpath="devices"/> <instance XML_version="1.2" desc="TMS320F28388D_0" href="devices/f28388d.xml" id="TMS320F28388D_0" xml="f28388d.xml" xmlpath="devices"/>
<device HW_revision="1" XML_version="1.2" description="" id="TMS320F28388D_0" partnum="TMS320F28388D"> <device HW_revision="1" XML_version="1.2" description="" id="TMS320F28388D_0" partnum="TMS320F28388D">

File diff suppressed because one or more lines are too long

View File

@ -31,6 +31,7 @@ void main(void)
for(;;) for(;;)
{ {
BissClkgenRun();
UartErrorReset(); UartErrorReset();
#ifdef FREEMASTER #ifdef FREEMASTER
FMSTR_Poll(); FMSTR_Poll();

View File

@ -173,6 +173,10 @@ __interrupt void epwm2_isr(void)
// Clear INT flag for this timer // Clear INT flag for this timer
// //
EPwm2Regs.ETCLR.bit.INT = 1; EPwm2Regs.ETCLR.bit.INT = 1;
saveTimingNow(5);
BissStartSet();
if(PwmFlagStartCurrentMeashure) /// Не были отработаны измерения тока в сигма-дельта и не было запущено векторное управление if(PwmFlagStartCurrentMeashure) /// Не были отработаны измерения тока в сигма-дельта и не было запущено векторное управление
{ {
@ -185,7 +189,7 @@ __interrupt void epwm2_isr(void)
PwmFlagStartCurrentMeashure = 0; PwmFlagStartCurrentMeashure = 0;
SynchPWMFonRunEnableSet(); SynchPWMFonRunEnableSet();
AdcStartSet(); AdcStartSet();
BissStartSet();
PWM_motor.UA = PERIOD_DIV2; PWM_motor.UA = PERIOD_DIV2;
PWM_motor.UB = PERIOD_DIV2; PWM_motor.UB = PERIOD_DIV2;
@ -313,7 +317,6 @@ __interrupt void epwm11_isr(void)
saveTimingNow(0); saveTimingNow(0);
sdfm_start_conversion_current(); sdfm_start_conversion_current();
BissClkgenRun();
PwmFlagStartCurrentMeashure = 1; PwmFlagStartCurrentMeashure = 1;
EPwm11Regs.ETCLR.bit.INT = 1; EPwm11Regs.ETCLR.bit.INT = 1;

View File

@ -46,6 +46,7 @@ void SyncPWMFonRun(void)
{ {
if(SynchPWMFonRunEnable()) if(SynchPWMFonRunEnable())
{ {
#ifdef FREEMASTER #ifdef FREEMASTER

View File

@ -137,7 +137,7 @@ void BissClkgenRun(void) {
if(biss_on) if(biss_on)
{ {
saveTimingNow(6);
biss_on = 0; biss_on = 0;
Clb1LogicCtrlRegs.CLB_GP_REG.all = CLKGEN_RUN_GP_FLAG; Clb1LogicCtrlRegs.CLB_GP_REG.all = CLKGEN_RUN_GP_FLAG;
DELAY_US(10); DELAY_US(10);
@ -147,6 +147,7 @@ void BissClkgenRun(void) {
CLB_clearFIFOs1(); CLB_clearFIFOs1();
CLB_clearFIFOs2(); CLB_clearFIFOs2();
saveTimingNow(7);
} }
} }
@ -195,7 +196,7 @@ void BissCalc(uint64_t BissData)
{ {
uint16_t BissEmptyBits = 0; uint16_t BissEmptyBits = 0;
saveTimingNow(5); saveTimingNow(3);
BissData = BissData << 2; BissData = BissData << 2;
@ -246,7 +247,7 @@ void BissCalc(uint64_t BissData)
bissSpeed = Bissth1 - Bissth1_; bissSpeed = Bissth1 - Bissth1_;
Bissth1_ = Bissth1; Bissth1_ = Bissth1;
saveTimingNow(6); saveTimingNow(4);
} }
BissErr = (BissAll >> (ANGLESUMM_SHIFT-1)) & 1; BissErr = (BissAll >> (ANGLESUMM_SHIFT-1)) & 1;
BissWarn = (BissAll >> (ANGLESUMM_SHIFT-2)) & 1; BissWarn = (BissAll >> (ANGLESUMM_SHIFT-2)) & 1;

View File

@ -235,14 +235,14 @@ void vectorControl(int16_t CurrentA, int16_t CurrentB, int16_t CurrentC, int16_t
} }
Udc = sdfmUdc * FACTOR_VDC; Udc = sdfmUdc * FACTOR_VDC;
vector_klark_park(SectorCheckOn,Ia,Ib,Ic); vector_klark_park(SectorCheckOn,Ia,Ib,Ic);
saveTimingNow(2);
vector_inversion(); vector_inversion();
saveTimingNow(3);
BissStartSet();
SynchPWMFonRunEnableSet(); SynchPWMFonRunEnableSet();
AdcStartSet(); AdcStartSet();
sdfm_start_conversion_brake(); sdfm_start_conversion_brake();
saveTimingNow(4); saveTimingNow(2);
} }
void vectorInitCurrLoop(void) void vectorInitCurrLoop(void)