Hirdetés
- Google Pixel topik
- Xiaomi 15T Pro - a téma nincs lezárva
- Azonnali mobilos kérdések órája
- Vivo X300 Pro – messzebbre lát, mint ameddig bírja
- Milyen hagyományos (nem okos-) telefont vegyek?
- Minimális változásokat hozhat a Google Pixel 10a
- iOS alkalmazások
- Vivo X300 - kicsiben jobban megéri
- Hazai akkumulátorrekordra pályázik a OnePlus 15R
- Töltő már van a Galaxy S26 Ultrához
-
Mobilarena
Arduino hardverrel és szoftverrel foglakozó téma. Minden mikrovezérlő ami arduinoval programozható, és minden arduino program, board, és hardverrel kapcsolatos kérdések helye.
Új hozzászólás Aktív témák
-
lanszelot
addikt
válasz
lanszelot
#20315
üzenetére
Először is nagyon szépen köszönöm a segítséget mindenkinek

Elfelejtem, hogy van nekem egy Arduino Mega 2560, amit a készlethez kaptam

Azal azonnal meg lett a probléma.Digispark nem tudja kezelni a Rotary Encoder-t.
51% memoria használat van, tehát nem az a gond.
Ugyanaz a program Mega-n tökéletesen fut.
Digispark-on a fent említett problémát dobja.
Annyi a Digispark-on a változtatás, hogy a pin-eket módosítom így:#define led 0
#define CLK 2
#define DT 1Itt a program ami Mega-n gond nélkül működik:
/*LED input*/
#define led 13
/*rotary encoder input*/
// Rotary Encoder Inputs
#define CLK 2
#define DT 3
int counter = 0;
int currentStateCLK;
int lastStateCLK;
int keses = 1000;
String currentDir ="";
uint32_t lastms= 0;
void teker(){
if (millis() - lastms > 200)
{
Serial.print("Direction: ");
Serial.print(currentDir);
Serial.print(" | Counter: ");
Serial.println(counter);
Serial.print(" | késés: ");
Serial.println(keses);
lastms = millis();
if(digitalRead(DT) == currentStateCLK){
keses = keses+100;
}else{
if(keses > 100){
keses = keses-100;
}
}
// Remember last CLK state
lastStateCLK = currentStateCLK;
}
}
void setup() {
// Set encoder pins as inputs
pinMode(CLK,INPUT_PULLUP);
pinMode(DT,INPUT_PULLUP);
/*LED pin output*/
pinMode (led, OUTPUT);
// Setup Serial Monitor
Serial.begin(9600);
// Read the initial state of CLK
lastStateCLK = digitalRead(CLK);
/* meghívjuk az fv.-t ha LOW-ra húzod a pin-t */
attachInterrupt(0, teker, CHANGE);
}
void loop() {
// Read the current state of CLK
currentStateCLK = digitalRead(CLK);
/*red led on off*/
digitalWrite(led, HIGH);
delay(keses);
digitalWrite(led, LOW);
delay(keses);
}
Új hozzászólás Aktív témák
- Gamer PC - Z790 / i5 13600 KF / 32 GB / 2 TB / RTX 3080
- RDX Kara Heavy F6 Felnőtt Álló bokszzsák 183CM / max 150Kg, ingyenes szállítás + 1pár kesztyű
- MacBook Pro 17" i7 2.6 GHz 8GB RAM 240 GB SSD 8 ciklus az akkuban!
- Kindle Voyage REKLÁMMENTES könyvolvasó eladó (fizikai lapozógombok, keretmentes kijelző!)
- ÚJ! OnePlus Watch 3 43mm okosóra
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7500F 32/64GB RAM RX 7800 XT 16GB GAMER PC termékbeszámítással
- GYÖNYÖRŰ iPhone 12 mini 128GB Black -1 ÉV GARANCIA - Kártyafüggetlen, MS3878
- GYÖNYÖRŰ iPhone 12 mini 128GB Blue-1 ÉV GARANCIA - Kártyafüggetlen, MS3415 94% Akkumulátor
- 9 Év Alza Garancia! G.Skill Ripjaws M5 Neo RGB White DDR5 6000Mhz 2X16GB (32GB) DDR5 Memória
- Oyomba VGP-BPS26 utángyártott akkumulátor / 12 hó jótállás
Állásajánlatok
Cég: BroadBit Hungary Kft.
Város: Budakeszi
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


ekkold

