PSoC™ 5, 3 & 1 Forum Discussions
text.format{('custom.tabs.no.results')}
I have an existing application, that I try to adapt to PSoc enviroment.
from the first image, I connect to a server (via other connected device), download a bin file from it, write it to the other flash partition, chang a parmeter in the boatloader memory, so that next reboot will result in running from the newly burned image - in the second partition.
how do I create such 2 images in PSoc enviroment, and configure bootloader to run from the first or second partition?
Show LessHello friends, good morning!
I am looking to make the calls with my two PSoC 5LP cards using a 16x2 LCD display to be able to transmit and receive CAN bus messages as described in their application notes: EEOL_2009OCT09_INTD_AN_01 (AN52701) and 001-52701_AN52701_PSoC_3_and_PSoC_5LP_Getting_trans_Stand_Control.
How to connect my 2 16x2 LCD displays (pinout 1 to 14) and correctly configure my two PSoC 5LP (transmitter and receiver) to view the identical messages as they are in your application notes mentioned above? I will be using the same scheme as the second page of the application note: AN52701 according to the photo sent where I will use two TJA1050 transceivers together with my two PSoC 5LP as seen in another attached photo.
I would like some help to be able to develop my work.
I'm waiting for your answer.
Grateful for the attention!
Show LessWe currently have a product that uses the PSoC3 to measure 8 RTDs (or TC or mV). We use Correlated Double Sampling at 2x the line frequency to try to reduce line frequency noise. We have some customers who have experienced too much noise due to the harsh environment so I was thinking that maybe we could improve our product by using the DFB with a notch filter. The DFB has 2 channels so on the surface it would seem impossible, but I read an EDN article by Kendall Castor-Perry who used to work for Cypress that specifically talked about doing this, but gave no details.
How would we run 8 channels through the DFB in real-time?
Mike.
Show LessHi,
Getting the following error when compiling CY8CKIT-030 example2 - Power Supervision failed to compile under PSOC Creator 4.3.
Compiling under PSOC Creator 3.3 work with no issue.
Any help is appreciated for getting this compiled under 4.3.
The compile output is given below.
--------------- Rebuild Started: 05/13/2020 21:28:19 Project: Example2 - Power Supervision, Configuration: DP8051 Keil 9.51 Debug ---------------
Deleting file ".\Example2 - Power Supervision.rpt"
cydsfit.exe -.appdatapath "C:\Users\shahram.amini\AppData\Local\Cypress Semiconductor\PSoC Creator\4.3" -.fdsnotice -.fdswarpdepfile=warp_dependencies.txt -.fdselabdepfile=elab_dependencies.txt -.fdsbldfile=generated_files.txt -.fdsreffile=referenced_files.txt -p "C:\Reposits\localOdin\localCCB\CY8CKIT-030_Examples\Example2 - Power Supervision.cydsn\Example2 - Power Supervision.cyprj" -d CY8C3866AXI-040 -s "C:\Reposits\localOdin\localCCB\CY8CKIT-030_Examples\Example2 - Power Supervision.cydsn\Generated_Source\PSoC3" -- -yv2 -q10 -ygs -o2 -v5 -.fftcfgtype=BE
Elaborating Design...
ADD: sdb.M0065: information: Analog terminal "OVUVFaultDetector.uv_cal" on Schematic_035 is unconnected.
* C:\Reposits\localOdin\localCCB\CY8CKIT-030_Examples\Example2 - Power Supervision.cydsn\Schematic_035\Schematic_035.cysch (Signal: Net_18790)
* C:\Reposits\localOdin\localCCB\CY8CKIT-030_Examples\Example2 - Power Supervision.cydsn\Schematic_035\Schematic_035.cysch (Shape_7074.146)
ADD: sdb.M0065: information: Analog terminal "OVUVFaultDetector.ov_cal" on Schematic_035 is unconnected.
* C:\Reposits\localOdin\localCCB\CY8CKIT-030_Examples\Example2 - Power Supervision.cydsn\Schematic_035\Schematic_035.cysch (Signal: Net_18789)
* C:\Reposits\localOdin\localCCB\CY8CKIT-030_Examples\Example2 - Power Supervision.cydsn\Schematic_035\Schematic_035.cysch (Shape_7074.144)
HDL Generation...
Synthesis...
Error: pft.M0017: Unable to open control file "Example2 - Power Supervision.ctl": (Syntax error). (App=cydsfit)
Error: pft.M0000: An internal error occurred in the fitter: (Syntax error). (App=cydsfit)
Dependency Generation...
Cleanup...
Error: fit.M0050: The fitter aborted due to errors, please address all errors and rebuild. (App=cydsfit)
--------------- Rebuild Failed: 05/13/2020 21:28:30 ---------------
Show LessHi all,
I am using CY8Ckit-059 and reading data from sd card using Emfile. I want to implement in a faster way. As I am using sclk 12MHz. greater than 12MHz it is not able to read from sd card. I am reading 1 byte in each iteration and according to data I am driving the GPIO. but as it seems it is taking so much time to read ~2Mb file size like this.
As I browse through this community I got to know using DMA with Emfile can work Much faster way. can anybody help me how to do DMA things with EMfile and is there any example to Implement DMA with Emfile? Is there any way I can Implement this thing in a very faster way?
Here is my code thing That I want to implement in a faster way.
- while(FS_FEof(File)!=1 )
- {
- FS_Read(File,buffer, 1);
- if (buffer[0] == 'a')
- {
- pin1_Write(1u);
- }
- }
Hi,
So, I'm trying to get the USBUART on a CY8CKIT-059 to act as a virtual COM port and I have everything working except being able to use printf().
I've read through other forum posts on the subject that recommend "modifying _write" function, but I'm not sure how to do that. I think maybe the example was for a true UART or something because it didn't make much sense to me; like I'm missing some other declaration or header in the beginning to tie it all together. I've been referring to:
http://www.cypress.com/forum/psoc-5-device-programming/how-do-i-do-printf-function-psoc5
I have attached my whole test code, but below is the beginning:
#include <device.h>
#include "stdio.h"
#if (CY_PSOC5LP)
/* For GCC compiler revise _write() function */
int _write(int file, char *ptr, int len)
{
int i;
for (i = 0; i < len; i++)
{
USBUART_1_PutChar(*ptr++);
}
return(len);
}
#endif /* CY_PSOC5 */
On page 1745 of the psoc 5lp registers TRM_001-82120.pdf, it is described that
it is possible to get a DSI clock as the clock source for the systick. bit 2,
CM3_SYSTICK_SRCSEL when set to "1" should use the signal connected to
"dsi_01_out_p_13".
and a similar idea for the NMI source selection.
my question is: how do i get a signal of my choice onto that signal name??
i have read many community threads, documents and AN's, and tried various things
in Creator and the output files to find this "dsi_01_out_p_13"
signal, and have found nothing.
Show LessHi,
I have some issues using P12[4] and P12[5] in a custom board with CY8C5888AXI-LP096. When the pin P12[4] is used as digital o/p, there is a plm.m0038 warning, but I am not using I2C[0], so how can I disable the warning?
An LED connected to P12[5] (pin5) is also not working when the P12[4] is connected with an internal signal, but the LED is working fine if I assigned the signal to some other pins instead of P12[4]. Is this because of I2C[0 module with the pin-out in P12[4] and P12[5], if yes how can I disable this module and its outputs?
Show LessHow do I make a CAN basic mailbox that does not acknowledge messages? I want to set it up so that a few message IDs are acknowledged and the rest are still processed, but silently. I thought I could do this by setting up full mailboxes for the few IDs I'm supposed to be acking and one basic one to process the rest.
So far I've set up a CAN component with a basic mailbox and a ReceiveMsg_Callback() that does not call CAN_RX_ACK_MESSAGE. I don't see any APIs for explicitly not acking. After doing this, an oscilloscope shows that the tx pin is still going low during the ack window for every frame. I'd expect it to do nothing.
Show LessHello! I was hoping someone with more insight than myself might be able to point me in the right direction.
I am using a PSOC LP5 (CY8C5888LTI-LP097 on the CY8CKIT-059). I used the UART_FULL_DuplexExample project as a base which enables printf by rewriting the _write function. All this works as expected. However, when I needed to print floats to the screen I had to up the heap size from 0x300 to 0x400 which makes sense to me.
Here is the real confusing part for me. I made the following function for some debugging. There is an interrupt that decrements the timer variable every 1ms. It should print /hi every 100 ms.
//Initialize display delay to zero
g_Timer_Display_Delay_ms = 0;
for(;;)
{
if(g_Timer_Display_Delay_ms == 0)
{
g_Timer_Display_Delay_ms = 100u; //Reset timer
Pin_Debug_Write(!Pin_Debug_Read()); //Toggle pin for testing
//Print values
UART_PutString("/");
printf("hi");
}
}
If I periodically increase the heap size :
- 0x400 Pass
- 0x500 Pass
I get the expected output:
/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi
/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/hi/
But when I increase the heap size further:
- 0x600 FAIL
At 0x600 I get the following output:
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////////////////hihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihi
hihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihi
hihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihi
hihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihi
hihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihi
hihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihi
hihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihihi
hihihihihihihihihihihihi///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
I have the debug IO on a scope and it is toggled at a constant at 100ms so the printf function is not blocking. It seems to buffer a whole bunch of characters and then spits it out 51.3 seconds later! The compiler has no warning about the heap size allocation. I expect I am exceeding some memory limit and stepping on some control register or buffer somewhere?
Show Less