Cygnal Ide

Posted on

I haven’t gotten FreeRTOS working on an 8051, but I have been working with the chip quite a bit recently. Those error messages are pretty clear: the 8051 only has between 128 and 256 bytes of 'DATA' RAM. If your microcontroller has more, it’ll be 'external RAM' or 'XRAM.'

The memory spaces are separate, and it’s a hassle for the compiler (or for you) to get things all in the right spot, without using up the internal RAM. You haven’t succeeded in doing this: some variables you’ve defined are being located in internal RAM. You need to look into SDCC’s support for memory models.

You’ll probably have to use the 'LARGE' model, which places many / most things in XRAM.

Simplicity

Silabs Keil License

CYGNAL DOWNLOAD VIA DLL AFFECTS CHECKSUMApplies to: AnswerInformation in this article applies to:.C51 All Versions.Cygnal DLL V1.2.4QUESTIONI'm working with Cygnal C8051F006 and my application calculatesthe flash checksum. Every time I download the same source code usingKeil IDE ( via Cygnal DLL ), I get a different checksum value. Itappears that the flash download via Keil IDE does not fully erase thewhole flash before the download. Is this correct?

Cygnus Ide

ANSWERYes, the DLL does not erase all of the code space on each programdownload. This is by design.A download operation starts by reading the 512-byte flash sectorsthat contain an address included in the code image to be loaded. Itthen modifies only the bytes at the addresses included in the codeimage. Then, only the flash sectors that were read are erased andreprogrammed.

Cygnus Ide + Sdk

The net effect is that only bytes that are part of thenew code image to be downloaded are changed. All other addressesretain their previous values - even those in a re-programmed flashsector.This allows users to incrementally download code (e.g. Load alibrary of routines or boot loader to one location in code space andthen, later, load additional application code to anotherlocation).To ensure all of the code space is erased before a download, youmay use a stand-alone programming utility to erase code space orcreate a code image that uses every byte of code space, setting'unused' bytes to 0xFF. SEE ALSO.Article last edited on: 2004-04-20 13:43:36.