[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [avr-gcc-list] basic UART Transmit interrupt problem
From: |
Woodward, Mark P |
Subject: |
RE: [avr-gcc-list] basic UART Transmit interrupt problem |
Date: |
Thu, 03 Jul 2003 16:58:58 -0700 |
It is finding the proper #define, since I do see the function __vector_20 in
the dissassembled output, which is my interrupt reutine. The problem is
just that the vector table is being cut short. It only creates jmps for
the first 13 vectors.
0: 0c c0 rjmp .+24 ; 0x1a
2: 26 c0 rjmp .+76 ; 0x50
4: 25 c0 rjmp .+74 ; 0x50
6: 24 c0 rjmp .+72 ; 0x50
8: 23 c0 rjmp .+70 ; 0x50
a: 22 c0 rjmp .+68 ; 0x50
c: 21 c0 rjmp .+66 ; 0x50
e: 20 c0 rjmp .+64 ; 0x50
10: 1f c0 rjmp .+62 ; 0x50
12: 1e c0 rjmp .+60 ; 0x50
14: 1d c0 rjmp .+58 ; 0x50
16: 1c c0 rjmp .+56 ; 0x50
18: 1b c0 rjmp .+54 ; 0x50
When I create an interrupt that falls within one of the first 13, such as
SIG_INTERRUPT1, it properly maps the second vectors rjmp to 0x52. Maybe
avr-gcc thinks my microcontroller is some old one with only 13 interrupts,
even though I am passing -mmcu=atmega128
avr-gcc -g -Os -mmcu=atmega128 -c -o Test.o Test.c
avr-gcc -o Test.elf Test.o
avr-objcopy -O srec Test.elf Test.srec
uisp --erase -dprog=dapa
uisp --upload -dprog=dapa if=Test.srec
Thank-s
-Mark
> -----Original Message-----
> From: Larry Barello [SMTP:address@hidden
> Sent: Thursday, July 03, 2003 4:20 PM
> To: Woodward, Mark P
> Cc: AVR GCC List
> Subject: Re: [avr-gcc-list] basic UART Transmit interrupt problem
>
> It looks like you have defined no vectors. They all jump to the same
> location. you
> probably spelled the signal names wrong (they are #defines that are turned
> into
> "__vector_XX" strings). Look in the appropriate ioXXXX.h file to see the
> defines so you
> don't misspell them.
>
> This is the problem with #defines: there is no error checking for
> misspelling.
>
>
> ----- Original Message -----
> From: "Woodward, Mark P" <address@hidden>
> To: "'Dean Ferreyra'" <address@hidden>; <address@hidden>
> Sent: Thursday, July 03, 2003 3:05 PM
> Subject: RE: [avr-gcc-list] basic UART Transmit interrupt problem
>
>
> > Hi Dean,
> >
> > When I disassemble the .elf file I produced below, I get the following
> >
> > 00000000 <__vectors>:
> > 0: 0c c0 rjmp .+24 ; 0x1a
> > 2: 26 c0 rjmp .+76 ; 0x50
> > 4: 25 c0 rjmp .+74 ; 0x50
> > 6: 24 c0 rjmp .+72 ; 0x50
> > 8: 23 c0 rjmp .+70 ; 0x50
> > a: 22 c0 rjmp .+68 ; 0x50
> > c: 21 c0 rjmp .+66 ; 0x50
> > e: 20 c0 rjmp .+64 ; 0x50
- [avr-gcc-list] basic UART Transmit interrupt problem, Woodward, Mark P, 2003/07/02
- RE: [avr-gcc-list] basic UART Transmit interrupt problem, Woodward, Mark P, 2003/07/03
- RE: [avr-gcc-list] basic UART Transmit interrupt problem, Woodward, Mark P, 2003/07/03
- RE: [avr-gcc-list] basic UART Transmit interrupt problem, Woodward, Mark P, 2003/07/03
- RE: [avr-gcc-list] basic UART Transmit interrupt problem,
Woodward, Mark P <=
- RE: [avr-gcc-list] basic UART Transmit interrupt problem, Woodward, Mark P, 2003/07/03