From: Dave H. <dhy...@gm...> - 2006-04-30 17:15:52
|
Hi Nicholas, On 4/30/06, Nicholas S-A <no...@ma...> wrote: > > > > The 0xbf will have selected an external crystal, so if you don't have > > one connected up, that's why it's dead. > > > > I attached an 8Mhz crystal and successfully programmed the bootloader. > I am trying to load i2c-io on to it. I have the i2c bus connected, but > the ATmega is not recognized: > I2C Dev Addr: 0x0b > Version: 1 > MinVersion: 1 > Part Number: 0x9702 (ATMega128) > Reg Size: 256 > RAM Size: 4096 > EEPROM Size: 4096 > Page Size: 256 > Flash Size: 128k > Node Name: not set > Boot Delay: unset, defaults to 5 seconds > I2C Addr: unset, defaults to 0x0b So what I did was used the SetI2cAddr command to change the i2c address of the robostix to something else (0x0c). > I tried to change the BL_DEFAULT_I2C_ADDR (or something) to 0x0d, which > caused some wierd error on line 48 of memcpy_ES: > Assembling ../Common/memcpy_EP.S ... The fact that it's even trying to assemble memcpy_EP.S means that you forgot to specify the CPU_MCU=3D8 on the make command line. It defaults to being an ATMega128 at 16 MHz. So the best thing to do is this: make CPU_MCU=3D8 CPU_FREQ=3D8 clean make CPU_MCU=3D8 CPU_FREQ=3D8 Forgetting the CPU_MCU once will give you mixed executables. What I really need to do is make the object files avr specific, but when I started it was just targeting the ATMega8 so I didn't bother. > ../Common/memcpy_EP.S: Assembler messages: > ../Common/memcpy_EP.S:48: Error: constant value required > ../Common/memcpy_EP.S:48: Error: number must be less than 64 > ../Common/memcpy_EP.S:54: Error: illegal opcode elpm for mcu atmega8 > which, if I remember correctly, did not happen before. > > so I just commented the dependency out because I had the binary still. > (A temporary fix) Your makefile should already look like this: ifeq ($(CPU_MCU),128) COMMON_OBJS +=3D memcpy_EP.o endif which means it only includes the memcpy_EP.o when targeting the ATMega128 I put my .hex files on my website: http://www.davehylands.com/gumstix-wiki/ATMega8/i2c-Boot-m8-8MHz.hex http://www.davehylands.com/gumstix-wiki/ATMega8/i2c-io-m8.hex -- Dave Hylands Vancouver, BC, Canada http://www.DaveHylands.com/ |