Public feed #377794

Unnamed

public text v1 · immutable
Raw Edit
·published 2007-03-02 00:53 UTC
rendered paste body
.include "m128def.inc"

.org 0
	rjmp	reset

reset:
	; setup stack pointer
	ldi		r16, low(RAMEND)
	out		SPL, r16
	ldi		r16, high(RAMEND)
	out		SPH, r16

	ser		r16
	clr		r2

	; disable analog comparater
	ldi		r20, (1<<ACD)
	out		ACSR, r20

	out		DDRA, r16
	out		DDRB, r16
	out		DDRC, r16
	out		DDRD, r16
	out		DDRE, r16
	sts		DDRF, r16
	sts		DDRG, r16

loop:
	out		PORTA, r16
	out		PORTB, r16
	out		PORTC, r16
	out		PORTD, r16
	out		PORTE, r16
	sts		PORTF, r16
	sts		PORTG, r16
	rcall	delay
	out		PORTA, r2
	out		PORTB, r2
	out		PORTC, r2
	out		PORTD, r2
	out		PORTE, r2
	sts		PORTF, r2
	sts		PORTG, r2
	rcall	delay
	rjmp	loop

delay:
	ldi		r19, 1
delay_1:
	ldi		r18, 0
delay_2:
	ldi		r17, 0
delay_3:
	dec		r17
	brne	delay_3
	dec		r18
	brne	delay_2
	dec		r19
	brne	delay_1
	ret