Atmega1280: ADC-Interrupt-Vector is not called

Guest #2197379
Hello,

during first experiments with an Atmega1280 (powered with 5V at 16Mhz) I 
encountered one problem with the ADC-interrupt, although I followed the 
specification :
The interrupt vector is not called although I enabled ADC functionality, 
it's interrupt and the global interrupt, additionally I set the 
ADSC-flag to
initiate the conversion, register settings:

DIDR0 = 0xFF ;    -> digital inputs disabled
DIDR2 = 0xFF ;    -> digital inputs disabled
ADCSRA = 0x8F;    -> ADEN, ADIE , prescaler 128, ADSC set at conversion 
start
ADCSRB = 0 ;
ADMUX = 0 ;       -> AREF used

Did I miss any specification detail ?
It would be very helpful if someone could give me a hint what might be 
the cause for this.
Guest
Finally the root cause could be identified as a RAM mapping problem 
allocating the used application's RAM into the extended register 
section.
This issue is solved now just by adding the following options to the 
linker:
-Wl,-Map=$(TARGET).map -Wl,-Tdata,0x800200 -o $@ $(OBJS).

Reply

A question of your own? This thread is over 15 years old. Ask it in a thread of its own – more people read along there, and it gets answered more often and sooner.

Start a new thread

A fix, an addition or feedback on this thread? Then reply here.

Formatting
  • [c]C-Code[/c]
  • [code]code in other languages, ASCII drawings[/code]
  • [math]formula (LaTeX syntax)[/math]
  • [[Title]] – link to an article
  • Link to another post: right-click its post ID (#8078628), copy the address, paste it into the text

More about formatting

Post long source code as an attachment, not in the text.

Already registered? Log in

Not shown to anyone. We send you a link; your post appears once you confirm it there.

By submitting you create a free account and accept the terms of use.