avr-chat
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [avr-chat] AVR Test


From: Chris Spencer
Subject: Re: [avr-chat] AVR Test
Date: Mon, 29 May 2006 21:41:16 -0400
User-agent: Thunderbird 1.5.0.2 (X11/20060501)

Yeah, the led is currently off. Even if I change the program to just set all of portd high then exit, the led still stays off.

Chris

address@hidden wrote:
Chris,
I did not tested however,

   PORTD &= ~(1<<PD1); /* LED off */

Should turn off the led.

Javier




Chris Spencer <address@hidden>@nongnu.org con fecha 29/05/2006
09:22:24 p.m.

Enviado por:      address@hidden


Destinatarios:    address@hidden
CC:
Asunto:  [avr-chat] AVR Test


I was able to get my dev environment setup (thanks Galen) and
successfully write a hex file to my atmega48. However, my test program
doesn't make the led blink. Below is my c code and makefile. Does anyone
see any glaring problems? Is my makefile setting (or not setting) the
appropriate fuse bits? I'm testing on two Pololu Baby Orangutan boards
(http://www.pololu.com/products/pololu/0215/), so I'm pretty confident
it's not a hardware issue. All lights are green on the programmer.

#include <avr/io.h>

/* at 8 MHz we get 1us per 8 instructions */
inline void delayus() { asm volatile("nop\nnop\nnop\nnop\n"
                                        "nop\nnop\nnop\nnop"); }

void delayms(uint16_t millis) {
    uint16_t loop;
    while ( millis ) {
    loop = 100;
    while (loop) {
        /* 20us of delays */
        delayus(); delayus(); delayus(); delayus(); delayus();
        delayus(); delayus(); delayus(); delayus(); delayus();
        loop--;
    }
    millis--;
    }
}

int main(void) {
    DDRD |= 1<<PD1; /* set PD1 to output */
    while(1) {
    PORTD |= 1<<PD1; /* LED on */
    delayms(1000);
    PORTD &= !(1<<PD1); /* LED off */
    delayms(1000);
    }
    return 0;
}

CC=avr-gcc
CFLAGS=-g -Os -Wall -mcall-prologues -mmcu=atmega48
OBJ2HEX=avr-objcopy
TARGET=blink
PART=m48
PROGRAMMER=avrisp2

program: $(TARGET).hex
    avrdude -p $(PART) -c $(PROGRAMMER) -P usb -e flash:w:$(TARGET).hex

%.obj: %.o
    $(CC) $(CFLAGS) $< -o $@

%.hex: %.obj
    $(OBJ2HEX) -R .eeprom -O ihex $< $@

clean:
    rm -f *.hex *.obj *.o



_______________________________________________
AVR-chat mailing list
address@hidden
http://lists.nongnu.org/mailman/listinfo/avr-chat





reply via email to

[Prev in Thread] Current Thread [Next in Thread]