Cypress Perform

Home > Design Support > Cypress Developer CommunityTM > Cypress Forums > PSoC® Software > Problem using PSoC Sensei Parallel FIFO in PSoC Creator 2.2

Bookmark and Share
Cypress Developer CommunityTM
Forums | Videos | Blogs | Training | Rewards Program | Community Components



Problem using PSoC Sensei Parallel FIFO in PSoC Creator 2.2
Moderator:
JFMD

Post Reply
Follow this topic



Problem using PSoC Sensei Parallel FIFO in PSoC Creator 2.2

robospace posted on 08 May 2013 7:41 PM PST
Member
3 Forum Posts

I have a design in PSoC Creator 2.1 which works on a PSoC 5. I recently moved over to a PSoC5LP, which mean I must move my design over to PSoC Creator 2.2. I updated all the components and all of them compiles fine except the PSoC Sensei Parallel FIFO. I deleted it and recreated it with the default name so that all its source code is cleaned and recompiled but still no luck. The error message is:

.\Generated_Source\PSoC5\FIFOIn_1.c:60: error: 'FIFOIn_1_AsyncCtl_ControlReg__CONTROL_REG' undeclared (first use in this function)

In the h file it is used as a define:

#define FIFOIn_1_CONTROL_REG      (* (reg8 *) FIFOIn_1_AsyncCtl_ControlReg__CONTROL_REG)

 




Re: Problem using PSoC Sensei Parallel FIFO in PSoC Creator 2.2

danaaknight posted on 09 May 2013 04:04 AM PST
Top Contributor
1773 Forum Posts

The FIFOIn_1.c file has a #include FIFOIn_1.h in it ?

 

Regards, Dana.



Re: Problem using PSoC Sensei Parallel FIFO in PSoC Creator 2.2

robospace posted on 09 May 2013 05:05 PM PST
Member
3 Forum Posts

FIFOIn_1.h is included in the c file. This all works in PSoC Creator 2.1. It looks like the compiler cannot resolve 

 FIFOIn_1_AsyncCtl_ControlReg__CONTROL_REG. 



Re: Problem using PSoC Sensei Parallel FIFO in PSoC Creator 2.2

robospace posted on 13 May 2013 04:27 PM PST
Member
3 Forum Posts
I fixed the problem but not in the right way. In the FIFOIn_v1_0 component, inside FIFOIn.h all the defines are built using the instance name as part of the define. The control register define adds another name called $CtlModeReplacementString which gets replaced by "Async". The component define looks like this: #define `$INSTANCE_NAME`_CONTROL_REG (* (reg8 *) `$INSTANCE_NAME`_`$CtlModeReplacementString`_ControlReg__CONTROL_REG) which looks like this after compilation: #define FIFOforDMA_CONTROL_REG (* (reg8 *) FIFOforDMA_AsyncCtl_ControlReg__CONTROL_REG) In PSoC Creator 2.1, after the design was synthesized, in fitter.h there is a match for FIFOforDMA_AsyncCtl_ControlReg__CONTROL_REG. In PSoC Creator 2.2 Async was replace by Sync, so the definition if for: FIFOforDMA_SyncCtl_ControlReg__CONTROL_REG And that is why it does not compile I fixed the problem by changing the define in the FIFO component header file to: #define `$INSTANCE_NAME`_CONTROL_REG (* (reg8 *) `$INSTANCE_NAME`_SyncCtl_ControlReg__CONTROL_REG) This fixes the problem for PSoC Creator 2.2 but if anything changes again it will be broken again. It looks like PSoC Creator 2.2 does not assign the correct value to $CtlModeReplacementString




ALL CONTENT AND MATERIALS ON THIS SITE ARE PROVIDED "AS IS". CYPRESS SEMICONDUCTOR AND ITS RESPECTIVE SUPPLIERS MAKE NO REPRESENTATIONS ABOUT THE SUITABILITY OF THESE MATERIALS FOR ANY PURPOSE AND DISCLAIM ALL WARRANTIES AND CONDITIONS WITH REGARD TO THESE MATERIALS, INCLUDING BUT NOT LIMITED TO, ALL IMPLIED WARRANTIES AND CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT OF ANY THIRD PARTY INTELLECTUAL PROPERTY RIGHT. NO LICENSE, EITHER EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, IS GRANTED BY CYPRESS SEMICONDUCTOR. USE OF THE INFORMATION ON THIS SITE MAY REQUIRE A LICENSE FROM A THIRD PARTY, OR A LICENSE FROM CYPRESS SEMICONDUCTOR.

Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Terms and Conditions of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms and Conditions of this site. Cypress Semiconductor and its suppliers reserve the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.

Spec No: None; Sunset Owner: GRAA; Secondary Owner: RAIK; Sunset Date: 01/01/20