Arduino Polska Forum
arduino uno problem z low power - Wersja do druku

+- Arduino Polska Forum (https://forum.arduinopolska.pl)
+-- Dział: Korzystanie z Arduino (https://forum.arduinopolska.pl/dzial-korzystanie-z-arduino)
+--- Dział: Piaskownica (https://forum.arduinopolska.pl/dzial-piaskownica)
+--- Wątek: arduino uno problem z low power (/watek-arduino-uno-problem-z-low-power)



arduino uno problem z low power - piotrasta - 01-06-2020

Witajcie
Mam problem z biblioteką (?)  "LowPower.h" https://github.com/rocketscream/Low-Power.
układ wygląda następującą płytka arduino uno + ds1307 który generuje przerwanie z częstotliwością 1Hz i to działa.
monitor portów szeregowego wyświetla  "Ni" po zresetowaniu modułu monitor portu szeregowego dopisuje ciągle kolejne "Ni" nie generując nowej daty "16:38:50.539 -> ⸮⸮NiNiNiNiNiNiNiNiNiNi"
Kod:
void loop(){

wyswietlenie();
b++;
attachInterrupt(0, budzenie, LOW);            //jeżeli na pinie 2 pojawi się stan niski to wybudź ATMegę
                                                   //i przenieś do klasy budzenie
Serial.println("spanie1 ;)");

   LowPower.powerDown(SLEEP_FOREVER, ADC_ON, BOD_ON); 
                                                  //wybieramy tryb Power-down i ustawiamy żeby ATMega spała
Serial.println("spanie2 ;)");                    //cały czas spała przy wyłączonom ADC i BoD do momentu wystąpienia
detachInterrupt(0);   



void budzenie()
Kod:
{
Kod:
      detachInterrupt(0);                         //ustawiamy debounce pinu 2, żeby układu nie "wybudził się" dwa razy
Kod:
  Serial.println("Nie spie 1;)");
Kod:
loop();
Kod:
 
Kod:
}



RE: arduino uno problem z low power - kaczakat - 01-06-2020

Wysłanie czegoś na UART trwa, daj mu czas. Komenda Serial.print() tylko przepisuje coś tam do bufora, z bufora przerwanie przepisuje na rejestr, w rejestrze siedzi krasnolud telegrafista i stuka w odpowiednim rytmie tekst na linie TX.


RE: arduino uno problem z low power - piotrasta - 02-06-2020

to rozumiem ale po uśpieniu przerwanie nie budzi go, a przerwanie jest generowane z ds1307


RE: arduino uno problem z low power - kaczakat - 02-06-2020

To pokaż kod, myślałem, że coś urywa przy wydruku, czyli zaraz po wywołaniu print przechodzi w kolejny sleep. Masz dwa loop w kodzie?