You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Current »

clone of Digispark Pro

colorUSBBoardProccessorProgMemMIPSSPII2CUARTidle PWR
blackMicroDigispark Pro(Default - 16Mhz)ATTINY16716KB0.5KB162110.109W

Aliexpress: ~3$


Blink Example

Power consumption: 0.108-0.120W

// the setup routine runs once when you press reset:
void setup() {                
  // initialize the digital pin as an output.
  pinMode(1, OUTPUT); //on board LED 

// the loop routine runs over and over again forever:
void loop() {
  digitalWrite(1, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);               // wait for a second
  digitalWrite(1, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);               // wait for a second

Low Power Blink Example

Power Consumption: 0.038-0.051W

#include <avr/wdt.h>
#include <avr/sleep.h>
#include <avr/interrupt.h>
#define adc_disable() (ADCSRA &= ~(1<<ADEN)) // disable ADC (before power-off)
#define adc_enable()  (ADCSRA |=  (1<<ADEN)) // re-enable ADC
void setup()
  // Power Saving setup
  for (byte i = 0; i < 6; i++) {
    pinMode(i, INPUT);      // Set all ports as INPUT to save energy
    digitalWrite (i, LOW);  //
  adc_disable();          // Disable Analog-to-Digital Converter
  wdt_reset();            // Watchdog reset
  wdt_enable(WDTO_1S);    // Watchdog enable Options: 15MS, 30MS, 60MS, 120MS, 250MS, 500MS, 1S, 2S, 4S, 8S
  WDTCR |= _BV(WDIE);     // Interrupts watchdog enable
  sei();                  // enable interrupts
  set_sleep_mode(SLEEP_MODE_PWR_DOWN); // Sleep Mode: max
void loop()
  pinMode(1, OUTPUT); 
  digitalWrite(1, HIGH);
  //Set the LED pins to LOW. This turns it off
  pinMode(1, OUTPUT); 
  digitalWrite(1, LOW);
ISR (WDT_vect) {

  • No labels