PSoC™ 4 Forum Discussions
Hi,
What is the PSOC MIPS performance? How many instructions are executed per clock cicle? Is the clock cicle the same as machine cycle?
Best Regards
Show Less1. Preference
- Windows10
- PSoc Creator 4.1 ~ 4.2
- MCU : CY8C4247LQI-BL473, CY8C4248LQI-BL583 (CY8CKit-042-BLE-A Pioneer board)
( Selected correctly in Device Selector depending on MCU at PSoc Creator)
- Example Source : BLE_FindMe (PSoc Example source)
- bluetooth Android APP : CySmart
2. Problem : "CY8C4247LQI-BL473" board Bluetooth not working ( I make pcb board for PSoc4 MCU -> CY8C4247LQI-BL473 assembled )
- "CY8C4248LQI-BL583" bluetooth working good (CY8CKit-143A Board)
3. PCB Bluetooth antenna test : Bluetooth antenna works well
4. Schematic
5. "CY8C4247LQI-BL473" board's function working well except bluetooth (IO, Timer, UART, Input Interrupt )
--------------------------------------------------------------------------------------
thanks
Show LessI have created a working ILI9341 driver for my PSoC 4 BLE Pioneer board which is based on the Adafruit GFX/ILI9341 Arduino libraries and other code I found on the community forum.
It works well enough but, in my opinion, the refresh rate is a little slow especially with fill screen and drawing bitmap graphics compared to other boards I've seen.
One trick I noticed in some of the Arduino based libraries, especially for the Teensie boards, is the use of DMA to speed things up. I've never used DMA so as it is an option here, I was wondering if this would help and if so how to do it.
I've created a rather basic video to try and illustrate update speed:
I have also attached the code.
Any tips on optimising greatly appreciated.
One optimisation question that has me perplexed is why does increasing the rx/tx (8-bit words) buffer size slow things down dramatically, for example - see toplevel design & spi component block. I have these set at the min, which is 4.
Show LessHi
Recently I asked cypress customer care via its email to know that if Cypress supports new innovations to launch an startup. The following is my mail:
" I’m Alireza Alikhani and I’m a designer and an electronic engineer. In the coming days, I’m going to showcase two of my designs/inventions which are all based on Cypress technologies (PSOC4BLE and CAPSENSE).
I’m confident with my designs and ideas which I believe can launch a successful startup. I want to know that if there exist any program supported by Cypress to qualify and support selected designs and help them to introduce themselves? I’m really eager to work with Cypress because they provided me a solid platform and design suits which helped me a lot to implement my ideas nicely. "
But they referred me to post a new topic which i think was just an automatic answer. Anyway, I wanted to know if Cypress backs us and help us to showcase our innovations.
Bests
Show Lesswe are using PSoC4100s, setup WCO as timer0's clock source, measure the frequency of timer0 and found it not in WCO's 32768 frequency.
our configuration as the follows.
codes like the follows:
void timer0_isr(void)
{
set_a_Write(1);
set_a_Write(0);
CySysTimerClearInterrupt(0);
CySysTimerSetMatch(0, CySysTimerGetCount(0) + 100);
}
void timer0_init(void)
{
CySysClkSetTimerSource(CY_SYS_CLK_TIMER_SRC_WCO);
CySysTimerDisable(CY_SYS_TIMER0_MASK);
CySysTimerResetCounters(CY_SYS_TIMER0_RESET);
CySysTimerSetInterruptCallback(0, timer0_isr);
CySysTimerSetMode(0, CY_SYS_TIMER_MODE_INT);
CySysTimerSetClearOnMatch(0, 1);
CySysTimerSetMatch(0, CySysTimerGetCount(0) + 100);//100 ticks
CySysTimerEnableIsr(0);
CySysTimerEnable(CY_SYS_TIMER0_MASK);
set_a_SetDriveMode(set_a_DM_STRONG);
set_a_Write(0);
}
we want pull up set_a pin in every 100 ticks, but the frequency is not from WCO's 32768 but seems from the ILO.
Show LessHello all-
I have technial question regarding Cypress semiconductors. That I hope I can get some clarity on.
I was given a custom made device supporting Bluetooth 4 standard BLE. The device has the Cypress BLE semiconductor built in and we are have a Cypress USB dongle for accessing and connecting to it, this one:
http://www.cypress.com/documentation/development-kitsboards/cy5670-cysmart-usb-dongle
The connection and communcation is setup up with Bluetooth 4.0.
The device is programmed in central mode and the dongle is configured in peripheral mode. The connection between the processor and BLE module is a universal "pass-through" type of link (RS232).
I have been asked to build a mobile application (Android & iOS) that can be programmed as a peripheral to replicate the actions of the dongle. My question is what are some of the minimal requirements needed to pass with my peripheral advertisments? And how will the connection will be made. I have an app developed and advertising but I am not sure what advertising data needs to be discovered by the device for the semiconductor.
I have some screenshots of the Profile and GAP settings that the USB dongle was programmed in. I also have PSOC programmer and CySmart installed along with the actual dongle. I am trying to replicate the same settings within my mobile application but I cannot tell if the device is discovering it. Here is a look at the data I passing for Advertisement:
{
service: "CDD0",
name: "BLE_Serial",
characteristics: [
{
uuid: "CDD1",
permissions: {
read: true,
write: true,
//readEncryptionRequired: true,
//writeEncryptionRequired: true,
},
properties : {
read: true,
writeWithoutResponse: true,
write: true,
notify: true,
//indicate: true,
//authenticatedSignedWrites: true,
//notifyEncryptionRequired: true,
//indicateEncryptionRequired: true,
}
},
{
uuid: "CDD2",
permissions: {
read: true,
write: true,
//readEncryptionRequired: true,
//writeEncryptionRequired: true,
},
properties : {
read: true,
writeWithoutResponse: true,
write: true,
notify: true,
//indicate: true,
//authenticatedSignedWrites: true,
//notifyEncryptionRequired: true,
//indicateEncryptionRequired: true,
}
}
]
}
Overall, is this effort actually feasible or is there limitations with the semiconductor that would prevent this from working? And have anything similar to this been done before? Any information anyone can provide would be greatly appreciated. I feel this is possible but I also dont want to keep spinning my wheels.
Thanks all in advance.
Ron
Show LessI have a project that's based on the Upgradable Stack Example. Everything is working fine and dandy, but now I need to write project data (password hashes, configuration data, etc) in the flash that would be outside the OTAble range and would be retained in FW update.
How can I modify the areas of the bootloader images? There seems to be some kind of project data section in the example (page 4 of the example doc pdf), but I cannot find any references to it in the example project or in the linker script.
Show LessHi,
I am trying to read a value form a barcode scan using UART and the RX pin on the CY8CKIT-042-BLE (PSoC 4 BLE). The following is my code (modified from the HID Keyboard Example, as the goal is to send the value of the scan to a device, emulating a keyboard). I am unable to get any results from the scan to output on a PuTTY terminal. Any ideas on what I am doing wrong?
int main()
{
uint32 rxData;
CyGlobalIntEnable;
#if (DEBUG_UART_ENABLED == ENABLED)
UART_DEB_Start();
#endif /* (DEBUG_UART_ENABLED == ENABLED) */
DBG_PRINTF("BLE HID Keyboard Example Project \r\n");
Disconnect_LED_Write(LED_OFF);
Advertising_LED_Write(LED_OFF);
CapsLock_LED_Write(LED_OFF);
/* Start CYBLE component and register generic event handler */
CyBle_Start(AppCallBack);
WDT_Start();
#if (BAS_MEASURE_ENABLE != 0)
ADC_Start();
#endif /* BAS_MEASURE_ENABLE != 0 */
while(1)
{
/* CyBle_ProcessEvents() allows BLE stack to process pending events */
CyBle_ProcessEvents();
/* To achieve low power in the device */
LowPowerImplementation();
rxData = UART_DEB_UartGetChar();
if(rxData)
{
UART_DEB_UartPutChar(rxData);
}
.......
Thanks in advance,
Ryan
Show LessHello everyone,
I'm encountering some problems with the capacitance trimming in my PCBs with ProC4 BLE component.
I've read the AppNote AN95089 and found a code snippet to modify the capacitance trim values, but how can I integrate it into my code?
After the calling of the "CyClockStartupError" function, how can I iteratively setup the capacitance value to achieve the best tuning?
Thank you in advice!
Andrea
Show Less