Compiler Errors

This is in reference to a BL4S200 SBC.
I am seeing a complier message that states warnings about “_DC_CLK_DBL not defined” and “define _DC_CLK_DBL to 0” Also have “error No ID Block Found on Target Board”

The application that is being programmed has been loaded in the past without issue.
This controller was unknowing hooked to a timer that cycled power supplying the board every day for the past month and now we see this issue. Could the RCM be faulted due to the power being cycled?
I can provide a screen shot of the error messages if needed.

Thank you,
Dave

The IDblock is missing. There is a sample that will re-write the IDblock at the following link under Documentation -> General documentation

http://ftp1.digi.com/support/documentation/WriteIdBlock_1070.zip

1 Like

Margaret,
Thank you for your timely reply yesterday. I have been working on this since yesterday without success. When I attempt to run the file “write_idblock_rcm4310xx.c”. I get a single compiler error that states “No ID block found on target board”. I copied the appropriate set of macro=value lines into the Projects Options’ Define tab. I have cycled the power to the SBC several times, no success. I’m not sure what else to try at this point.
Dave

Hi Dave,

With the BL4S200, even if you can write a new ID block, you will probably not have any calibration settings for the analog inputs unless you have previously saved them. You may need to use the recalibration programs in the samples\blxs2xx\adc folder to redo the calibration.

Regards,
Peter

Hello Peter,

Thanks for your response, I’m not able to program the ADC calibration because the compiler states the RCM has no ID block. When I perform Margaret’s suggestion of re-programming the ID block, I see the same complier error.
Due to the loss of the ID block, the RCM won’t accept any programming.
Dave

Hi Dave,

Have you made sure you have the correct board type selected in the Board Selection tab in the project options?
Turning off the Enable Processor Verification in the Communications tab might help too.

Peter,

Thank you for the suggestion, I will give it a try today.
Dave

Peter,

No luck, not sure what’s going on. To recap what I have tried:
Verify correct module - RCM4310 on a BL4S200
turned off enable processor verification
Added the proper list of macros to the defines tab in compiler
options - which includes the board type
The error is generated from line 27 of the lib\RABBIT4000\BOARDTYPES.lib
The comment above this line states that “without a known board type it is impossible to proceed with compilation”
Perhaps this one is bricked and I need a replacement…
Dave

Hi Dave,

Try adding a BOARD_TYPE definition to the project options Defines tab i.e. _BOARD_TYPE=0x2A01 and see if that gets you past the error

Hello Peter,
Well that fixed that error, now there are over 10 more errors that are associated with "write_IDBLOCK_RCM43XX.c some of these are:
‘WRITEIDBLOCK.LIB’ cannot be found.
‘WRITEIDBLOCK_RCM43XX.LIB’ cannot be found
'wib_sysIdBlockData is out of scope/not declared

There are also several warnings some of which are:
WRITE_IDBLOCK_RCM43XX.C : Reference to ‘wib_initWriteIdBlockLib’ has no corresponding prototype

WRITE_IDBLOCK_RCM43XX.C : Reference to ‘addRCM4310Info’ has no corresponding prototype

There are also several syntax errors for missing semi-colons. I searched but did not find any missing semi-colons.

The Utility files and Library files are in the folder named WriteIdBlock.

Thank you for spending so much time helping me with this issue.
Dave

First of all, move the Write_ID folder with the lib files in it so that it is under the lib\rabbit4000 folder for your DC 10 installation e.g: in my case it would be:
C:\DCRABBIT_10.72\Lib\Rabbit4000\Write_ID

This will let the compiler find the files without you having to modify the lib.dir file.

Follow these instructions to get all of the libraries moved to the proper location:

Unzip this zip file into the root directory of Dynamic C.
It will add the write_idblock libraries and sample programs to the correct directories.
In the samples directory go to the sub-directory for your specific board.
Open the write_idblock_xxx.c program.
Follow the directions inside for your specific board type.
Compile and run the program.

1 Like

Success… the board is alive once again!!!

After following Margaret’s last suggestion I was able to program the ID block. When I went to load my application I had to move around a few of the .lib files for my application to program.

Peter, thank you so much for you help and sticking around to offer suggestions and guide me through this issue. You deserve a +1 vote for all your assistance.

Margaret, thank you for your help as well. I appreciate you responding back with more instructions.

Both of you have a great weekend…

Dave

Glad to know I could help! Have a great weekend!

You’re welcome Dave, have a nice weekend!