Discussion group dedicated to the Philips LPC2000 family of ARM MCUs
LPC-2148 demo code version 1.42 available - "J.C. Wren" - Nov 9 12:02:54 2008
The demo code is available at http://jcwren.com/arm Below are the release
notes for this version.
--jc
2008/11/09, version 1.42:
Added support for the Microchip 25LC512 64Kx8 SPI EEPROM. As a result, the
'ee' commands were changed to 'eei' (for EEPROM I2C), and the SPI EEPROM
commads are 'ees'. Note that the SPI EEPROM and the ENC28J60 cannot be
active at the same time because the chip select is shared (SSEL0). There
is a check for if the uIP task is running, the 'ees' commands will generate
an error, but the 25LC512 will respond when uIP talks to the ENC28J60, so
you'll want to remove the 25LC512 when you start uIP (short form: the
25LC512 can be used while the ENC28J60 is present, but the ENC28J60 can't
be used while the 25LC512 is present).
Every function (except 'version' and 'help') are removable through the
CFG_xxx defines in the top-level Makefile. By default, all options except
the USB mass storage option are enabled (USB MSC is off by default because
it is incompatible with the USB console, which is enabled).
It is interesting to note that with EVERYTHING turned off and -Os (optimize
for size), the code gets down to 37K. I prefer to use -O3 (optimize for
speed) as speed is more important than code size in a 512K part (at this
point). With -O3 and everything turned on, the code is 224K.
Unfortunately, the stdio file functions pull in a lot of code, including
malloc(). There's just no way to get rid of this. Using CFG_INTONLY will
remap the printf and friends to iprintf, which results in a good savings
(CFG_GPS disables this, as the latitude and logitude are floats). Be sure
to see sysdefs.h for how things get included/excluded (it's nasty).
I2C EEPROM write routine now checks if the requested address plus number of
bytes would cross a page boundary, and throws an error if it does. I.e.,
the AT24C1024 has a 256 byte page size, so a write request of 'eei wa 0xfe
1 2 3' would generate an error.
The USB serial code now sort of honors the virtual DTR/RTS state. When the
board is reset and the initial USB enumeration done, the virtual DTR/RTS
lines are not asserted. When a terminal program (such as HyperDoodoo)
starts, the virtual control lines are asserted, and characters will be sent
to the USB virtual UART. HOWEVER, stupid Windows/HyperDoodoo doesn't
de-assert virtual DTR on a disconnect, so the code has no way of knowing
that no one is listening to it. This creates the problem of a telnet
session hanging because output is also being sent to the virtual UART.
Since nothing is listening to the far end of the virtual UART, the buffers
fill, and the task blocks. Currently, the only option is to enable
CFG_AUTO_UIP (not enabled by default) to start uIP automatically, thus not
requiring a USB connection to be established.
In addition to CFG_AUTO_UIP, setting CFG_AUTO_DHCP will cause uIP to try to
get it's IP address from a DHCP server. And if CFG_AUTO_SNTP and CFG_RTC
are enabled, and the DHCP server returns a SNTP server, the time will be
set automagically also.
------------------------------------

(You need to be a member of lpc2000 -- send a blank email to lpc2000-subscribe@yahoogroups.com )
Re: LPC-2148 demo code version 1.42 available - leon Heller - Nov 9 12:29:27 2008
----- Original Message -----
From: "J.C. Wren"
To:
Sent: Sunday, November 09, 2008 5:02 PM
Subject: [lpc2000] LPC-2148 demo code version 1.42 available
> The demo code is available at http://jcwren.com/arm Below are the release
> notes for this version.
What's actually needed to build it? I got nearly 300 errors when I tried to
build it with WinARM. I used makefile.winarm, of course.
Leon
------------------------------------

(You need to be a member of lpc2000 -- send a blank email to lpc2000-subscribe@yahoogroups.com )Re: LPC-2148 demo code version 1.42 available - "J.C. Wren" - Nov 9 12:37:57 2008
I use arm-elf-gcc 4.2.4, but I've built it with older versions. I
suspect it's something to do with the WinARM makefile. What sort of
errors are you getting?
One person mentioned to me about the LCD code throwing errors on the
'nop' statements. I installed WinARM, and compiled that module with
no errors.
I also use GNU make 3.81.
I'd like to get a good WinARM build going, but I don't have it
installed, and I find it extremely frustrating to deal with a DOS
shell.
--jc
On Sun, Nov 9, 2008 at 12:29 PM, leon Heller
wrote:
> ----- Original Message -----
> From: "J.C. Wren"
> To:
> Sent: Sunday, November 09, 2008 5:02 PM
> Subject: [lpc2000] LPC-2148 demo code version 1.42 available
>
>> The demo code is available at http://jcwren.com/arm Below are the release
>> notes for this version.
>
> What's actually needed to build it? I got nearly 300 errors when I tried to
> build it with WinARM. I used makefile.winarm, of course.
>
> Leon
------------------------------------

(You need to be a member of lpc2000 -- send a blank email to lpc2000-subscribe@yahoogroups.com )Re: LPC-2148 demo code version 1.42 available - Xiaofan Chen - Nov 9 22:40:00 2008
On Mon, Nov 10, 2008 at 1:37 AM, J.C. Wren
wrote:
> I use arm-elf-gcc 4.2.4, but I've built it with older versions.
I use gcc-4.1 and it works under Ubuntu Linux 8.04/8.10.
Files are from gnuarm website:
http://www.gnuarm.com/files.html
Build instruction also comes from gnuarm.
http://www.gnuarm.com/files.html
I am not so sure if CodeSourcery can be used. I have
not tried WinARM under Vista yet.
Xiaofan
------------------------------------

(You need to be a member of lpc2000 -- send a blank email to lpc2000-subscribe@yahoogroups.com )Re: LPC-2148 demo code version 1.42 available - Xiaofan Chen - Nov 9 22:41:01 2008
On Mon, Nov 10, 2008 at 11:39 AM, Xiaofan Chen
wrote:
> On Mon, Nov 10, 2008 at 1:37 AM, J.C. Wren wrote:
>> I use arm-elf-gcc 4.2.4, but I've built it with older versions.
>
> I use gcc-4.1 and it works under Ubuntu Linux 8.04/8.10.
> Files are from gnuarm website:
> http://www.gnuarm.com/files.html
> Build instruction also comes from gnuarm.
> http://www.gnuarm.com/files.html
Should be http://www.gnuarm.com/support.html
> I am not so sure if CodeSourcery can be used. I have
> not tried WinARM under Vista yet.
>
> Xiaofan
>
------------------------------------

(You need to be a member of lpc2000 -- send a blank email to lpc2000-subscribe@yahoogroups.com )Re: LPC-2148 demo code version 1.42 available - "J.C. Wren" - Nov 9 22:48:31 2008
I've got it where it compiles under WinARM 20060606, although I had to
make some changes to how the .depend files were created. It seems any
time I try to do I/O redirection in a Makefile, i.e. 'arm-elf-objdump
foo > foo.lst', MSYS is throwing up on itself. I've found a thread
were apparently Logitech webcam drivers have been known to cause
problems, but I don't have any of those. I've tried stopping all
essential services, trimming the DOS shell environment down, I'm not
running Vista (which is a known problem child, apparently).
This is a rather annoying problem. The path to the project also has
to be hard coded in the Makefile, rather than being able to be
extracted with a 'shell pwd' command. I suspect, however, that this
and the I/O redirection problem are vaguely related.
--jc
On Sun, Nov 9, 2008 at 10:40 PM, Xiaofan Chen
wrote:
> On Mon, Nov 10, 2008 at 11:39 AM, Xiaofan Chen wrote:
>> On Mon, Nov 10, 2008 at 1:37 AM, J.C. Wren wrote:
>>> I use arm-elf-gcc 4.2.4, but I've built it with older versions.
>>
>> I use gcc-4.1 and it works under Ubuntu Linux 8.04/8.10.
>> Files are from gnuarm website:
>> http://www.gnuarm.com/files.html
>> Build instruction also comes from gnuarm.
>> http://www.gnuarm.com/files.html
> Should be http://www.gnuarm.com/support.html
>
>> I am not so sure if CodeSourcery can be used. I have
>> not tried WinARM under Vista yet.
>>
>> Xiaofan
>
------------------------------------

(You need to be a member of lpc2000 -- send a blank email to lpc2000-subscribe@yahoogroups.com )Re: LPC-2148 demo code version 1.42 available - Xiaofan Chen - Nov 10 6:35:47 2008
On Mon, Nov 10, 2008 at 11:39 AM, Xiaofan Chen
wrote:
> On Mon, Nov 10, 2008 at 1:37 AM, J.C. Wren wrote:
>> I use arm-elf-gcc 4.2.4, but I've built it with older versions.
>
> I use gcc-4.1 and it works under Ubuntu Linux 8.04/8.10.
> Files are from gnuarm website:
> http://www.gnuarm.com/files.html
> Build instruction also comes from gnuarm.
> http://www.gnuarm.com/support.html
By the way, I can get the usb console works under XP with my
wife's notebook. Need to test Vista on that notebook.
Xiaofan
------------------------------------

(You need to be a member of lpc2000 -- send a blank email to lpc2000-subscribe@yahoogroups.com )Re: LPC-2148 demo code version 1.42 available - Xiaofan Chen - Nov 10 6:58:49 2008
On Mon, Nov 10, 2008 at 7:35 PM, Xiaofan Chen
wrote:
>
> By the way, I can get the usb console works under XP with my
> wife's notebook. Need to test Vista on that notebook.
It works with the notebook under Vista as well. So I think
I need to check my Desktop PC. Both the notebook
and the desktop is running Vista 32 SP1 and use
the same version of usbser.sys. Strange!
usbser.sys version: 6.0.6001.18000
(longhorn_rtm.080118-1840). And both are actually
using similar chipset from Nvidia.
Desktop: Acer M1641: Nvidia 620i/7050, Intel Core 2
Notebook: HP Compaq Presario V3619AU,
Nvidia MCP67M/7150M, AMD Turion CPU
Xiaofan
------------------------------------

(You need to be a member of lpc2000 -- send a blank email to lpc2000-subscribe@yahoogroups.com )Re: LPC-2148 demo code version 1.42 available - Leon Heller - Nov 10 11:03:58 2008
I managed to get the updated demo code to build under Windows XP with
WinARM, with a little help from JC. I used Martin Thomas's WinARM
20060606:
http://gandalf.arubi.uni-kl.de/avr_projects/arm_projects/
Make sure that you have the correct root directory defined in the
Makefile, and .SILENT commented out. It should then build without any
problems.
I haven't actually been able to try it, as I don't have an Olimex
LPC2148 board. It should be possible to port it to the EA board I do
have, without too many problems.
Leon
------------------------------------

(You need to be a member of lpc2000 -- send a blank email to lpc2000-subscribe@yahoogroups.com )