what is the best software controlled method to set and reset a single pin of the psoc5?? best meaning it will take the lowest cycle count available.
Page 10 of -
And this -
Hi Dana-san, I found a questionable action in a "PSoC1" pin.
When use shadow register or LED user module(also use shadow register). Turn on/off timing was slip off with each pins or other port.
I don't know why and I have not interest in already.
Let me have my two cents on this thread, too:
The time needed to toggle a pin with software is mostly dependent on CPU-type (MC8, ARM...) and execution speed.
But here, so I feel, we should think more "PSoC":
1st: Nothing can switch faster than hardware
2nd: PSoC contains Hardware
So to archieve a fast software-controlled pin toggle the best solution would be to use a combination of both. Imagine on a PSoC 5 LP to use a clocked control register connected to a pin which will deliver one pulse. Need more than one? Build the same with a LUT and an implemented counter, need a programmable number of pulses? Store the Number in a ControlRegister and compare that with the value of a counter. More specific behaveour? Siliconize your needs with verilog and you can easily toggle pins with 24MHz leaving a gap between the third and fourth pulse and double the length of the 7th pulse... THAT'S PSoC THINKING!
HW GPIO limitations, might be a challenge to insert controlled clocked intergap delays
at 24 Mhz,
GPIO can handle up to 33MHz, VeriLog logic UDB accepts 33MHz max at well (chained 16-bit timer example), so I think 24 MHz is within the green and not in faiway.
Sh**! Here's the missing "r", should read "fairway", but I'm not a golfer...
It is sorry to talk around PSoC1 here.
I said "slip off" it's not ns order.
It's takes quite big time.
Might be a cause of timing miss control.
however, I shouldn't say more.
for now, I doesn't use shadow things.
I have to do another things. Thank you.
Mea culpa, Dana. I see my mistake: I have to divide the input frequency at least by two to switch something from off to on (and back again). this would result in about 16MHz.