PSoC™ Creator & Designer Forum Discussions
I have been experiancing a random shutdown after the spring creators update 1803 on windows 10. PSOC creator 4.2 will just shutdown with out warning. The error is pointing to ucrtbase.dll in windows/system32.
from windows event viewer:
psoc_creator.exe
0.0.0.0
5a85e2fd
ucrtbase.dll
10.0.17134.1
bb0923b6
c0000409
000a273b
3be0
01d3eea7a6186a54
C:\Program Files (x86)\Cypress\PSoC Creator\4.2\PSoC Creator\bin\psoc_creator.exe
C:\WINDOWS\System32\ucrtbase.dll
4edc6f76-bb39-4457-9d44-bde12abada02
Has anybody else seen this or know of a solution?
Show LessI am having a problem trying to import a PSoC Creator 4.0 project to Eclipse (I'm using Windows 10 x64). I've been following the tutorial provided in the help file (http://www.cypress.com/file/137441/download) but have had no luck. I am able to complete the Eclipse export from within PSoC Creator 4.0. I also have the Cpyress-provided Eclipse feature installed in Eclipse and am able to select "PSoC Creator Project" project type in the "Create new C project" window of Eclipse. I can also select the directory correct directory on the "Cross GCC Command" wizard page, which is what allows the "Finish" button to become available.
Here is where the problem happens. When I hit "Finish" I get an error that says: Project cannot be created Reason: Internal Error: java.lang.NullPointerException. (I have attached an image of the popup to this post).
So far I've tried:
- Reinstalling GNU Tools ARM Embedded
- Using the PSoC Creator ARM GCC installation instead of the GNU Tools ARM Embedded one
- Creating a new PSoC creator project from example code and exporting that new project
- Using multiple versions of Eclipse (Current Neon release, Kepler SR2, Juno SR2)
- Re-downloading/installing the PSoC Creator Eclipse Importer
- Removing any spaces from the project path
- I am able to create a normal C project in Eclipse; the problem only happens when I'm trying to create a PSoC project.
- And I'm about to try sacrificing a goat on the alter of the Cypress gods
Has anyone dealt with this before? I've not had much luck searching for the specific issue in the context of exporting from PSoC Creator. Any guidance would be greatly appreciated.
Thanks,
Matthew
Show LessHi all,I have to install a old PSoC Designer 5.0 on Windows 10. Is this possible? and how?
I tried to install it but each time I opened a project an script error appears:
Show Less
We are working on a power application based on CY8C4245AXI, when the PWM starts frequently the PSoC gets stuck in,
CY_NORETURN
CY_ISR(IntDefaultHandler).
Can any one suggest, how can we debug?
We could not see a way to read internal registers of PSoC4.. can some one pls help?
Pls feel free what information is required to understand the case.
Regards,
Nilesh
Show LessIs there a standard IDE available for professional bare metal programmers ? actually I also normally write arm assembler at the RTL level.
Frankly I have never encountered an IDE like PSOC creator/desighner and I certainly would not countanence such a tool as part of any project I am involved in.
Show LessI need to program PSOC 5 components in production. I am attempting to use a Windows 10 command shell to program the devices. Presently I have been using the following commands:
OpenPort KitProg/100E0F6202037400 "C:\Program Files (x86)\Cypress\Programmer"
HEX_ReadFile "D:/Scrap/PSOC-CLI/Stepper.hex"
SetAcquireMode "Power"
SetProtocolConnector 1
SetProtocol 8
SetProtocolClock 224
SetPowerVoltage 5.0
PowerOn
AcquireChipWithDelay 0x0FA0
Calibrate
EraseAll
Program
Verify
VerifyProtect
Protect
CheckSum 0
HEX_ReadChecksum
ClosePort
Which I place in a text file and then execute from the command line
"c:\Program Files (x86)\Cypress\Programmer\ppcli.exe" "--runfile Stepper.txt"
The results are:
OpenPort KitProg/100E0F6202037400 "C:\Program Files (x86)\Cypress\Programmer"
<
0 OK
HEX_ReadFile "D:/Scrap/PSOC-CLI/Stepper.hex"
<0x00040000
0 OK
SetAcquireMode "Power"
<
0 OK
SetProtocolConnector 1
<
0 OK
SetProtocol 8
<
1 OK
SetProtocolClock 224
<
0 OK
SetPowerVoltage 5.0
<
0 OK
PowerOn
<
0 OK
AcquireChipWithDelay 0x0FA0
E
Device is not in ISSP mode.
AcquireChipWithDelay 0x0FA0 returned 80004005
80004005 OK
Calibrate
E
Device is not in ISSP mode.
Calibrate returned 80004005
80004005 OK
EraseAll
E0x775bbf34
Device is not in ISSP mode.
EraseAll returned 80004005
80004005 OK
Program
E
Device is not in ISSP mode.
Program returned 80004005
80004005 OK
Verify
E
Device is not in ISSP mode.
Verify returned 80004005
80004005 OK
VerifyProtect
E
Device is not in ISSP mode.
VerifyProtect returned 80004005
80004005 OK
Protect
E
Device is not in ISSP mode.
Protect returned 80004005
80004005 OK
CheckSum 0
E0xffffffff
Device is not in ISSP mode.
CheckSum 0 returned 80004005
80004005 OK
HEX_ReadChecksum
<0x56f6
0 OK
ClosePort
<
0 OK
<
0 OK
I've tried replacing the "AcquireChipWithDelay 0x0FA0" with a simple Acquire and DAP_Acquire; I've tried both "Reset" and "Power" as the SetAcquireMode parameter - has not changed the results.
Side notes -
There does not seem to be any delay with the AcquireChipWithDelay, I've increased its delay to a couple seconds and it does not seem to change the time it takes to fail.
The HEX_ReadFile requires a strange format for the file name which is not in the documentation. Through experimentation I've determined that Unix "/" path delimiters work as well as "\\" as used with normal expressions but it might be worth noting in the documentation.
Show LessMy project works fine in debug mode, except when i do a mdoify on the "main" function.
Older "main" function:
int main(void)
{
BoardDriverInit();
/* Place your initialization/startup code here (e.g. MyInst_Start()) */
//asr_at_commands(0);
application_start();
for(;;)
{
/* Place your application code here. */
}
}
when in debug mode, it appears:
Newer "main" function:
int main(void)
{
BoardDriverInit();
/* Place your initialization/startup code here (e.g. MyInst_Start()) */
asr_at_commands(0);
//application_start();
for(;;)
{
/* Place your application code here. */
}
}
when in debug mode, it appears:
in summary, the total project is same except that there is a little change in "main" function, then in debug mode the behaviour is different and debug not start in main" function.
Show LessI am probably making a rather silly mistake but this scenario has got me stumped.
I have two input pins which each have an interrupt attached.
I have created logic that has one pin interrupt enabled when the other is disabled and then it swaps upon button press. A green and a red LED to indicate the different button presses. Now this works fine if each button is pressed once. However, if I press one of the buttons twice and then when I press the second button it still shows the first button sequence after this second button, as in it has in memory the 2nd press of the 1st button. Why is this?
Sequence is:
Press Button_1 once. isr_ResetBtn_Enable(); and isr_StartBtn_Disable(); LEDgreen ON then OFF
Now Press Button_2 once. Then isr_StartBtn_Enable(); and isr_ResetBtn_Disable(); LEDred ON then OFF.
Press Button_1 TWICE. isr_ResetBtn_Enable(); and isr_StartBtn_Disable(); LEDgreen ON then OFF
Now Press Button_2 once. isr_StartBtn_Enable(); and isr_ResetBtn_Disable(); LEDred ON then OFF.... then LEDgreen ON then OFF ????
How do I ignore or "clear" that second button_1 press?
Here is code snippet within main()
/* Enable the start pin interrupt */
CyGlobalIntEnable;
isr_StartBtn_Disable();
isr_ResetBtn_Disable();
/* Start the TCPWM Component */
//Timer_Start();
for(;;)
{
if (Started) {
/* Handle the Period of Play Logic */
if (StartButtonIntEnabled) {
StartButtonIntEnabled = false;
/* Turn On the Red LED */
LED_TimeOutReq_Write(LIGHT_ON);
CyDelay(500u);
LED_TimeOutReq_Write(LIGHT_OFF);
isr_StartBtn_Disable();
isr_ResetBtn_Enable();
}
}
else {
if (!StartButtonIntEnabled) {
StartButtonIntEnabled = true;
/* Turn On the Red LED */
LED_TimeOutON_Write(LIGHT_ON);
CyDelay(500u);
LED_TimeOutON_Write(LIGHT_OFF);
isr_ResetBtn_Disable();
isr_StartBtn_Enable();
}
}
}
Show LessCY_ISR(isr_StartBtnHandler)
{
/* Clear pending Interrupt */
isr_StartBtn_ClearPending();
/* Clear pin Interrupt */
Pin_Start_ClearInterrupt();
Pin_Reset_Read();
/* Set the Start flag to true */
Started = true;
}
CY_ISR(isr_ResetBtnHandler)
{
/* Clear pending Interrupt */
isr_ResetBtn_ClearPending();
/* Clear pin Interrupt */
Pin_Reset_ClearInterrupt();
Pin_Start_Read();
/* Set the Start flag to false */
Started = false;
}
Hi,
I've found that the "Find all active references" (ctrl+shift+R) of PSoC Creator only works when you select a symbol from a header file. If you (ctrl+shift+R) on a symbol that's in a C file, it will only return the results of the C file and its header. For example, if I (ctrl+shift+R) on a public function definition in a C file, the results will only return the declaration and definition of the function, even though it's used in another C file. However, if I (ctrl+shift+R) on the function definition in the header, then it works. Is this intended?
Thank you,
Fred
Show Less