/*
Pisca LED no Franzininho usando rotinas de assembly e AVR libc.
Para mais detalhes veja em:
http://forum.arduino.cc/index.php?topic=159572#msg1194604
ATtiny85 16MHz
╔═══╦═══╗
(RESET)(ADC0)(PB5) -║1 8║- (VCC)(+)
(XTAL1)(ADC3)(PB3) -║2 7║- (PB2)(A1)(SCK)(SCL)(ADC1)
(XTAL2)(ADC2)(PB4) -║3 6║- (PB1)(MISO)(OC0B)(OC1A)
(GND)(-) -║4 5║- (PB0)(MOSI)(SDA)(OC0A)
╚═══════╝
┍━━━━━━━━━━━━━━━━━━━━━━━━━━┑
│ Dê uma olhada no blink.S │
┕━━━━━━━━━━━━━━━━━━━━━━━━━━┙
*/
#include <util/delay.h>
#define F_CPU 16500000L // Frequencia de clock que o mcu está trabalhando
/**
Essa é a função principal onde é iniciada aplicação
*/
int main(void)
{
start(); // Rotina do arquivo assembly blink.S
// O programa ficará nesse loop enquanto a placa estiver ligada
while (1)
{
led_high(); // Rotina do arquivo assembly blink.S
_delay_ms(1000); // Aguarda por 1 segundo
led_low(); // Rotina do arquivo assembly blink.S
_delay_ms(1000); // Aguarda por 1 segundo
}
return (0); // Necessário um retorno (pois a função retorna int) mesmo que a função nunca retornará
}