Transcript

Robtica 0.1

Programacin rpida MicroC pro for avr

El contenido de este libro est protegido por la licencia de documentacin libre GFDL(GNU Free Documentation License)

Autores:

Indice

1. Hacer titilar un LED.

2. Hacer titilar todos los LEDs a la vez.

{

PORTB.B3=1; //Enciende el LED.

delay_ms(500);//Espera 500 mili segundos.

PORTB.B0=0; //Apaga el LED.

delay_ms(500);//Espera 500 mili segundos.

}

while(1)

{

}

/*Aclaraciones: Las etiquetas se utilizan por si se debe utilizar ese puerto para otra aplicacin, solo sea necesario cambiar en la etiqueta la posicin del nuevo puerto*/int main(void)

{

Config_Pin_Leds = 0XFF;//Se configuran Todos los Bits del Puerto B Como Salida

Leds = 0;

//Se inicializa el Puerto B en Ceros

//Ciclo Infinito

while(1)

{

_delay_ms(500);

//Retardo de 0.5 Segundos

Leds ^= 0XFF;

//Complemento el PB3 del puerto B, es decir, el cuarto bit }

}

} XE "3 Hacer una oruga:" 3 Hacer una oruga:void main() {

DDRB= 1; //Configura el puerto B3 como salida.

while(1) //Bucle infinito.

{

PORTB.B0=1; //Enciende el LED1.

delay_ms(500);//Espera 500 mili segundos.

PORTB.B1=1; //Apaga el LED2.

delay_ms(500);//Espera 500 mili segundos.

PORTB.B2=1; //Enciende el LED3.

delay_ms(500);//Espera 500 mili segundos.

PORTB.B3=1; //Apaga el LED4.

delay_ms(500);//Espera 500 mili segundos.

PORTB.B4=1; //Enciende el LED5.

delay_ms(500);//Espera 500 mili segundos.

PORTB.B5=1; //Apaga el LED6.

delay_ms(500);//Espera 500 mili segundos.

PORTB.B6=1; //Enciende el LED7.

delay_ms(500);//Espera 500 mili segundos.

PORTB.B7=1; //Apaga el LED8.

delay_ms(500);//Espera 500 mili segundos.

PORTB=0; //Apaga todos los LEDs.

}

}

Correciones

# define F_CPU 1000000UL

//Librerias#include

#include

#define

Config_Pin_Leds

DDRB//Se etiqueta el Registro de Configuracin del Puerto B#define

Leds

PORTB//Se etiqueta el Puerto B#define

Led_3

PB3

//Se etiqueta el cuarto Pin del Puerto B, es decir el PB3/*Aclaraciones: Las etiquetas se utilizan por si se debe utilizar ese puerto para otra aplicacin, solo sea necesario cambiar en la etiqueta la posicin del nuevo puerto*/int main(void)

{

Config_Pin_Leds = 0XFF;//Se configuran Todos los Bits del Puerto B Como Salida

Leds = 0;

//Se inicializa el Puerto B en Ceros unsigned char i;

//Ciclo Infinito

while(1)

{

//Este For recorre todos los 8 bits del puerto

for (i=0;i