First time off the Development Board

Go To Last Post
7 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

After programming and testing programs on the development board, I decided to try it on my protoboard. The issue I'm running into is that my ATtiny861 doesn't do anything when I power it up. The program I made for it is supposed to be a simple counter to test the output, it builds and uploads to the uC fine, but won't do anything when on the protoboard. Any ideas on how to fix this issue? (or any hints on how to test the ATtiny861 on the STK500?)

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Do you have a debugWIRE debugger available so you can examine the state of the AVR while on the protoboard. Are you using the RC internal oscillator or do need to worry if the external clock/crystal is setup correctly with compatible fuse settings.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Do you have both VCC and AVCC connected as well as GND and AGND?

Regards,
Steve A.

The Board helps those that help themselves.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

My resources are limited so I don't have a debugger handy. I'm using the internal RC Oscillator, and for the most part going by default settings (although I did double check the fuses). Heres the code for it if that helps,

;***************** Counter Test Program **********************





.device		ATtiny861
.include	"C:\Program Files\Atmel\AVR Tools\AvrAssembler2\Appnotes\tn861def.inc"

.def	TEMP	=R16
.def	TEMP2	=R17
.def	TEMP3	=R18


;**** DELAY *********************************************
.MACRO	DELAY
	ldi		TEMP2,@0	;Load value to be multiplied by 1mS

DELAY2:
	ldi		TEMP3,250	;Load value to be decremented through Loop

DELAY1_1MS:
	nop					;Use this to achieve a 4 cycle loop (1000
	dec		TEMP3		;Decrement 1mS Counter
	brne	DELAY1_1MS	;If not == 0, continue loop

	dec		TEMP2		;Decrement main Counter
	brne	DELAY2		;If not == 0, continue loop

.ENDMACRO
;********************************************************


.org	$0000	;Reset

	ldi		TEMP,high(RAMEND)	;Init Stack
	out		SPH,TEMP
	ldi		TEMP,low(RAMEND)
	out		SPL,TEMP

	ser		TEMP				;Set PORTA to output
	out		DDRA,TEMP

	clr		TEMP

;**** MAIN Loop ****
MAIN:
	inc		TEMP
	out		PORTA,TEMP
	DELAY	250
	rjmp	MAIN

Simulator seems to run the code fine.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I tied both ground and analog ground together along with the two Vccs. The only symptom I can give is that the reset pin (PB7) is giving an intermittent voltage (dim LED, probably around 2-3V).

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Tie the reset pin to VCC through a resistor.

Regards,
Steve A.

The Board helps those that help themselves.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Didn't work :(. Is there any way that a bad uC can still accept builds and be recognized by AVR Studio? Or does it completely fail when it goes bad?