problem compiling code trying to add sscanf function
Stephane Carrez
stcarrez@nerim.fr
Thu Mar 25 01:17:00 GMT 2004
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi!
n f wrote:
> I'm programming a 68hc11e1 microprocessor, using c.
> Does anyone know if it's possible to use stdio
> functions from c, to program a 68hc11e1. Everytime I
> compile it gives me an error when I try to use sscanf
> function. I'm trying to convert a string to float. I
> have inserted "#include <stdio.h>", but it still does
> not work.
You don't tell us which error you are getting.
You must at least add the following libraries: -lc -lbcc -lc
and use the newlib 1.11 to use sscanf().
Note that even if floating points work well with 68hc11/68hc12
the libraries are so huge that it's quite unusable in a real situation.
Stay away from using floating point when using a such embedded system.
The 'sscanf' and 'printf' with floating point support are also so
huge (in newlib) that it will use 75% of the 64K address space.
(it will not fit in your 24K text region).
Stephane
>
> here are my files:
> Here's my memory.x file:
>
> OUTPUT_FORMAT("elf32-m68hc11", "elf32-m68hc11",
> "elf32-m68hc11")
> OUTPUT_ARCH(m68hc11)
> ENTRY(_start)
> SEARCH_DIR(C:\usr\lib\gcc-lib\m6811-elf\3.3.1-m68hc1x-20031004
> \mshort)
>
> MEMORY
> {
> ioports (!x) : org = 0x1000, l = 0x500
> eeprom (!i) : org = 0xB600, l = 0x300
> data (rwx) : org = 0x8800, l = 0x1000
> text (rx) : org = 0x9000, l = 0x6000
> }
>
> PROVIDE (_stack = 0x01ff-1);
>
> -------------------------------------------------------------
> here's my project.mak file:
>
> OC = c:/usr/bin/m6811-elf-objcopy
> CC = c:/usr/bin/m6811-elf-gcc
> RM = C:/embeddedGNU/rm.exe
>
> CFLAGS = -m68hc11 -O3 -fno-ident -fno-common
> -fomit-frame-pointer -
> mshort -fsigned-char
> LDFLAGS = -Wl,-u,-mm68hc11elfb
> OCFLAGS = -O srec
>
> CSRCS=main.c
>
> OBJS=$(CSRCS:.c=.o)
>
> all: ourProject.elf ourProject.s19
>
> $(OBJS): %.o: %.c
> $(CC) $(CFLAGS) -c $<
>
> ourProject.elf: $(OBJS)
> $(CC) $(CFLAGS) $(LDFLAGS) -o ourProject.elf $(OBJS)
>
> ourProject.s19: ourProject.elf
> $(OC) $(OCFLAGS) ourProject.elf ourProject.s19
>
> clean:
> $(RM) -f ourProject.elf
> $(RM) -f ourProject.s19
> $(RM) -f ourProject.dmp
> $(RM) -f $(OBJS)
>
>
> ---------------------------------------
> basically this is what i'm adding:
>
> #include<stdio.h>
>
> UINT x;
> char *out = "1234.4213"; // this is what what the data
>
> //looks like
> float fnum;
> x = sscanf(out, "%lf", &fnum);
>
>
> __________________________________
> Do you Yahoo!?
> Yahoo! Finance Tax Center - File online. File on time.
> http://taxes.yahoo.com/filing.html
>
- --
Home Office
E-mail: stcarrez@nerim.fr Stephane.Carrez@solsoft.com
WWW: http://stcarrez.nerim.net http://www.solsoft.com
Free the Software! Security Policy Management
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)
Comment: Using GnuPG with Netscape - http://enigmail.mozdev.org
iD8DBQFAYhBhNyQxO2LzKT0RApLPAJ0U9ecLNMKKoo6JeJGPG2IKaS2twwCg3XnO
rZg5zlUMmBhcgDMJ4jw5PkY=
=0LEz
-----END PGP SIGNATURE-----
More information about the Gcc-help
mailing list