Hirdetés
- OLED TV topic
- Pánik a memóriapiacon
- Kormányok / autós szimulátorok topikja
- A fával keres kapcsolatot a Gigabyte új alaplapja
- AMD Navi Radeon™ RX 7xxx sorozat
- Mini PC
- ASUS blog: vezeték nélküli ROG egerek, akár profi babérokra törőknek is
- Rémisztő árakkal szembesülnek a notebookgyártók az új mobil platformoknál
- Hisense LCD és LED TV-k
- AMD Navi Radeon™ RX 9xxx sorozat
-
PROHARDVER!
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
-
Imy
veterán
Köszi, kipróbáltam. A fordító hibaüzenetet dob, és a bekötés honnan derül ki?
Ez a jelenlegi program, de lehet valamit rosszul csináltam:
#define ROTE_CLK GPIO_NUM_xx#define ROTE_DT GPIO_NUM_xx#define ROTE_SPCTM 50000 // speed control time limit, not defined no speedctrlvolatile int32_t rotval = 0;void IRAM_ATTR isrrot() {volatile static uint8_t pinsta = 0x3, cwi = 0, ccwi = 0;volatile static uint8_t cwexp[] = {0xD, 0x4, 0x2, 0xB};volatile static uint8_t ccwexp[] = {0xE, 0x8, 0x1, 0x7};int32_t rvchg;#ifdef ROTE_SPCTMvolatile static uint32_t tc = 0, tm = 0;uint32_t ctm, td;#endifpinsta = (pinsta << 2) & 0xf;if (digitalRead(ROTE_DT)) pinsta |= 0x2;if (digitalRead(ROTE_CLK)) pinsta |= 0x1;if (pinsta == cwexp[cwi]) cwi++;else if (pinsta == ccwexp[ccwi]) ccwi++;if (cwi == 0x4 || ccwi == 0x4){if (cwi == 4) rvchg = 1;else rvchg = -1;pinsta = 0x3; cwi = 0; ccwi = 0;#ifdef ROTE_SPCTMctm = micros();td = ctm - tm;tm = ctm;if (td < ROTE_SPCTM / 2) rvchg *= 7;else if (td < (ROTE_SPCTM * 2) / 3) rvchg *= 4;else if (td < ROTE_SPCTM) rvchg *= 2;#endifrotval += rvchg;}} // isrrotint16_t getrotv() {static int32_t lval = 0;int32_t cval = rotval;int16_t rotc = 0;if (lval != cval) {rotc = cval - lval;lval = cval;}return (rotc);} // getrotvvoid inirotein(gpio_num_t clk, gpio_num_t dt) {pinMode(clk, INPUT);pinMode(dt, INPUT);attachInterrupt(digitalPinToInterrupt(clk), isrrot, CHANGE);attachInterrupt(digitalPinToInterrupt(dt), isrrot, CHANGE);} // iniroteinvoid setup() {inirotein(ROTE_CLK, ROTE_DT);}void loop() {Serial.print("Encoder_positionp = "); Serial.println(rotval);}
Új hozzászólás Aktív témák
- BESZÁMÍTÁS! ASUS ROG Z790 i9 14900KF 32GB DDR5 1TB SSD RTX 5070TI 16GB NZXT H6 Flow RGB 1200W
- 175 - Lenovo Legion Pro 7 (16IAX10H) - Intel Core U9 275HX, RTX 5070Ti
- BESZÁMÍTÁS! MSI B450M R5 5600X 32GB DDR4 500GB SSD RX 6800 16GB Zalman Z1 PLUS Cooler Master 750W
- Konzol felvásárlás!! Playstation 5, Playstation 5 Pro
- Xiaomi Mi 10T Pro 256GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi
ekkold

