Not applicable
Dec 28, 2015
06:38 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dec 28, 2015
06:38 AM
Hi All,
I can stop a PWM_CCU4 peripheral from the input of a GPIO input pin, but starting it by calling "PWM_CCU4_Start(&PWM_CCU4_0)" in the while loop in the main function when "PWM_CCU4_GetTimerStatus(&PWM_CCU4_0)" is false, simply does not work. Is there a work around for this bug?
Regards,
Enigma
I can stop a PWM_CCU4 peripheral from the input of a GPIO input pin, but starting it by calling "PWM_CCU4_Start(&PWM_CCU4_0)" in the while loop in the main function when "PWM_CCU4_GetTimerStatus(&PWM_CCU4_0)" is false, simply does not work. Is there a work around for this bug?
Regards,
Enigma
5 Replies
Dec 28, 2015
07:05 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dec 28, 2015
07:05 PM
Well I don't think there is a bug on this. Can you check the status of the run bit (CC4yTCST.TRB)?
Not applicable
Dec 29, 2015
02:14 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dec 29, 2015
02:14 AM
Hi Travis,
I got this to work now, but I had to create a signal from within the software to trigger the external start with switching between
GLOBAL_CCU4_SyncStartTriggerHigh(GLOBAL_CCU4_CCUCON_Msk);
GLOBAL_CCU4_SyncStartTriggerLow(GLOBAL_CCU4_CCUCON_Msk);
Is there any way to make it start again without making use of this hacky method? Can you provide a code snippet for toggling CC4yTC.STRM? I can not seem to get this to work.
Regards
Enigma
I got this to work now, but I had to create a signal from within the software to trigger the external start with switching between
GLOBAL_CCU4_SyncStartTriggerHigh(GLOBAL_CCU4_CCUCON_Msk);
GLOBAL_CCU4_SyncStartTriggerLow(GLOBAL_CCU4_CCUCON_Msk);
Is there any way to make it start again without making use of this hacky method? Can you provide a code snippet for toggling CC4yTC.STRM? I can not seem to get this to work.
Regards
Enigma
Dec 30, 2015
06:57 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dec 30, 2015
06:57 PM
Hi,
Are you using DAVE4? As I cannot find the function which you had just mentioned.
To start the CCU4 timer, I am using the below function which will set the timer run bit.
Are you using DAVE4? As I cannot find the function which you had just mentioned.
To start the CCU4 timer, I am using the below function which will set the timer run bit.
__STATIC_INLINE void XMC_CCU4_SLICE_StartTimer(XMC_CCU4_SLICE_t *const slice)
{
XMC_ASSERT("XMC_CCU4_SLICE_StartTimer:Invalid Slice Pointer", XMC_CCU4_IsValidSlice(slice));
slice->TCSET = CCU4_CC4_TCSET_TRBS_Msk;
}
Dec 30, 2015
06:57 PM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dec 30, 2015
06:57 PM
Which device are you using?
Not applicable
Jan 08, 2016
02:16 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Jan 08, 2016
02:16 AM
Hi Travis,
Sorry for the late replies, just got back.
Setup:
1) XMC1300 boot kit.
2) DAVE 4.1.4
It still does not seem to work for me. Is there a basic project for showing this, it is not obvious to me how to get this working. Currently only my hacky method seems to work.
Regards
Ludwig
Sorry for the late replies, just got back.
Setup:
1) XMC1300 boot kit.
2) DAVE 4.1.4
It still does not seem to work for me. Is there a basic project for showing this, it is not obvious to me how to get this working. Currently only my hacky method seems to work.
Regards
Ludwig