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