[En-Nut-Discussion] Nut/OS LCD Device Driver / GCC problem

Harald Kipp harald.kipp at egnite.de
Thu Jun 2 11:54:29 CEST 2005


Grahame,

don't know about lcd20.c and .h. At least it is not in
the Ethernut distribution. But this compile error usually
is a result of using conflicting interrupt vector definitions.

Furthermore, lcd20.c seems to contain __do_copy_data, which
is actually part of the GCC runtime initialization. I'm
puzzled.

Actually lcd20 shouldn't be required, because nutpiper uses
dev/term.c and dev/hd44780.c.

Regarding device drivers in general. This term is a bit
overstated for most Nut/OS "drivers". The more advanced
ones support init, open, read, write and close, so they
can be used with stdio printf, scanf etc.

Some of them look more complicated, because they are
divided into a general and a specific part. Examples
are term.c and usart.c.

Others, like the VS1001K driver just provide a bunch of
API calls without any standard except initialization.

Always start with NUTDEVICE and fill in the function
and structure pointers required by your specific driver.
The rest evolves...hm...probably...somehow. But it
is not that kind of black magic like with Windows and
Linux. :-)

Harald





More information about the En-Nut-Discussion mailing list