PSoC™ Creator & Designer Forum Discussions
I would like to generate a pointer array in flash (ROM) initialized with the addresses of tool generated variables (G4 CapSense data from the structure) for tuning and general debugging. This way I'm able to use a loop to index the data without using the macro "CapSense_BUTTON0_SNS0_RAW0_VALUE". I've tried named areas and assigned the area to flash in the build settings for the linker.
I understand
const uint8 Variable = 0x12; // Put in flash.
needs an initializer to put it into flash. Otherwise the compiler create a RAM variable.
const uint8 Variable; // Put in RAM.
Here is a snippet of the declaration. The comments added are what I've determine by using the debugger to confirm the compiler's placement in memory. I have successfully used a struct in a named area in flash with initializers before, so I'm puzzled why the declaration and initialization does not work.
uint16 * const VariableCapSense_sensorRaw4[] = // INCORRECT array in FLASH of random? addresses.
{
&CapSense_BUTTON0_SNS0_RAW0_VALUE,
&CapSense_BUTTON1_SNS0_RAW0_VALUE,
&CapSense_BUTTON2_SNS0_RAW0_VALUE,
&CapSense_BUTTON3_SNS0_RAW0_VALUE
};
This should be the correct construction - VariableCapSense_sensorRaw4[] is an array in const memory of pointers to uint16's in RAM.
But my results placed this array at address 0 according to the debugger.
Show LessI just installed version 4.1 of Creator. Now I see a squiggly blue line under my #include statement for one of the includes and a yellow warning triangle in left margin. There is nothing in the "Warnings" window. I have been using this project for ages in creator 4.0 without this being highlighted.
Project compiles ok but annoying having a warning showing without understanding what it means
Show LessI have been reading the application note AN56377. On page 46 it starts out an USB communications example. I built the design in Creator and updated the code in main.c . Basically the code does not build because its looking for an include file that it can't file (device.h). My assumption is that there is a problem with the build environment. SO it can't find the file. The messeges that I get are:
1. prj.M0121: can't open file 'device.h' main.c line 1 Project 1 USB...
2. prj.M0121: can't open file 'device.h' main.c line 2 Project 1 USB...
3. prj.M0120:Build error: missing ';' before 'USBFS_deviceAnddress' main.c line 17 Project 1 USB...
The file main.c is attached.
Any ideas about what is going on ?
Show LessCurious, I go to the element14 website, look at DVK link, and
Cypress trademark not shown amongst the other 9 vendors.
In fact in search for a manufacturer, Cypress not listed. Only
when I pick core can I find PSOC ? Or is it just me and my
poor internet skills ?
And of course its not obvious where to go for the 100 projects
in 100 days. If you look at "element14 Development Kits" again
Cypress not listed.
Just a thought.
Regards, Dana.
Show LessDear All
For use a LUT, i found a free and efficient utility, with that it's possible design a FINITE STATE MACHINE, simulate and create the LUT table for PSOC3/5 family-The link is
www.esng.dibe.unige.it/Deeds/
After desin the FSM, go in simulation and press the left icon, for the lut table
best regards
Show LessMade a mistake of updating to PSoc Creator 4.0. Now the debug does not show the variable value, just the address. Tried to go back to Creator 3.3 but it's not compatible. Are you guys aware of this problem? When will it be fixed? How can I go back to 3.3?
Show LessI have been looking at adding a 9-clock-cycles to an I2C application and since the component does not provide a function to reset a hung SDA, I was wondering if I could insert it in the I2C_Init function of the component. It seems to me that the use of a callback would be perfect, but looking into how they work I ran into the following thoughts/questions:
- If I understand it correctly, the component generated code has to have defined hooking points. If that is the case, the callback functionality has limited value because components barely have any hooking points.
- If I develop a new component containing hooking points in the generated source, would just the existence of the hooking point(s) and the proper user request entry in cyapicallbacks.h, result in executing the callback ? Or does the developer need to do some additional work
- Again, if I was to develop a new component X that uses an existing component Y that accepts a given callback, and I needed to use the callback, then it seems there is no way to perform the callback hook definition within the confine of the component X context. The component X user will need to know the need to set in cyapicallbacks.h, which does not seem that desirable to me. It would be nice if there was some kind of a definition mechanism to hook the callback in Y (other than typing in cyapicallbacks.h)
- Is it fair to assume the use of Merge Region has some similar peculiarities?
May be I am a bit (or a lot) confused in my understanding...
Tony
Show Less
Dear Cypress Technical Support Services ,
I am writing in regards the programming of the the keil ulink pro and i was getting some errors which is as follows:-
*** Using Compiler 'V5.06 update 1 (build 61)', folder: 'C:\Keil_v5\ARM\ARMCC\Bin'
Build target 'Target 1'
".\Objects\Example_42_88.axf" - 0 Error(s), 0 Warning(s).
Build Time Elapsed: 00:00:00
Load "E:\\Microvision_projects\\Objects\\Example_42_88.axf"
No Algorithm found for: 00000000H - 0000114BH
Erase skipped!
Error: Flash Download failed - "Cortex-M4"
Flash Load finished at 18:29:19
I think the cortex M4 Device selection requires some configuration for the SPIFI Flash programming algorithm and requires the configuration using the Settings.
May be I require S25FL256SAGMFI0001 Flash Algorithm drivers which is not found in the Keil MDK.
I am using LPC4370FET256 microcontroller interfaced with the external flash memory SPIFI flash memory S25FL256SAGMFI0001 and will you please help in this regards.
The file should be in LPC18xx43xx_S25FL256.FLM file itseems.
Regards
Sujay
OK, here's my conundrum....
Been working on a design for a year, been through lots of iterations. I wanna start with a clean slate, preserving the pinout and most of the instantiated components. Does anyone have a suggestion short of manually re-entering the pinout and copy-paste between the projects?
Any help is much appreciated!
Thanks!
Scott
Show Less