User manual
RP6 ROBOT SYSTEM - 4. Programming the RP6
4.3. Why C? And what's “GCC”?
The programming language C is widely being in use – in fact, C is the standard lan-
guage, which anyone interested in software development should have used at least
once. C compliers are available for nearly every microcontroller currently on the mar-
ket and for this reason, all recent robots by AREXX Engineering (ASURO, YETI and
RP6) can be programmed in C.
The popularity of C leads to a vast amount of documentation on the internet and in lit-
erature, allowing beginners to easily study the programming language. But remem-
ber: C is a rather complex language, which cannot be learned within a few days
without prior programming experience (so please don't throw the robot out of the
window if things aren't working straight away ;-) ).
Luckily, the basics are easily understood and programmers may continuously develop
knowledge and experience. It requires some initial effort! You can not learn C auto-
matically – this could be compared to learning a foreign language.
But it's worth the effort, as basic C knowledge will simplify learning other program-
ming languages as the concepts are often very similar.
Just like for our other robots, the RP6 requires a special version of the C compiler
from the GNU Compiler Collection (abbreviation: GCC). The GCC is a universal compil-
ing system, supporting a great variety of languages such as C, C++, Java, Ada and
FORTRAN.
GCC's target support is not restricted to AVR. It may be used for much bigger systems
and knows a few dozen different targets.
The most prominent project using the GCC is the famous Linux project, of course.
Most of the programs for Linux have been compiled by GCC. Thus it can be considered
as a very professional and stable tool, which is being used by several big companies.
By the way: If this manual is referring to “GCC” we do not necessarily mean the com-
plete Compiler Collection, but the C compiler only. Originally “GCC” had been in use as
an abbreviation for “GNU C Compiler” – the new meaning became necessary after
adding some other languages.
If you would like to learn more about GCC we invite you to visit the official GCC web-
site: http://gcc.gnu.org/
GCC does not directly support the AVR target and must be adapted. The adapted ver-
sion of GCC is named AVR-GCC. The WinAVR distribution contains a ready to use ver-
sion for Windows users. Unix users will usually have to compile a version by them-
selves and we expect that you have completed this already.
- 61 -










