- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello forum,
I struggle with solving the build error: 'SCB_SCB_IRQ__INTC_NUMBER' undeclared.
The setting
For my implementation I need to use SPI & UART, but once in a while also the CapSense tuner GUI, but the PSoC42xx BLE does only offer two SCBs. My solution was to disable the UART SCB and enable the EZI2C SBC if needed and adopt the Code with #if/#else.
I can successfully run the UART and EZI2C in different projects with the same code (but with different parts of the #if/#else enabled), so my code should be fine.
The Problem
When I merge the two mentioned projects together (UART and EZI2C in one project on the same SCB number, one disabled) and try to build, I get the quoted error.
Can anybody help?
Solved! Go to Solution.
- Labels:
-
BLE
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Welcome in the forum, J.
It was a bit late yesterday night to answer your question. I would like to have seen your original (not working) project to help you out. To upload a complete project, use
Creator->File->Create Workspace Bundle (minimal)
and attach the resulting file.
This will help me (us) from creating our own project and being able to look at all properties and build settings you have used.
The code generation for a disabled component is switched off, so there will be no (implied) reference to such a component. The build-error must have a different source.
There is another "Trick" using SCBs for different purposes: There is an initialization API that uses a pointer to a structure telling the SCB what it should perform. Structure is a bit complex, but that way you may use an SCB-block for any purpose at any time.
Bob
Ps: Where are you located? I live near Bremen
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
OK, never mind.
I am now using the software-UART-TX component and it works fine. It seems that simply disabling components does not keep them from being taken into account in a build.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Welcome in the forum, J.
It was a bit late yesterday night to answer your question. I would like to have seen your original (not working) project to help you out. To upload a complete project, use
Creator->File->Create Workspace Bundle (minimal)
and attach the resulting file.
This will help me (us) from creating our own project and being able to look at all properties and build settings you have used.
The code generation for a disabled component is switched off, so there will be no (implied) reference to such a component. The build-error must have a different source.
There is another "Trick" using SCBs for different purposes: There is an initialization API that uses a pointer to a structure telling the SCB what it should perform. Structure is a bit complex, but that way you may use an SCB-block for any purpose at any time.
Bob
Ps: Where are you located? I live near Bremen
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello Bob,
thank you for your hint to the init-API. I will not dive into that right now, but it's good to know such powerful tools exist. And again it's a case of people (me) not reading datasheets...
So: attached to this post you find the zipped project. The error occurs when UART-SCB is activated and the #define UART_INSTEAD_OF_TUNER is set to 1.
Oh, Bremen is a nice place! I study in Munich.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
The reason for the errormessage lies within the CapSense: you enabled the tuner helper named "SCB" which doesn't exist because disabled. Remove the check at "Enable Tuner Helper"
Bob
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello Bob,
sorry for this mistake. But to my defence I have to admit I spend more than two hours with solving it myselve. Without success, but...anyway. Thanks!
Jannai
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Nothing at all to excuse for! I am working with PSoCs for several years now and there was no pitfall I left out!
When you locate the source of your error by double-clicking the errormessage you will see nearby this line
#if (CapSense_CSD_TUNER_API_GENERATE)
wich reflects the property of the component "Enable CapSense Tuner". You might use that in conjunction with (another trick:)
#ifdef CY_SCB_UART_H for your enabled UART or a similar one for your enabled SCB. You find those names at the beginning of the appropiate .h-files
Bob