Hi,
> The FW42x parts have been supported (and the support actually used)
> since last summer. That is why the timera1 is known during your
> compilation (although with a typo upsetting things) - timera1 was added
> to the headers specifically for the FW42x :-)
I tried it:
> msp430-gcc -mmcu=msp430xW427 -Os -mendup-at=main -Wall -g -c main.c
Known MCU names:
msp1
msp2
msp430x110
msp430x112
msp430x122
msp430x122
msp430x1222
msp430x1122
msp430x1132
msp430x123
msp430x1232
msp430x133
msp430x135
msp430x147
msp430x148
msp430x149
msp430x412
msp430x413
msp430x311
msp430x312
msp430x313
msp430x314
msp430x315
msp430x323
msp430x325
msp430x336
msp430x337
msp430x1101
msp430x1111
msp430x1121
msp430x1331
msp430x1351
msp430x435
msp430x436
msp430x437
msp430x447
msp430x448
msp430x449
msp430x167
msp430x168
msp430x169
msp430x155
msp430x156
msp430x157
I looked at the source file names, found some good looking files and with
-mmcu=msp430xW427 and #include <msp430xW42x.h> the MCU is known, so the above
error list is wrong.
I could start compiling but with the new MCU type i do get many errors:
main.c:69: `CACTL2' undeclared (first use in this function)
...
main.c:71: `CAON' undeclared (first use in this function)
isr.c:109: `CACTL1' undeclared (first use in this function)
...
modules.c:789: `CAF' undeclared (first use in this function)
...
make: *** [main.o] Error 1
What's wrong?
> > Is there no trick to reduce the size to the size the IAR compiler
> > produces?
>
> - did you compile for the same target?
Yes, for F413.
> - did you try -O2 too?
Yes, with -O2 it's bigger.
I'm using
CPU = msp430xW427
ASMOPT = -mmcu=${CPU} -std=gnu99 -ffunction-sections -fgcse -fssa
-fdelete-null-pointer-checks -fno-math-errno -mno-stack-init -Os
-mendup-at=main -Wall
COPT = -mmcu=${CPU} -std=gnu99 -Os -mendup-at=main -Wall -g
> - does the code use floats?
Yes.
Does mspgcc produces more float code than the IAR compilers?
By the way: I've done a simple install script which can be used for a coffee
break during installation and which makes installation easier and less
error-prone:
#!/bin/bash
#
# Simple install script for mspgcc with hard coded versions.
# Use it as user root(.root) as
# ./build_mspgcc.sh 2>&1 | tee build_mspgcc.out
# which will create build_mspgcc.out as the log file.
#
# It takes approx. 9 minutes with a 2 GHz 32 bit CPU.
#
# Version 0.0.5 1. Apr. 2004 Rolf Freitag
#
# todo: - wget binutils-2.14.tar.bz2, gcc-core-3.2.3.tar.bz2, gdb-6.0.tar.bz2,
# - splitting into a script for user and a script for root
#
cvs -d:pserver:[email protected]:/cvsroot/mspgcc login
cvs -z3 -d:pserver:[email protected]:/cvsroot/mspgcc co binutils
docs examples gcc gdb gdbproxy hardware htdocs jtag msp430-libc msp430simu
packaging pybsl pyjtag pyserjtag python serJTAGfirmware ubroff
PATH=$PATH:/usr/local/msp430/bin
export PATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export LD_LIBRARY_PATH
tar --bzip2 -xf binutils-2.14.tar.bz2
cd binutils-2.14
./configure --target=msp430 --prefix=/usr/local/msp430
make clean
make
make install
cd ..
tar --bzip2 -xf gcc-core-3.2.3.tar.bz2
cp -a gcc/gcc-3.3/* gcc-3.2.3
cd gcc-3.2.3
./configure --target=msp430 --prefix=/usr/local/msp430
make clean
make
make install
cd ..
cd msp430-libc/src
make clean
mkdir -p msp1
mkdir -p msp2
make
make install
cd ../..
# tar --bzip2 -xf gdb-5.1.1.tar.bz2
tar --bzip2 -xf gdb-6.0.tar.bz2
# cp -a gdb/gdb-5.1.1/* gdb-5.1.1 # installation of gdb-5.1.1 faild with error
"run does not exist"
cp -a gdb/gdb-current/* gdb-6.0
# cd gdb-5.1.1
cd gdb-6.0
./configure --target=msp430 --prefix=/usr/local/msp430
make clean
make
make install
#
# todo: insight installation
#
cd ..
cd jtag/hardware_access
make clean
make
mv libHIL.so /usr/local/lib
chmod a+r /usr/local/lib/libHIL.so
ldconfig
cd ../..
find -type f -print0 | xargs -0 chmod a+r; find -type d -print0 | xargs -0
chmod a+rx
chmod a+rx /usr/local/msp430
cd /usr/local/msp430
find -type f -print0 | xargs -0 chmod a+r; find -type d -print0 | xargs -0
chmod a+rx
Rolf F.