From: Jesus Calvino-F. <Je...@ec...> - 2003-08-05 22:45:22
|
Hi Bert, Maybe I am wrong here, since I had not tested the resulting generated code,= =20 but the size of USB_INT compiled with SDCC, according to the mem file is=20 less than 4k (3392 bytes): C:\CYGNAL\Examples\C8051F32x\C\USB_INT\Firmware>type USB_MAIN.mem Direct Internal RAM: Name Start End Size Max ---------------- -------- -------- -------- -------- REG_BANK_0 0x00 0x07 8 8 REG_BANK_1 0x08 0 8 REG_BANK_2 0x10 0 8 REG_BANK_3 0x18 0 8 BSEG_BYTES 0x20 0 16 DATA 0x08 0x3b 52 128 ---------------- -------- -------- -------- -------- TOTAL: 0x00 0x3b 60 128 Stack starts at: 0x3c (sp set to 0x3b) with 196 bytes available Other memory: Name Start End Size Max ---------------- -------- -------- -------- -------- INDIRECT RAM 0x80 0 128 EXTERNAL RAM 0x0000 0 65536 ROM/EPROM/FLASH 0x0000 0x0d3f 3392 65536 <----- HERE Maybe you are looking at the size of the ihx/hex file??? Remember that a=20 hex file encodes each byte as two characters, plus all the counters,=20 checksums, \n, \r, etc. which makes the file a lot bigger than the data it= =20 represents. Jesus At 12:17 AM 8/6/2003 +0200, Bert wrote: >Hi all, > >I have a question about Cygnal=92s C8051F320 USB microcontroller and=20 >SDCC/Keil compilers. When I look at the USB_INT example code that comes=20 >with the development board, the hex file is almost 16KB. Does this imply=20 >that the memory of the microcontroller is almost completely full with the= =20 >USB code and that there is no space left for any other code? The really=20 >strange thing is that the Keil compiler that comes with the kit is limited= =20 >to 4KB, but the hex file is 15KB=85 I must be missing something here? If= the=20 >memory is indeed full already, what are the options for expanding the=20 >memory or reducing program size? The hex file resulting when compiling=20 >with SDCC is pretty much the same size (the USB_INT SDCC port by Josh= Stone). > >Thanks in advance, > >Bert. > >PS: sorry if this is a little off-topic. |