- Everest / AIDA64 topik
- Azonnali VGA-s kérdések órája
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Kormányok / autós szimulátorok topikja
- Fujifilm X
- Elképesztően drága az új Ryzen Threadripper PRO generáció
- Iszonyatos mennyiségű hulladékkal járhat a Windows 10 terméktámogatásának vége
- Soundbar, soundplate, hangprojektor
- Házimozi haladó szinten
- Milyen TV-t vegyek?
-
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
-
quint
aktív tag
válasz
mate1396 #6015 üzenetére
Volt időm egy picit elszórakozni vele. Ugyanazt csinálja, 1 és 15 között számol és binárisan kijelzi az eredmény a LED-eken (a DecimalToBin elnevezést megtartottam, de nem túl szerencsés).
#define DEBOUNCING_TIME 100
unsigned long last_it_time = millis();
int x = 0;
volatile boolean pressing = true;
void buttoonPressed(){
if ((millis()-last_it_time) > DEBOUNCING_TIME) {
last_it_time = millis();
pressing = true;
}
}
void setup() {
for (int i=8; i<12; i++) {pinMode(i, OUTPUT);}
attachInterrupt(0,buttoonPressed,FALLING);
}
void DecimalToBin(int decimal){
byte mask = 1;
for(int i = 11; i > 7; i--) {
if (decimal&mask) {digitalWrite(i,HIGH);} else {digitalWrite(i,LOW);}
mask = mask << 1;
}
}
void loop() {
if (pressing) {
if (++x > 15) x=1;
pressing = false;
DecimalToBin(x);
}
// bármi más tevékenység
}
A kezdeti x és pressing érték azért 0 és true, hogy az első lefutásnál is megfelelő legyen a kijelzés (tulajdonképpen a loop első lefutása fejezi be az inicializálást).
Új hozzászólás Aktív témák
- Gigabyte B450M S2H + Ryzen 5 1400 kisebb-nagyobb hibával
- Nokia 105 4G (2023) charcoal, Nokia 110 4G (2023) midnight blue
- ASRock B550 PG Velocita + Ryzen 5 3600 + 32GB (4x8GB) DDR4 3600Mhz CL18
- Philips 58PUS8505 Smart LED Televízió,146 cm, 4K Ultra HD ,Android, Ambilight, HDR10+ KIJELZŐHIBÁSAN
- Canon EOS 250D kiegészítőkkel, táskával (CSAK 200 expoval !!! )
- Okosóra felvásárlás!! Samsung Galaxy Watch 5 Pro, Samsung Galaxy Watch 6 Classic
- Azonnali készpénzes Microsoft XBOX Series S és Series X felvásárlás személyesen/csomagküldéssel
- MAGYAR Larousse Enciklopédia 1-2-3 egyben 2999 ft
- BenQ PD-2700-U Monitor - Designer 4K 27"
- BESZÁMÍTÁS! 2TB Kingston KC3000 NVMe SSD meghajtó garanciával hibátlan működéssel
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest