PSoC™ 6 Forum Discussions
Hello
The online PDL of the PSoC63 shows "USBFS (USB Full-Speed Device)". (https://infineon.github.io/psoc6pdl/pdl_api_reference_manual/html/group__group__usbfs__dev__drv.html)
How can I include the USB in PSoC Creator ? Such block does not exist.
Thanks
I'm running the `Cryptography_AES_Demonstration" in ModusToolbox in Eclipse for a CY8CPROTO-062-4343W) board.
How to debug the actual crypto registers - AES chip block - though? In debug mode the Peripherals view can be opened, but it doesn't list the CRYPTO block.
Show LessI own a CY8CKIT-062-BLE.
I found a document that says to contact Cypress Semiconductor if you own a board other than revision *C or *D.
Where can I find the revision of the board?
Also, where do I contact if it is an older board?
Hi
I am building a system of 2 PSoC, the first one (Central) sends 1-byte code to the second ( peripheral).
I can successfully send commands from the android Cypress app to the Peripheral.
But I am failing to send it properly from the Central.
I rea through many examples, but couldn't find a match to my case.
the Peripheral has 1 service and 1 characteristic:
I configured the same at the Central:
At Peripheral:
I am using this code to read the new value from BLE, it works from Cypress Phone App:
switch (event)
{
...
...
case CY_BLE_EVT_GATTS_WRITE_REQ:
writeReqParameter = (cy_stc_ble_gatts_write_cmd_req_param_t *)eventParameter;
if(CY_BLE_SIGNAL_TT_CHAR_HANDLE== writeReqParameter->handleValPair.attrHandle)
{
uint8_t val = writeReqParameter->handleValPair.value.val[0];
switch(val)
{
case 0:
LED_Green_on;
LED_Red_off;
break;
...
...}
At the Central side: I call this function directly to send BLE command to peripheral, when a new command is ready: (i suspect i am doing something wrong here):
void send_command_to_ble(uint8_t command)
{
if(Cy_BLE_GetConnectionState(cy_ble_connHandle[0]) != CY_BLE_CONN_STATE_CLIENT_DISCOVERED)
{
UART_PutString("Connection Status Error, Client Not Discovered\n");
return;
}
cy_stc_ble_gattc_write_req_t ble_message_to_send;
ble_message_to_send.handleValPair.attrHandle = cy_ble_customCServ [CY_BLE_CUSTOMC_SIGNAL_SERVICE_INDEX].customServChar[CY_BLE_CUSTOMC_SIGNAL_SERVICE_INDEX].customServCharHandle[0];
ble_message_to_send.handleValPair.value.val = &command;
ble_message_to_send.handleValPair.value.len = 1;
ble_message_to_send.connHandle = cy_ble_connHandle[0];
if(Cy_BLE_GATTC_WriteCharacteristicValue( &ble_message_to_send ) != CY_BLE_SUCCESS) UART_PutString("BLE GATTC write error\n\r");
}
and i get the error message "BLE GATTC write error".
what am i doing wrong here ?
thanks
Show Less大家好,
我使用CY8CKIT-062-BLE开发板,在调试Dual-CPU_Empty_PSoC6_App时遇到一个问题。
我试图在CM0中读写flash,CM4中也读写同一个地址。CM4中的操作是OK的,CM0中写擦除的时候会报BUSY的错误。我的代码如下,看起来CM0也没有被sleep,不知道为什么busy了,烦请帮忙看看,谢谢!
debug_cm0函数里面进行的擦除和写操作,详情见附件c文件。
Show Less
使用cy8c6347系列,在debug下使用Cy_SysLib_Delay()貌似延时正常,但是在release下使用Cy_SysLib_Delay()延时产生了混乱,甚至有一些没有形成延时的情况,请问Cy_SysLib_Delay()在延时中具体做了什么事情,为什么会产生延时混乱
Hi
1. When is "cy_stc_ble_gapc_adv_report_param_t" issued and when is "cy_stc_ble_gapp_scan_rsp_data_t" ?
2. I have 2, PSOc6's , the first is a peripheral and the second is a central. I can read the peripheral name correctly, but the UUID is corrupt:
thanks
Show Less
Hi
In PSoC63, What is the benefit of splitting the BLE stack among CM0 and CM4?
What is the best practice (or architecture) when designing a system with multiple sensors and BLE link?
thanks
Show LessHi Everybody,
I try to find out, how to calibrate the RTC in PSoC6 devices. From the Registers Reference Manual a got that I can set the CALIB_VAL in the BACKUP_CAL_CTL register to adjust for the error. In my Sytem I have a TCXO source when the system is running which I can use as a calibration reference. Now, i dont find any information on how i can compare both frequencies the best way. Easiest would be using two timers, each clocked with both sources and hardware syncronised in start and capture. Unfortunately I do not know a possibility to get the LFCLK into the digital domain to be used with the timers.
Somehow the Reference Manual says something about a 512Hz Signal output that can be CAL_OUT bit in the register, but I did not find any information on which pin or internal instance that signal is put out.
Can anybody help me with this?
best regards,
Christian
Show LessHello everyone! (Read the edit at the final)
I'm working with the low-power modes, and in the documentation from Infineon, the only one I found, link: https://infineon.github.io/psoc6pdl/pdl_api_reference_manual/html/group__group__syspm__functions__power.html
It explains the functions, but there are not many examples of them, or at least I couldn't find them.
As the title expresses I want to go out from a ULP mode, because I was testing a code and in this code, after entering this mode, it keeps popping up the message that is supposed to be shown only when the core is in ULP, a thing shouldn't be because technically the function Cy_SysPm_CpuSendWakeupEvent(); is taking it out of that mode. Or maybe I'm wrong, it only wakes up for a moment and comes back to ULP mode. So, in that case, please let me know how can I access the active mode again with a simple function like the ones there are to enter these power modes (in the link I provided).
I'll put part of my code as the complete one is longer, but the thing is that when my variable reaches more than 100, enters the ULP, and it only goes to the second condition, meaning it never went out definitely from the ULP and enters the active mode just for a while with the WakeupEvent function (the IsActive functions I know are redundant but I wanted to make sure it was the reason of my failed attempt to go out of the ULP mode but it is not the reason, with or without those commented conditions it doesn't go back to active mode definitely, it prints me my 2 messages in the 2nd if):
if((int)variable > 100 && !Cy_SysPm_IsSystemUlp() /*&& Cy_SysPm_Cm4IsActive()*/)
{
Uart_Printf_PutString("\n\rTransition to Ultra Low Power Mode...\n");
Cy_SysPm_SystemEnterUlp();
CyDelay(10);
}
if(Cy_SysPm_IsSystemUlp() /*&& !Cy_SysPm_Cm4IsActive()*/)
{
Uart_Printf_PutString("\n\rTransition out from ULP Mode...\n");
CyDelay(1000);
Cy_SysPm_CpuSendWakeupEvent();
if(Cy_SysPm_Cm4IsActive())
Uart_Printf_PutString("\n\rShould be Active now\n");
CyDelay(1000);
}
CyDelay(100);
}
Could you please help me? Thanks in advance.
Edit: Guys I found out that the Low Power mode is an Active mode, as well as the ULP, because in the Cy_Hal documentation the normal mode appears as LP and the LowPower as ULP, and also in a state diagram it shows that is the system in the mode but the CPU is active or sleeping. This might be the reason why I cannot go out from ULP, so I just go to LP to come back to Active mode? thanks in advance! 😉
Gio
Show Less