Led pisca Atmega128 (M128)

Neste artigo  aprendemos como colocar um Led a piscar, no presente artigo vamos explicar como colocar os led existentes da placa M128 a piscar alternadamente.
Atmega128-Board
Vamos abrir o AVRStudio e iniciar um projecto novo conforme viu na pagina anterior aparece um main, é aqui que vamos escrever o nosso codigo, mas antes disso precisamos de conhecer o hardware, deixo aqui o esquema da Board M128, como verificam no esquema aparece os Led’s no PortoA, conforme imagem 2.
LED
Para que estes Led’s funcionarem internamente temos de garantir que o Shunt P0, está conectado. Vamos configurar o PORTA como saídas, colocando o DDRA ao nível lógico alto DDRA=0xFF;  
Sabendo que Led1 esta no PA1 e o Led2 esta no PA2, vamos ver qual o código hexadecimal de modo a apenas configurar, estes específicos bits. Vejamos nesta pagina qual o código para 00000011 corresponde a 0X03, no entanto para que o led pisque durante um determinado tempo, vamos precisar de “chamar” a biblioteca de delay -> #include <util/delay.h> que será responsável pela rotina de temporização que vamos definir para cada Led.
Coloca-se o Codigo aqui, que contem um bug, teste-o porque é seguro e está funcional descubra-o qual o bug e comente!
Led Pisca
/*
 * NovoProjecto_ATMega128.c
 *
 * Created: 30-10-2017
 * Created by Norlinux
 *http://www.microelectronic.pt
 *https://www.facebook.com/MundoDosMicrocontroladores/
 *http://maquina.96.lt
 *Released under GPLv3.
 *Please refer to LICENSE file for licensing information.
 *which can be found at http://www.gnu.org/licenses/gpl.txt
*/

#include <avr/io.h>
#include <util/delay.h>

int main(void)
{
    DDRA=0x03;
    while(1)
    {
	    _delay_ms(200);
		PORTA^=PA1;
		_delay_ms(100);
		PORTA^=PA2;
    }
}
Após escrever o código, no AVRStudio, temos de o compilar:
Compilar
Depois abrimos o eXtreme Burner – AVR na pasta do extreme carregamos->OPEN pesquisamos na pasta onde foi criado o projecto AvrStudio, dentro desta pasta existe um subdirectorio “Debug”, dentro desta pasta existe um file .hex, que contém o código hexadecimal que foi compilado pelo AVRStudio.
Agora ligamos a USBASP ao Kit M128 e seleccionamos a tecla WriteAll do Extreme Burner, conforme a imagem,  está pronto a funcionar.

Extreme Write

2 comentários

    • Manuel on 2 Novembro, 2017 at 22:31
    • Responder

    O endereço 03 não é valido para os Leds

  1. Correcto 🙂
    Estranhamente a Board que adquiri, funciona deste modo 🙂

Deixe uma resposta

Your email address will not be published.

www.000webhost.com