Not applicable
Aug 02, 2014
05:54 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Aug 02, 2014
05:54 AM
Hi,
Target : XMC1300 bootkit
Problem : All six inverter output lines of CCU8 do not come to passive level using PWMSVM01_Stop() function
I have a XMC1300 bootkit and testing APP PWMSVM01/0 ver.1.0.30
It is requried that all 6 inverter output lines of CCU8 go to passive level on stop command.
For this purpose all 6 lines are configured for passive low level.
These lines are at passive low level on :
1. Power up
2. Trap
However after executing PWMSVM01_Stop() function upper switch lines are at passive level(low) and lower switch lines are high.
As a workaround a trap was invoked on stop command.
This works (all 6 lines fall to passive level) but PWM cannot be restarted after a trap is invoked.
We also tried each of the below separately:
1. Function PWMSVM01_ResetTrapFlag().
2. PWMSVM01_Deinit() followed by PWMSVM01_Init().
3. Bit field SxSTyC in GCSC was also set to 1.
WR_REG(CCU80->GCSC, CCU8_GCSC_S0ST2C_Msk, CCU8_GCSC_S0ST2C_Pos,1);
WR_REG(CCU80->GCSC, CCU8_GCSC_S1ST2C_Msk, CCU8_GCSC_S1ST2C_Pos,1);
WR_REG(CCU80->GCSC, CCU8_GCSC_S2ST2C_Msk, CCU8_GCSC_S2ST2C_Pos,1);
But, no effect.
We need to have a PWM restart after exiting from trap interrupt.
Regards,
Naresh
Target : XMC1300 bootkit
Problem : All six inverter output lines of CCU8 do not come to passive level using PWMSVM01_Stop() function
I have a XMC1300 bootkit and testing APP PWMSVM01/0 ver.1.0.30
It is requried that all 6 inverter output lines of CCU8 go to passive level on stop command.
For this purpose all 6 lines are configured for passive low level.
These lines are at passive low level on :
1. Power up
2. Trap
However after executing PWMSVM01_Stop() function upper switch lines are at passive level(low) and lower switch lines are high.
As a workaround a trap was invoked on stop command.
This works (all 6 lines fall to passive level) but PWM cannot be restarted after a trap is invoked.
We also tried each of the below separately:
1. Function PWMSVM01_ResetTrapFlag().
2. PWMSVM01_Deinit() followed by PWMSVM01_Init().
3. Bit field SxSTyC in GCSC was also set to 1.
WR_REG(CCU80->GCSC, CCU8_GCSC_S0ST2C_Msk, CCU8_GCSC_S0ST2C_Pos,1);
WR_REG(CCU80->GCSC, CCU8_GCSC_S1ST2C_Msk, CCU8_GCSC_S1ST2C_Pos,1);
WR_REG(CCU80->GCSC, CCU8_GCSC_S2ST2C_Msk, CCU8_GCSC_S2ST2C_Pos,1);
But, no effect.
We need to have a PWM restart after exiting from trap interrupt.
Regards,
Naresh
3 Replies
Not applicable
Aug 04, 2014
10:18 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Aug 04, 2014
10:18 PM
Hi Naresh,
Suppose you only need to clear the TRAP signal by setting CC4yTC.TRPSW = 1 after the input trap signal is removed.
Then your PWM should be resumed.
You don't even need to re-initialize the CCU8.
Suppose you only need to clear the TRAP signal by setting CC4yTC.TRPSW = 1 after the input trap signal is removed.
Then your PWM should be resumed.
You don't even need to re-initialize the CCU8.
Not applicable
Aug 05, 2014
03:45 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Aug 05, 2014
03:45 AM
Jackson wrote:
Hi Naresh,
Suppose you only need to clear the TRAP signal by setting CC4yTC.TRPSW = 1 after the input trap signal is removed.
Then your PWM should be resumed.
You don't even need to re-initialize the CCU8.
Hi Jackson,
when Trap occurs we turn off PWM using PWMSM01_stop() and clear Trap flag using
PWMSVM01_ResetTrapFlag().
We have considered Trap exit control as "SW Exit" in PWMSVM app.
After this we are calling PWMSM01_start() for PWM generation but PWM does not resume.
Not applicable
Aug 06, 2014
12:58 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Aug 06, 2014
12:58 AM
Hi Naresh,
It seems the function PWMSVM01_ResetTrapFlag() did not set CC8yTC.TRPSW = 1.
So I think you have to manually set this bit after you call PWMSVM01_ResetTrapFlag().
It seems the function PWMSVM01_ResetTrapFlag() did not set CC8yTC.TRPSW = 1.
So I think you have to manually set this bit after you call PWMSVM01_ResetTrapFlag().