Olá ,aqui está um exemplo de codigo para quem precisar fazer um sequencial de leds
//************************************************************************
//                             usando sequencial
//  Version : 1.0
//  microcontrolador : AVR ATMega8
//  Autor     : Aguivone
//  descrição  : acesso individual usando define
//  data : 16/09/2010.
//
//************************************************************************
#define F_CPU 1000000UL  // 1 MHz deve vir antes das interrupçoes
#include <avr/io.h> //standard include for ATMega16 # Include <avr/io.h> / padrão para incluir ATMEGA16
#include <util/delay.h>
#define liga_pino(x,y) x |= _BV(y)
#define desliga_pino(x,y) x &= ~(_BV(y))
#define alterna_pino(x,y) x ^= _BV(y)
#define pino_alto(x,y) ((x & _BV(y)) == _BV(y)) //o pino deve estar como entrada ,testa se está em nivel logico 1
///* _BV(a) is a macro which returns the value in hex corresponding to 2 to the power 'a'. / * _BV (A) é uma macro que retorna o valor em hexadecimal correspondente a 2 elevado à potência 'a'. Thus _BV(PX3) would be 0x08 or 0b00001000 */ Assim _BV PX3 () seria 0x08 ou 0b00001000 * /
int main (void)
{
    unsigned int valor = 50;
   // DDRB= 0xf7 ; //PORTB as OUTPUT DDRB = 0xff; / PORTB / as OUTPUT
    DDRB = 0xFF;
    DDRC = 0xFF;
    DDRD = 0xFF;
    PORTB = 0x00 ; //All pins of PORTB LOW PORTB = 0x00 / / Todos os pinos do PORTB LOW
    PORTC = 0x00 ; //All pins of PORTB LOW PORTB = 0x00 / / Todos os pinos do PORTB LOW
    PORTD = 0x00 ; //All pins of PORTB LOW PORTB = 0x00 / / Todos os pinos do PORTB LOW
    while (1)
    {
    //////////////////////////////////////////////
       liga_pino(PORTB,PB0);
    _delay_ms(1);
       desliga_pino(PORTC,PC5);
        _delay_ms(valor);
       liga_pino(PORTB,PB1);
    _delay_ms(1);
       desliga_pino(PORTB,PB0);
        _delay_ms(valor);
  liga_pino(PORTB,PB2);
  _delay_ms(1);
       desliga_pino(PORTB,PB1);
        _delay_ms(valor);
       liga_pino(PORTB,PB3);
    _delay_ms(1);
       desliga_pino(PORTB,PB2);
        _delay_ms(valor);
      
     liga_pino(PORTB,PB4);
  _delay_ms(1);
       desliga_pino(PORTB,PB3);
        _delay_ms(valor);
       liga_pino(PORTB,PB5);
    _delay_ms(1);
       desliga_pino(PORTB,PB4);
        _delay_ms(valor);
  liga_pino(PORTB,PB6);
  _delay_ms(1);
        desliga_pino(PORTB,PB5);
        _delay_ms(valor);
        liga_pino(PORTB,PB7);
     _delay_ms(1);
        desliga_pino(PORTB,PB6);
        _delay_ms(valor);
       ///////////////////////////////////////////////////////////
     liga_pino(PORTD,PD0);
    _delay_ms(1);
       desliga_pino(PORTB,PB7);
        _delay_ms(valor);
       liga_pino(PORTD,PD1);
    _delay_ms(1);
       desliga_pino(PORTD,PD0);
        _delay_ms(valor);
  liga_pino(PORTD,PD2);
  _delay_ms(1);
       desliga_pino(PORTD,PD1);
        _delay_ms(valor);
       liga_pino(PORTD,PD3);
    _delay_ms(1);
       desliga_pino(PORTD,PD2);
        _delay_ms(valor);
      
     liga_pino(PORTD,PD4);
  _delay_ms(1);
       desliga_pino(PORTD,PD3);
        _delay_ms(valor);
       liga_pino(PORTD,PD5);
    _delay_ms(1);
       desliga_pino(PORTD,PD4);
        _delay_ms(valor);
  liga_pino(PORTD,PD6);
  _delay_ms(1);
        desliga_pino(PORTD,PD5);
        _delay_ms(valor);
        liga_pino(PORTD,PD7);
     _delay_ms(1);
        desliga_pino(PORTD,PD6);
        _delay_ms(valor);
  ///////////////////////////////////////////
  liga_pino(PORTC,PC0);
    _delay_ms(1);
       desliga_pino(PORTD,PD7);
        _delay_ms(valor);
       liga_pino(PORTC,PC1);
    _delay_ms(1);
       desliga_pino(PORTC,PC0);
        _delay_ms(valor);
  liga_pino(PORTC,PC2);
  _delay_ms(1);
       desliga_pino(PORTC,PC1);
        _delay_ms(valor);
       liga_pino(PORTC,PC3);
    _delay_ms(1);
       desliga_pino(PORTC,PC2);
        _delay_ms(valor);
      
     liga_pino(PORTC,PC4);
  _delay_ms(1);
       desliga_pino(PORTC,PC3);
        _delay_ms(valor);
       liga_pino(PORTC,PC5);
    _delay_ms(1);
       desliga_pino(PORTC,PC4);
        _delay_ms(valor);
       }
}
não dá para enxergar nada com esse azulão
ResponderExcluirObrigado
ResponderExcluirbom ao menos no meu pc não vi problemas,mas obrigado pela sugestão,vou verificar em outros pcs!
ResponderExcluir