PSoC™ 6 Forum Discussions
I created two projects for the CY8CPROTO-062-4343W kit. One was Hello Word and the other empty Dual-CPU.
Hello World worked as expected. I then changed the code for to use the PDL low level library calls Cy_SCB_UART_Init(), Cy_SCB_UART_Enable(), and Cy_SCB_UART_PutString(), and the code still worked as expected. I put the same code in the Dual-CPU.proj_cm4 and the UART doesn't work. Looking in the memory space, data goes into the FIFO but doesn't get transmitted. Looking at the memory space the correct SCB clock is selected, and the clock is enabled with the correct parameters. All generated code in .../config/GeneratedSource for both projects is identical. After stepping through the code in both projects until UART initialization completes, the UART memory space is identical. Any ideas as how to resolve this? I assume it is specific to ModusToolbox 3.0. My goal is to have the UART code operate in the CM0+ core.
Show LessHello.
I am using CY8C6136.
It is communicating with PC using usb cdc.
Up to 145 bytes are transmitted from the pc side and received from the MCU.
64 / 64 / 17 bytes are expected to be received.
But the second packet is not received and 1st/3rd packets are being received.
I wonder how to change the structure so that I can receive it without missing .
Below is my function related to receiving.
thanks.
uint8_t len;
uint8_t countReal;
uint8_t bufReal[256];
static void usb_medium_isr(void)
{
#if defined(MSG_USB)
dbg("@%s() - t:%d", FUNCTION, TICK);
#endif
uint8_t count;
uint8_t buf[256];
NVIC_ClearPendingIRQ(usb_medium_interrupt_cfg.intrSrc);
// Call interrupt processing
Cy_USBFS_Dev_Drv_Interrupt(USBFS0, \
Cy_USBFS_Dev_Drv_GetInterruptCauseMed(USBFS0), \
&usb_drvContext);
// rx data check
//// CDC_Receive_FS();
if (Cy_USB_Dev_CDC_IsDataReady(USBUART_COM_PORT, &usb_cdcContext))
{
/* Get number of bytes */
count = Cy_USB_Dev_CDC_GetAll(USBUART_COM_PORT, buf, USBUART_BUFFER_SIZE, &usb_cdcContext);
if (0u != count)
{
// start check
if((buf[0] == ':') && (buf[3] != '1'))
{
memcpy(bufReal, buf, count);
countReal = count;
len = 15;
goto FULL_RX_CHECK;
}
else if((buf[0] == ':') && (buf[3] == '1'))
{
memcpy(bufReal, buf, count);
countReal = count;
len = 145;
}
else
{
memcpy(&bufReal[countReal], buf, count);
countReal += count;
FULL_RX_CHECK:
if((countReal >= len) || ((bufReal[countReal-2] == 0x0d) && (bufReal[countReal-1] == 0x0a)))
{
modbus_handle_Receive(bufReal, countReal);
}
}
}
}
}
Hi all,
I would like to use emWin library in our product design based on PSoC 6. Currently we are developing the prototype version.
Hence, I would like to know specifically the licensing of -
- emWin Graphical Library ( I have read that it can be used on PSoC devices for free , can anybody pls confirm ?)
- AppWizard - PC tool for creating the GUI.
- Bitmap Converter and other tools.
regards,
Vinu
Show Less
Hello, all ...
If I set the RTC and do a warm boot, the RTC is correctly preserved. On cold boot, however, it's set to Jan 1, 2000. I'd like to have it set to a different date on cold boot. How do I specify the value it should be set to on cold boot only? The values in the PSoC Creator RTC generated code (project/GeneratedCode/RTC.c) don't seem to be applied. What am I missing?
Regards,
John
Show LessHello team,
How fast is the AMUXBUS switching compared to using SARMUX?
Regards,
Randhir
Hello,
I have attached a project. The problem that I am having is that all the LEDs work at the same time when I just want one LED to light at a time. Can anyone help please?
Kind regards,
Show LessDoes the disabling or freeing of the TRNG help reduce power consumption?
I wasn't able to find a value in the datasheet indicating how much power the TRNG consumes. Is there a nominal power consumption value that can be used to determine if it is better to be enabling/disabling the TRNG for each 32-bit value or if it would be better to generate multiple 32-byte values in succession without disabling the TRNG after each one.
The example, "Cryptograhpy_TRNG_Demonstration" for PSoC 63 in ModusToolbox appears to be enabling/disabling the True Random Number Generator (TRNG) for each operation.
/* Initialize the TRNG generator block*/
result = cyhal_trng_init(&trng_obj);
if (result == CY_RSLT_SUCCESS)
{
......
/* Free the TRNG generator block */
cyhal_trng_free(&trng_obj);
}
If my understanding of how the TRNG within the PSoC 6 works is incorrect, what information is available that may improve my understanding? I did find good information in both the PSoC 63 Architecture and Register TRMs. https://documentation.infineon.com/html/psoc6/zrs1651212645947.html
Also Reference: PSoC 6 TRNG Health Monitor
Greg
Show LessThank you
I am trying to upload various projects to my CYSBSYSKIT-01 dev board, yet none of my uploads seem to be successful because the UART output always shows it is running the AnyCloud Example: MQTT client.
I realized the KitProg version was out of date, so I used the fw-loader to upgrade the device to KitProg3. However I am still seeing the above output no matter what project I upload.
ModusToolbox seems to show the firmware being uploaded successfully.
Does anyone know what the problem could be? I'm wondering if I have just purchased an obsolete dev board. If that is the case can I use an older version of Modus Toolbox or an equivalent IDE?