I guess there may be something with drive mode of these two pins or the internal connection issue.
I saw drive mode of these two pins are both strong drive.
So this could be caused by internal connection of these two pins after PWM stop are different. I will double-check the code and internal connection.
Meanwhile, we can test if both line output and line_n output has same phenomenon.
Thank you very much for your response!
Since I'm out of my office, I can not test it today,
but I'd like to test line and line_n tomorrow.
And, Yes, I'm looking forward to hearing update(s) from you.
I tested with line.
And again LEDs did not agree when PWM is stopped.
Although PWM config, IMHO, suggests that line is LOW when not active,
the PWM's line output connected to the external pin (P5) behave otherwise,
meantime SmartIO shows that data6, which is also connected to PWM's line output shows it is LOW.
We have some suspect that when an internal component is stopped the IOB connected to that component
takes its "initial value" instead of the supposed logical value of the internal component.
In this case, LED13's Initial drive state is High(1), although we can not control it.
This assumption also agrees with the behavior of LED8, which is ON after PWM was stopped,
but when SmartIO is stopped, LED8 also gets OFF.
* LED8 is connected to SmartIO
* LED13 is conncted to PWM line
CyGlobalIntEnable; /* Enable global interrupts. */
SmartIO_Start() ; // (A) LED8 is ON and LED13 is OFF
PWM_Start() ; // (B) both LED8 and LED13 blink synchronizedly
CyDelay(3000) ; // (C) let LEDs blink for 3 seconds
PWM_Stop() ; // (D) LED8 is ON and LED13 is OFF
SmartIO_Stop() ; // (E) both LED8 and LED13 is OFF
// rest is silence
PWM_Stop() ; only stopped output of PWM component,
but the output buffer of SMARTIO is not disabled. SmartIO_Stop() ; will disable SMARTIO Component output buffer so that output of SmarIO will be stopped.
Thank you very much for your answer.
Would you teach us below?
> PWM_Stop() ; only stopped output of PWM component,
> but the output buffer of SMARTIO is not disabled.
What is the "output" of PWM?
Is it the output port connected to the external pin
or the "line" signal of PWM component?
From the symptom I think that the output PIN (port) of PWM
is either high or high-Z so that LED turns off.
But as LED connected to the SmartIO is on,
which means the signal "line" of PWM is LOW
or SmartIO treats disabled signal ("line" of PWM) as LOW,
so that the LED turns on.
I'm sorry for being picky, but we also having been wondering about this.
Thank you for your update on the topic.
We welcome any study and research on Cypress product application which is a key to help us move on continually.
Regarding the phenomenon, output PIN (port) of PWM is high-Z(as per HSIOM configuration) so that PWM output LED turns off.
Yes. I think so. SmartIO treats disabled signal ("line" of PWM) as LOW (When I change LUT6 logic to 0 0 0->1, 1 1 1->). After PWM_Stop(), SmartIO output will be high, and SmartIO LED turned off.
Thank you very much for your answer!