[En-Nut-Discussion] Port to a non ethernut board

Marc Giger gigerstyle at gmx.ch
Thu Aug 24 21:17:39 CEST 2006


Hi,

On Thu, 24 Aug 2006 15:05:59 -0300
"Thiago A. Corrêa" <thiago.correa at gmail.com> wrote:

> Hi,
>    atmega128? I was in a similar situation when I first started out
> messing with ethernut, actually I had a lockup exactly where you
> describe. The problem were fuse bits if I recall it correctly, or one
> of the chip pins were not soldered correctly, not sure. Might be worth
> to check those out.

I'm shure the solderings are fine. I can flash and run my own programs
without problem.
Does NutOs require special fuse settings? As far as I see, at this
early stage in NutOs (NutInitXRAM) should run fine with the same
settings as with my programs...or do the gcc / linker magics for NutOs
require special fuse bits set?

Thank you

Marc


> 
> Cheers,
>    Thiago A. Corrêa
> 
> 
> On 8/24/06, Marc Giger <gigerstyle at gmx.ch> wrote:
> > Hello all,
> >
> > I'm trying to "port" Nut/Os to a non ethernet board, but don't get
> > it running.
> >
> > I spend some time reading the source code and the resulting
> > assembler code and still don't see why it doesnt work.
> >
> > The board in question has the following configuration:
> > - atmega128 running with an external 16Mhz crystal
> > - 32k extended RAM
> > - and and and....
> >
> > I have built NutOs with the following config:
> > PLATFORM = "ETHERNUT1"
> > AVR_GCC = ""
> > MCU_ATMEGA128 = ""
> > NUTMEM_START = "0x100"
> > NUTMEM_RESERVED = "64"
> > NUTXMEM_SIZE = "28416"
> > NUTXMEM_START = "0x1100"
> > NUT_CPU_FREQ = "16000000"
> > STDIO_FLOATING_POINT = ""
> >
> > The debugging possibilities are limited because of my
> > proprietary programmer, precisely it is limited to switch an onboard
> > LED on/off :-/
> >
> > The LED is attached to PORTE6 which i try to activate directly after
> > the extended RAM activation in NutInitXRAM(). So it seems the mcu
> > never reaches that (early) point.
> >
> > The disassembled elf file part:
> >
> > Disassembly of section .text:
> >
> > 00000000 <__vectors>:
> >        0:       0c 94 46 00     jmp     0x8c <NutInitXRAM>
> >        4:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >        8:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >        c:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       10:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       14:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       18:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       1c:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       20:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       24:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       28:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       2c:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       30:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       34:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       38:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       3c:       0c 94 49 07     jmp     0xe92 <__vector_15>
> >       40:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       44:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       48:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       4c:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       50:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       54:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       58:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       5c:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       60:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       64:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       68:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       6c:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       70:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       74:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       78:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       7c:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       80:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       84:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >       88:       0c 94 9a 00     jmp     0x134 <__bad_interrupt>
> >
> > 0000008c <NutInitXRAM>:
> >       8c:       80 ec           ldi     r24, 0xC0       ; 192
> >       8e:       85 bf           out     0x35, r24       ; 53
> > <--MCUCR 90:       16 9a           sbi     0x02, 6 ; 2     <--DDRE
> > OUT 92:       1e 9a           sbi     0x03, 6 ; 3     <--LED ON
> >
> > 00000094 <NutCustomInit>:
> >       94:       87 e0           ldi     r24, 0x07       ; 7
> >       96:       89 b9           out     0x09, r24       ; 9
> >       98:       80 93 99 00     sts     0x0099, r24
> >       9c:       11 24           eor     r1, r1
> >       9e:       1f be           out     0x3f, r1        ; 63
> >       a0:       cf ef           ldi     r28, 0xFF       ; 255
> >       a2:       d0 e1           ldi     r29, 0x10       ; 16
> >       a4:       de bf           out     0x3e, r29       ; 62
> >       a6:       cd bf           out     0x3d, r28       ; 61
> >
> > Perhaps somebody knows whats going on and is willing to share
> > his/her knowledge with me?
> >
> > The only difference to my program is that i don't set the SRW10 bit
> > in MCUCR, but that shouldn't matter because no SRL bits are set...
> >
> > Any help is very much appreciated!
> >
> > Thank you
> >
> > Marc
> > _______________________________________________
> > En-Nut-Discussion mailing list
> > En-Nut-Discussion at egnite.de
> > http://www.egnite.de/mailman/listinfo.cgi/en-nut-discussion
> >
> _______________________________________________
> En-Nut-Discussion mailing list
> En-Nut-Discussion at egnite.de
> http://www.egnite.de/mailman/listinfo.cgi/en-nut-discussion
> 



More information about the En-Nut-Discussion mailing list