Strictly necessary cookies are on by default and cannot be turned off. Functional, Performance and Tracking/targeting/sharing cookies can be turned on below based on your preferences (this banner will remain available for you to accept cookies). You may change your cookie settings by deleting cookies from your browser. Then this banner will appear again. You can learn more details about cookies HERE.
Strictly necessary (always on)
Functional, Performance and Tracking/targeting/sharing (default off)
I had to make the new question because the previous somebody marked it 'as solved', then, when I could return to this problem and asked the next subquestion, nobody see it because 'it is marked as solved', although it is far away of being really solved. I'd ask, Solved for who? If the person with the question can't handle the answer as something that solves the real problem, it is not solved.
So, excuse me for the delay. I'm now back with this problem. I hope CONSULTRON could continue helping me as he gave me the example I'm working with.
As I stated first, I need to move frequency about +- 12% from a frequency, that is a little lower than 5 KHz, in order to sustain some resonance on the system. i have seen what you sent, I understand that the clock was defined as the 8 bit period (256) multiplied by 5,000 Hertz, so you get a clock of 1.28 MHz. but as I need to move smoothly the frequency from the program (see the image freq_resonance attached), I see at first sight two posibilities:
1. To change the frequency on the clock with Clock_SetDividerValue(uint16 clkDivider) or
2. To change Period of the first PWM
The problem is that I don't know which values are elegible in case 1. and that the steps that would be available in case 2. are very wide (18.35 Hertz per step), and, if the range is about 564 Hertz for each side, with 30 steps I'll never can sustain resonance (I would correct from a derivative control factor, but if it doesn't work, it would become a PID algorithm). I think that the minimal step should be about 4 or 3 Hz. At the beginning, the program will scan the range until it finds the resonance frequency. The input for the program will be a sound, so when amplitude reach a peak, the program has to avoid loosing resonance moving frequency as needed. The resonance freq. could vary a little with rise of temp, the system has to make the changes needed, if amplitude begin to decrease, it has to oscilate slowly to verify on which direction it reaches the peak again (zero slope). I think that the green range, of about 500 Hz will be enough, but I'll know it until the experiment be phisically implemented.
Another thing that I want you to help me is the next: I have to sustanin resonance, but I want to read and display several sensors (a microphone, temp, presure, amp, volt, etc). How can I do all that? That is, I think I have to avoid to wait for response, it be a sensor, the display or whatever, so I think I would have to have a clock and each component would check if the delay time is reached for it, each round of the program, so for instance, it could send another data to display or it could read an ADC register if a flag is now on on each one. This way I don't interrupt the frequency generator. (supposing that it become stopped while a delay instruction is working) So, if You could help me to make clear this item I'd thank you a lot.
I have not reviewed the other example you gently sent me, but from a surface sight, I think that LUT can't comply with the requirement of min step here stated, but you can correct me if I'm wrong.
I wonder if, as it is marked as solved (I don't understand what for is that costume of setting as solved this), this question will be seen and attended. I hope it be...
Thank you again
I have checked the signal of the example in my psoc 5 and an image of it is attached as Fase1 y 2. That means that I have saved some obstacles until having it working. This is not much, but it is some advance. I'm going to put more time on this project in next weeks.
I have added a currently used project as a template with 'Set As Active Project' and then 'Copy To My Templates'. Regardless when I try to open a new ...
I have added a currently used project as a template with 'Set As Active Project' and then 'Copy To My Templates'. Regardless when I try to open a new project from the template, I don't see my project on the list of templates. When I try to create a new template from the same project, P. Creator warns me the template is already saved.
I have also tried to restart P. Creator and create a new project or add a new project (while in a workspace). Either way, the template never appears. What's the solution for this issue? The picture: there should be another template on the list.
NOTE: I have tried to save another project as template and it appeared on the list straight away. Is there a rule for templates? What am I missing here?
I want to test PWM with lowpass filter as a DAC, reading samples from a lookup table (sine wave). On the scope I do not see the width changing at all....
I want to test PWM with lowpass filter as a DAC, reading samples from a lookup table (sine wave). On the scope I do not see the width changing at all. What am I missing? Does the ISR have to be in sync with the PWM's clock?
int sineTableSize = 255;
uint16_t low = 10;
uint16_t high = 5000;
CyGlobalIntEnable; /* Enable global interrupts. */
(sineTableIndex==sineTableSize) ? sineTableIndex=0 : sineTableIndex++;
/*  END OF FILE */
I am trying to update the firmware in some devices, but when ever I plug in the miniprog3 into my Computer, I get the USB not recognized error in wind...
I am trying to update the firmware in some devices, but when ever I plug in the miniprog3 into my Computer, I get the USB not recognized error in windows. If I reboot, or let it sit unplugged for a while (sometimes hours) it might work, but then will fail when I go to turn on the units power., which then tells me to disconnect the USB again to fix the issue. This causes the whole cycle to begin again.
Anyone have any advice on how to get this to work?
I've gotten everything working and I can correctly program all the PSoCs memories, but the PSoC won't boot and function normally after the final reset. However, if I power-cycle the system, the PSoC boots and behaves normally.
I know I am actually programming it, because it has a firmware version number that it sends over SPI to another MCU and this does change when I program different firmware versions. It also sends other data, which is how I know if it is working.
If I use the MiniProg 3 to program, the PSoC boots as it should. Both the MiniProg and the bitbanger use the dedicated XRES pin on the TQFP package. The difference is that the MiniProg plugs into a header routed to the combined JTAG/SWD interface, while the MCU is routed to the SWD/USB pins. These pins are only used for programming, they're not used as USB or GPIO.
I have a breakout with all the relevant signals and I've scoped these to compare my implementation with what the MiniProg does. The MiniProg actually does things a bit different from what the official app note says, but there's nothing special about the final reset. It just holds down the reset for about 20ms, the release it and the PSoC boots and starts sending SPI data.
Since I've confirmed that I correctly program all the memories, I find it really surprising that the PSoC won't just come out of reset and start working. There shouldn't be any difference between using XRES and the PSoC doing a POR.
The PSoC® 5LP, PSoC 2 and PSoC 1 Forum discusses - 24-bit Digital Filter Block (DFB), 24 UDBs, DMA controller and integrating AFE, digital logic with user interface ICs with an Arm Cortex-M3 CPU solutions.