- Apple iPhone 16 - ígéretek földje
- Apple Watch Sport - ez is csak egy okosóra
- Magyarországra jött az ultravékony S25 Edge
- Telekom mobilszolgáltatások
- Google Pixel topik
- Bemutatkozott a Poco X7 és X7 Pro
- Samsung Galaxy Ring - gyűrű-kúra
- Mi nincs, grafén akku van: itt a Xiaomi 11T és 11T Pro
- Xiaomi 13T és 13T Pro - nincs tétlenkedés
- Xiaomi 14 - párátlanul jó lehetne
Új hozzászólás Aktív témák
-
válasz
don_peter #4568 üzenetére
#define SOROK_SZAMA 4
#define NO_KEY 0
#define FIRST_ROW_BIT_POSITION 4
int oszlopok[] = { PORT_B4, PORT_B5, PORT_B6, PORT_B7 };
unsigned char get_key()
{
unsigned int i, k=0;
for( i=0; i < SOROK_SZAMA ; i++ )
{
SOROK = (1 >> ( FIRST_ROW_BIT_POSITION + i ) ); //Léptetjük a sorok szintjét
for ( j = 0 ; j < sizeof(oszlopok) ; j++ )
{
k++;
if(oszlopok[j] == MAGAS)
{
while( oszlopok[j] == MAGAS ); //Várakozunk a gomb felengedéséig
return k;
}
}
}
return NO_KEY;
}Vagyis az oszlopokat szepen tombbe lehet rakni, es akkor a ciklusbol tenylegesen ciklust lehet csinalni.
A k-t allitgato resznek semmi ertelme nem volt, mert csak arra allitotta, ami amugy is az erteke volt (illetve a vegen nullara, de azt meg nem hasznaltad sehol).
Es ha nem talal semmit, akkor nem ALACSONY-t adunk vissza, hanem valami sajat erteket, mert az logikailag ket kulonbozo dolog - akkor is, ha a konkret ertek pont ugyanaz (most - aztan lehet, hogy kesobb nem lesz az).
Illetve a kodba lehetoseg szerint nem illik mindenfele konstansokat elhinteni, ha valami konstans, akkor legyen az, C-ben tipikusan #DEFINE-nal.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- LG 55G4 - 55" OLED evo - 4K 144Hz & 0.1ms - MLA Plus - 3000 Nits - NVIDIA G-Sync - FreeSync Premium
- Xiaomi Redmi Note 13 Pro+ 512GB, Kártyafüggetlen, 1 Év Garanciával
- BESZÁMÍTÁS! Lenovo Legion Go S 32GB/1TB kézikonzol garanciával hibátlan működéssel
- 30+ típus!!! Lenovo ThinkPad, X1 carbon, X1 Yoga 5-12. gen 12,5-15" all-in-one, Workstation, stb.
- HP EliteBook 840 G8 i5-1135G7 32GB 1000GB 1 év garancia
Állásajánlatok
Cég: FOTC
Város: Budapest