This page describes development of an MCU board with large capacity RAM by using NXP's LPC2468 MCU. It has network connection capability. Presently the board can play Shoutcast-type Internet radio stations on the FreeRTOS and the lwIP TCP/IP protocol stack.
Preliminary
MCUs with Ethernet controllers enable us to develop a new type of gadget.
However, while MCUs have limited RAM area in general, some types of application require large memory area for storing some data from the Internet and for system software(such as a RTOS and a TCP/IP protocol stack). Thus I designed an MCU board with Ethernet connection capability and large capacity RAM (16MBytes SDRAM) for these application areas.
Presently the board can receive and play Shoutcast-type Internet radio stations on RTOS. The above picture shows the board playing an Internet radio station. Generally, playing Internet radio station requires relatively large RAM area for buffering data. Without large capacity RAM, it is difficult to play streaming radio and to use the LCD display.
I choosed an MCU under some constraints: package type need to be QFP for mounting, it need to have both SDRAM controller and Ethernet controller, and it need to be available. While I wanted to use Luminary micro's LM3S9B00 series, it is difficult to obtain because it is out-of-stock and long lead time. Thus, I choosed the NXP's LPC2468 MCU.
The print circuit board(PCB) layout was designed with the freeware version of Cadsoft Eagle PCB Layout Design software. PCBs were fabricated in Malaysia. The fee of fabricating eight PCBs(FR4, double side) was about 80 USD. Presently I soldered three PCBs by hand. Two boards were successfully built up. One board failed because of soldering failure that comes from a low-power soldering iron.
Displaying the date like the On Kawara's today series.
A high-power soldering iron is required to solder the high-pin-count MCU (QFP208) correctly. With using flux and a high-power solderint iron, soldering is not so difficult.
The back side of the MCU board. Soldering the FPC connector(OMRON XF2L-3025-1) is relatively difficult. It is because each connector pad is shaped like a fin (vertical plate, not horizontal). Also, the connector is fragile. Attention is required to insert and remove the LCD display flat cable.
Almost the all parts (except a USB port) operate with the 3.3V power supply. The power source of the board is a DC adapter (5V). A switching regulator(LM2831XMF) supplies 3.3V. Current consumption of the board was measured under some conditions. In the all conditions, no USB device was connected to the board. The CPU core and the internal peripherals are worked at 72MHz and at default clock rate(18(=72/4)MHz for the most part), respectively.
w/o LAN connection | about 180 mA |
w/ LAN connection(100Mbps) | about 230 mA |
w/ LAN connection(100Mbps) and playing a streaming radio station(64kbps) | about 240 mA |
The chassis of the board is made of acrylic boards. Google SketchUp was used for designing the chassis. However it is difficult to design in detail (I think), it is good to review chassis designs for deciding the final one.
Presently I build up two boards as described above. One board has LPC2468 and the other has LPC2478 because LPC2468 was unavailable at that time. LPC2478 has a LCD controller in addition to all the function of LPC2468. While the board has the LCD display containing its own LCD controller, I want to use a QVGA color-LCD with the LPC2478's internal LCD controller in next boards.
These resources are free and there is NO WARRANTY.
Presently FreeRTOS and lwIP TCP/IP protocol stack are working on the board. It can play Shoutcast-type Internet radio stations. Network programming using lwIP is relatively easy although programming using uIP protocol stack(designed by the same author) is difficult.
NO WARRANTY
It is based on 'lwIP_Demo_Rowley_ARM7' porting in FreeRTOS demo. NXP's application note AN10799 is also used for this porting.
Business-related technical questions are not welcome.
I developed an MCU board with large capacity RAM. NXP's LPC2468 MCU is on it. It has network connection capability. FreeRTOS and lwIP TCP/IP protocol stack are working. It can play Shoutcast-type Internet radio stations.
(Feb. 24, 2010 initial version(preliminary))
(Oct. 6, 2010 revised (board data is added))
(Mar. 12, 2011 revised (sample code is added))