via Wykop Mobilny (Android)
  • 6
@Scallar: może zaraz linuxa musi postawić ( ͡° ͜ʖ ͡°) Zrób w obsłudze przerwania zmienną pomocniczą a w pętli loop sprawdzaj czy się zmieniła, obsłuż przerwanie i zresetuj zmienną. Btw w uproszczeniu RTOS robi to samo tylko systemowo. Jeśli to wysyłanie jest na jakimś nowszym procku możesz spróbować zrobić to przetrwaniu po DMA
Potrzebuję pomocy z #arduino Chcę się przesiąść z płytki Arduino Uno na Nano Ever. Program działał na tym pierwszym- chcę tylko zmienić płytkę. Wyrzuca mi błąd podczas kompilacji na Nano. Program nie jest mój a i z IDE niewiele mam do czynienia bo na co dzień nie bawię się Arduino. Doinstalowałem sobie sterowniki i zrobiłem update bibliotek.
Czy to tylko kwestia zmiany pinów czy może innych bibliotek/komend powinienem używać? Nie wiem nawet
Ale czy to możliwe, że zwykłe biblioteki od czytania pinów się aż tak różnią?


@To_ja_moze_pozamiatam: tak jak wyżej napisał @QBA__ w tych nowych ATmegach nie jest już tak prosto jak było kiedyś.
1) Zawsze wybiera się, którą płytkę się programuje. Jeśli biblioteki są napisane poprawnie to mają w sobie odpowiednie mechanizmy, które sprawiają, że kompilacja dla danej płytki przebiega trochę inaczej (i kończy się sukcesem). Podstawowe elementy języka (takie jak czytanie
@To_ja_moze_pozamiatam:

No czemu w moim przypadku kompilator sobie tego samodzielnie nie zamienia?


Mireczku widzę że jesteś typowym programistą wysokopoziomowymi i nie wiesz jak to chodzi pod spodem Już Ci wyjaśnię(choć sam na arduino najwyżej coś szybko do testu uruchomię, normalnie piszę w czystym C)
Jest tak:

W jakimś ogólnym arduinowym ogólnym pliku nagłówkowym:
Arduino15\packages\arduino\hardware\megaavr\1.8.7\cores\arduino/api/Common.h

jest zdefiniowane macro:

#define bitRead(value, bit) (((value) >> (bit)) & 0x01)


W starych AVRach rejestr odpowiedzialny za