|
From: | Scott Morken |
Subject: | Re: [Paparazzi-devel] USB bootloader |
Date: | Sat, 17 May 2008 20:04:52 -0700 |
User-agent: | Thunderbird 2.0.0.14 (Windows/20080421) |
address@hidden wrote:
Hi Scott,I loaded the ram image of the bootloader on with lpc21isp over aserialport, and then installed a libusb driver for the bootloader. I thenranthe USB bootloader host program.not sure if lpc21isp is capable of loading/running the RAM version, maybe try the ROM version. The RAM version is to be loaded with lpc21iap. You do not have to give a serial number.I got some errors and now I cant get windows to recognize the ram bootloader anymore. It always says "unknown device".Where does this "unknown device" appear? This errorC:\winarm\utils\lpc21isp_beta_src\Debug>"C:\data\sourcecode\LPCBootloaderHost\debug\LPCBootloader.exe" "C:\data\sourcecode\LPCBootloaderFirmware\bl.elf" "GENERIC 112244556677" . Found USB device BootROM code: 2.12 Part ID: 0x0402FF25 (LPC2148, 512k Flash, 32k+8k RAM) BootLoader version: 1.3 changing vector table #ISP error (10:COMPARE_ERROR) compare MEM failed at 0x00000000 base 0x40004000 size 0x00001000shows that it detected the USB device? Maybe you can send the full chain of commands you gave. Did you compile with the provided makefile with windows? Martin _______________________________________________ Paparazzi-devel mailing list address@hidden http://lists.nongnu.org/mailman/listinfo/paparazzi-devel
Hi So one procedure for putting on the bootloader (windows) is: -use the serial bootloader (lpc21isp) and put on the rom version.-the computer now detects a "libusb\bootloader" device. Install the libusb driver for it. -now use lpc21iap to put on the bl_ram.elf, then use lpc21iap to put on bl.elf in that order, restart the chip with the boot pin high I did this and now I can use the bootloader to load on my own applications correct?
I changed the boot pin from vbus to another with a jumper (0.13) so I can run my own USB app code after bootloading.
I have tried to put on the example lpcusb applications with lpc21iap so far. I changed them like this so they would start at flash address 0x4000:
in the Makefile I added -n to the linker parameters, in the linker script file "lpc2148-rom.ld" I changed the following MEMORY {flash : ORIGIN = *0x00004000, LENGTH = 496K* /* FLASH ROM * changed from 0x00000000, Length 512K* */ ram_isp_low(A) : ORIGIN = 0x40000120, LENGTH = 223 /* variables used by Philips ISP bootloader */ ram : ORIGIN = 0x40000200, LENGTH = 32513 /*
free RAM area */ram_isp_high(A) : ORIGIN = 0x40007FE0, LENGTH = 32 /* variables used by Philips ISP bootloader */ ram_usb_dma : ORIGIN = 0x7FD00000, LENGTH = 8192 /* on-chip USB DMA RAM area (not used) */
} and SECTIONS { . = 0x00004000; /* set location counter to address zero, changed from *0x00000000* */ ... }Without these modifications and with the serial bootloader the 4 lpcusb demo applications work ok. When I try to bootload the demo apps with the above modifications I get this:
C:\data\source code\LPCBootloaderHost\debug>LPCBootloader.exe "C:\data \lpcUSB\trunk\target\examples\hid.elf" . Found USB device BootROM code: 2.12 Part ID: 0x0402FF25 (LPC2148, 512k Flash, 32k+8k RAM) BootLoader version: 1.3 # Starting software at 0x00004000 C:\data\source code\LPCBootloaderHost\debug> I cant tell if this means it successfully wrote the elf file or not?When I plug in the USB device it windows detects it as "USB device not recognized" which seems to indicate the code isn't working properly.
Scott
[Prev in Thread] | Current Thread | [Next in Thread] |