Files
Arduino/ATTINY13_BLINK_ms/ATTINY13_BLINK_ms.ino
Jérôme Delacotte 7b30d6e298 first commit
2025-03-06 11:15:32 +01:00

47 lines
890 B
C++
Executable File

#include <avr/io.h>
#include <util/delay.h>
#include <avr/sleep.h>
#include <avr/power.h>
const int ledPin = 4; //1;
//#define F_CPU 16000000UL
void sleepNow() {
{
// BODCR |= (1<<BODS)|(1<<BODSE); //Disable Brown Out Detector Control Register
ACSR |= (1<<ACD); //Analog comparator off
ACSR = ADMUX = ADCSRA = 0;
}
WDTCR |= (1<<WDP3) ; //Watchdog set for about 4 seconds
// Enable watchdog timer interrupts
WDTCR |= (1<<WDTIE);
sei(); // Enable global interrupts
set_sleep_mode(SLEEP_MODE_PWR_DOWN);
sleep_mode();
sleep_disable();
}
void setup() {
DDRB = 0b000001; // all but PB0 INPUT, want to use PB0 ...
PORTB = 0b000000; // all LOW
pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, LOW);
}
void loop() {
digitalWrite(ledPin, HIGH);
_delay_ms(10);
digitalWrite(ledPin, LOW);
// _delay_ms(300);
sleepNow();
}