Version 10 (modified by Richard Campbell, on 03/26/11 at 00:23:16) (diff) |
---|
Lpc24xx
{{Infobox BSP |BSP_name = LPC24xx |Manufacturer = NXP |image = Lpcxx.png |caption = LPC2478 board |Board_URL = http://www.embeddedartists.com/products/kits/ |Architecture = ARMv4 |CPU_model = ARM7TDMI-S |Monitor = U-Boot |Simulator = N/A |Aliases = Various |RAM = 32 MB SDRAM + 96 KB internal |NVMEM = 128 MB NAND Flash, 4 MB NOR Flash + 512 KB internal |Serial = 3 x I2C, 1 x I2S, 4 x UARTs, 3 x SPI/SSP |NICs = 10/100 Ethernet |Other = USB 2.0 full-speed OTG/Device/ OHCI plus PHY and DMA }}
Overview
The LPC24xx series is built on a 2-AHB bus architecture. Like the LPC23xx series, the LPC24xx features Ethernet, USB FS, and CAN. The LPC24xx further adds a USB Host/OTG, an external bus, and higher I/O count, making this the most powerful series of ARM7-based MCUs in the marketplace. The newest LPC247x microcontrollers further integrate an LCD controller supporting high resolution STN and TFT panels with up to 24-bit true color. These microcontrollers support Super-Twisted Nematic (STN) and Thin-Film Transistor (TFT) graphic display panels up to 1024 x 768 pixels, from monochrome up to 24-bit true-color, and with hardware cursor support. This capability is ideal for point-of-sale, industrial, and medical/diagnostic applications. Further, the LCD controller supports Windows CE data formats.
Key Features
- 72-MHz, 32-bit ARM7TDMI-S with dual AHB buses
- 512 KB of ISP/IAP Flash and 98 KB of SRAM
- 10/100 Ethernet MAC with DMA and MII/RMII interface
- Two CAN 2.0B controllers with acceptance filtering
- General-purpose DMA controller
- 10-bit A/D converter and 10-bit D/A converter
- 160 general-purpose Fast I/O pins
- XGA LCD controller with dedicated DMA for TFT and
- STN panels (LPC247x only)
- USB 2.0 full-speed OTG/Device/Host plus PHY and DMA
- Multiple serial interfaces: three I2C, one I2S, four UARTs, three SPI/SSP
- External memory interface for SDRAM, SRAM, and Flash
- Two PWM units and Boundary scan
- Four 32-bit timers, a low-power realtime clock, and a Watchdog timer
- 4-MHz internal RC (IRC) oscillator trimmed to 1% accuracy
- 160 general-purpose Fast I/O pins
- Single 3.3-V power supply
Board Setup
RTEMS Lab Board
Use the boot monitor's "printenv" command to display the firmware settings:
LPC2468_OEM_Board # printenv bootargs=root=/dev/ram initrd=0xa1800000,4000k console=ttyS0,38400N8 bootdelay=3 tftp_boot=tftpboot a0008000 linux.bin;tftpboot a1800000 romfs.bin;go a0008000 nand_boot=nand read a0008000 0 200000;nand read a1800000 200000 400000;go a0008000 mmc_boot=mmc;fatload mmc 0 a0008000 linux.bin;fatload mmc 0 a1800000 romfs.bin;go a0008000 update_uboot=tftpboot a1000000 u-boot.bin;protect off 0 2ffff;erase 0 2ffff;cp.b a1000000 0 $(filesize) update_nor=tftpboot a1000000 linux.bin;protect off 80000000 803fffff;erase 80000000 803fffff;cp.b a1000000 80000000 $(filesize);tftpboot a1000000 romfs.bin;cp.b a1000000 80200000 update_nand=nand erase;tftpboot a1000000 linux.bin;nand write a1000000 0 200000;tftpboot a1000000 romfs.bin;nand write a1000000 200000 400000 netmask=255.255.255.0 ethaddr=00:1a:f1:00:07:a2 bootcmd=echo Booting RTEMS ...;run rtems ipaddr=192.168.1.246 serverip=192.168.1.92 rtems=tftp a1000000 /lpc24xx_ea.img;bootm baudrate=115200 stdin=serial stdout=serial stderr=serial Environment size: 989/4092 bytes
Downloading and Executing
Use the boot monitor's boot command to download and execute the RTEMS image:
LPC2468_OEM_Board # boot Booting RTEMS ... emac: link status = 100Mbps, full duplex emac: MAC address = 0:1a:f1: 0: 7:a2 TFTP from server 192.168.1.92; our IP address is 192.168.1.246 Filename '/lpc24xx_ea.img'. Load address: 0xa1000000 Loading: ################################## done Bytes transferred = 169211 (294fb hex) ## Booting image at a1000000 ... Image Name: RTEMS Image Type: ARM RTEMS Kernel Image (gzip compressed) Data Size: 169147 Bytes = 165.2 kB Load Address: a0000000 Entry Point: a0000000 Verifying Checksum ... OK Uncompressing Kernel Image ... OK ## Transferring control to RTEMS (at address a0000000) ...?
Debugging
How do you debug code on this board? What gdb setup? BDM, stub, etc?
Test Reports
Complete test suite pass on 2009-12-28 with CVS head and VFP soft-float model.
References
- http://ics.nxp.com/products/lpc2000/lpc24xx/
- http://www.arm.com/community/partners/display_product/rw/ProductId/2102/
- http://www.digikey.com/us/en/ph/NXP/lpc24.html?WT.z_Tab_Cat=Featured%2520Products
{{Navbox_BSPs}}