PSoC™ 5, 3 & 1 Forum Discussions
A binary data reception interrupt program is being created using CY8CKIT - 059.
The communication conditions are 19,200 bps DataBit = 8 Parity = non stop = 1 Rx buffersizu = 100 and actual reception is about 30 characters.
The interrupt module was connected to the rx_interrupu terminal of the UART.
I created the code as follows, but sometimes the data dropout occurs.
I would appreciate it if you could give me advice on what is the cause and how I can solve it.
Below is the receive interrupt part
if ( UART_ReadRxStatus() == UART_RX_STS_FIFO_NOTEMPTY ){
bufsize = UART_GetRxBufferSize();
for(i=0;i<bufsize;i++)
{
data_cnt++;
rev_data[data_cnt]=UART_GetByte();
}
if (data_cnt==22 )whm_rev_end=1;
}
Show LessHi!
Is there a way to change the PWM compare value in PSOC-5LP using a hardware event? I mean a feature similar to PSOC-4, where compare buffer values can be swapped during a trigger event.
My concern is, what happens if the compare register is updated to a value less than the counter value? Since the PWM compare update algorithm can be running continuously in a non synchronized manner it is always possible to update the compare register to a value lower than the current counter value. How to avoid this?
Also, suppose if the compare register is updated to a value less than the counter value, what happens then?
Please help
Show LessHello.
I created a multi-application project file but I do not know how to switch applications using Bootloadable_SetActiveApplication.
Looking at Bootloadable.c Bootloadable_SetActiveApplication is not enabled, what should I do?
Show LessHello, I have attached a project where I am interfacing with an SI 7023 https://www.silabs.com/documents/public/data-sheets/Si7023-A20.pdf humidity/temperature sensor and capturing the PWM signal.
The output is for debugging purposes only.
The issue I am facing is that although I am able to accurately capture the pulse width, I am not able to capture the low time properly with my project. Instead, it seems that the low time is coming back as the period.
I have attached a PWM to the timer in order to simulate the problem. Normally, there is an external device connected to a pin.
I reset the timer after each capture, but am uncertain why I see the period rather than the low time captured.
Thank you in advance for any assistance.
Karl
Show LessHello,
I am new to the cypress. I am using cypress creator. I am successfully blink LED 3 using p6[2] pin and LED 4 using p6[3] pin on psoc 3 kit. Now i am trying to blink led 1 and led 2 but i dont get a pin configuration for that led's. There is a prototyping area near which led1 and led2 are brought out. So my question is how to blink this leds? and what is the use of prototyping area?
Show LessI have a question about how to adjust the ADC.
what should the setting be if you have to measure a
signal on an input that has a value between 3 and 4 volts.
And the required measurement accuracy must be 0.5mV.
Show LessHi
Today i connected to use char LCD (16*2 HD44780 ) with my FreeSoC,But nothing works,
I connected my
RS -pin to P5.0
R/W- P5.1
E-P5.2
D4-P5.3
D5-P5.4
D6-P5.5
D7-P5.6
and 1,3rd st pin of LCD gnd,2 nd pin 5V
but it does n't shows anything.
Pls help me to print the chracter in LCD
Show LessHi CY community,
I have a fairly large project containing multiple UARTS which I read using interrupts.
To optimize memory usage of all different kinds of buffers I use calloc. Unfortunately
I have a strange error where a calloc call seems to work fine but messes up other allocated space in memory.
I have so far not used init_mempool or anything like that - and I don't even find a function called like that (using Creator 3.3 SP1).
Any idea on dynamic memory management for PSOC 5LP, or should I revert back to static management of the buffers ?
Thanks in advance
Stefan
Show LessI am a USB device. My host is sending me a large amount of data. But I've read everything I need, so I need to tell it to stop. How?
Simply disabling the endpoint won't work, because the host will assume I'm busy and will just keep waiting for me to reenable the port. If it waits long enough, it'll time out, but that's a lousy user experience and I don't want to do that.
The USB spec talks about stalling the endpoint to indicate an error condition, but I can't find any API to do this in the Cypress code. Plus, this isn't really an error condition, just an end of file. I did try this:
USBFS_SIE_EP_BASE.sieEp[ep].epCr0 = USBFS_MODE_STALL_DATA_EP;
...but it just caused the entire USB connection to crash and burn as everything got out of sync.
What I can't do is tell the host upfront how much data to send, because I don't know (this all depends on external hardware). So what should I be doing?
Show Less