Hirdetés
- Multimédiás / PC-s hangfalszettek (2.0, 2.1, 5.1)
- Vezetékes FEJhallgatók
- Beelőzte az iparágat a HBM4 tömeggyártásával a Samsung
- Épített vízhűtés (nem kompakt) topic
- Azonnali VGA-s kérdések órája
- OLED monitor topic
- Vezeték nélküli fülhallgatók
- AMD Navi Radeon™ RX 9xxx sorozat
- Milyen billentyűzetet vegyek?
- Milyen TV-t vegyek?
Új hozzászólás Aktív témák
-
válasz
don_peter
#4570
üzenetére
[ disclaimer: elso komoly programozasi dolgaim C64-en, assemblerben voltak, aztan utana modernebb mikrokontrollerekhez is volt szerencsem, szoval ismerem ezt a vilagot
]"#define FIRST_ROW_BIT_POSITION 4"
Így gyakorlatilag csak egy értéket adunk FIRST_ROW_BIT_POSITION nak és nem tudjuk később léptetni a mikrocsip lábait.De. Azert adunk hozza i-t. Vegyuk eszre, hogy a
SOROK = (1 >> ( FIRST_ROW_BIT_POSITION + i ) );
ugyanaz, mint a
SOROK = ( ( 1 >> FIRST_ROW_BIT_POSITION ) >> i ) );
ami meg jelen esetben nem mas, mint
SOROK = ( 0x08 >> i ) );
(Mondjuk elrontottam, mert FIRST_ROW_BIT_POSITION helyes erteke 3, nem 4)
"int oszlopok[] = { PORT_B4, PORT_B5, PORT_B6, PORT_B7 };"
Ezt ugyan nem próbáltam még ilyen formában, de van egy sejtésem, hogy nem jó mivel értéknét adjuk át a az egyes portok egyes lábait.Nem volt teljesen egyertelmu, hogy ezek micsodak, de ha memory mapped portok, akkor annyi valtozik, hogy nem int, hanem char * lesz az oszlopok[] tipusa.
"#define NO_KEY 0"
Gyakorlatilag ugyan az mint az én
"#define ALACSONY 0" definícióm.Legfeljebb a fordito szempontjabol, de a kodot hasznalo programozok szempontjabol egyaltalan nem.
Ugyanis ott az ALACSONY jol lathatoan a MAGAS parja, amit arra hasznalsz, hogy megvizsgald, hogy valamelyik bit hogyan all.
Viszont a getchar() egyaltalan nem egy bit allasat adja vissza, hanem egy karakterkodot, ami logikailag abszolut mas dolog."A ciklus végtelen pergésben van"
Nincs abban. Az eredeti kododban egyetlen ciklus van, ami pontosan negyszer fut le.
Ha arra gondoltal, hogy a getchar()-t kivulrol vegtelen ciklusban hivod, az meg nem szamit, mert azzal kezdodik, hogy lenullazod a k-t, vagyis nem tud 16 fole noni az erteke (es teljesen feleslegesen nullazod, mert auto valtozokent a stacken van az erteke, a kovetkezo hivasig nem orzodik meg - persze csinalhatnal belole staticet, de annak meg semmi ertelme nem lenne, mert nincs ra szukseged)."Egyszóval, ha sima C programnak tekintjük akkor tökéletes a példád, de sajnos itt figyelembe kell venni, hogy mikrokontrollert programozunk fel illetve a lábak szintjeit ellenőriztük."
Ilyen szempontbol ez tok sima C program, tenyleg nincs benne semmi extra. Persze, embedded cuccoknal lehetnek extra kovetelmenyek (pl. hogy ROM-ot lehessen belole forditani, vagyis pl. a konstans tomboket nem lehetne koddal inicializalni, csak statikus ertekekkel), akkor az hozhatna par dolgot, de igazabol az is sima C. A mikrokontroller-programozas tenyleg nem az a nagy varazslat

Ú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!
- sziku69: Fűzzük össze a szavakat :)
- Vicces képek
- Diablo II: Classic és Resurrected
- Forza Horizon 6 - Vár ránk Japán!
- Multimédiás / PC-s hangfalszettek (2.0, 2.1, 5.1)
- Beleremegett Hollywood Brad Pitt és Tom Cruise AI harcába
- Banggood
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- Vezetékes FEJhallgatók
- PlayStation 5
- További aktív témák...
- iPhone XR - 64GB - Független - Gyönyörű állapot - FACE ID OFF!
- iPhone XR - 64GB - Független - Hibátlan - Gyönyörű állapot
- DDR5 5600 Ramok eladóak 8 gb - 16 GB - 32 GB
- Eladó 4 db SZINTE ÚJ M.2 NVMe SSD (Gen4) 2 512GB + 2 256GB OEM
- Beszámítás! HP Elitebook 8 G1i 14 FHD notebook - Ultra 5 235U 16GB DDR5 256GB SSD Intel IGP W11
- BESZÁMÍTÁS! ASRock B550 R5 5600X 32GB DDR4 512GB SSD RX 6800 16GB Zalman S2 TG Seasonic 750W
- Lenovo ThinkPad X1 Carbon Gen 9 i7-1185G7 32 GB RAM Iris Xe 4k kijelző törésgarancia
- OnePlus Nord CE5 128GB, Kártyafüggetlen, 1 Év Garanciával
- Jó ÁRON ELADÓ! Üzleti HP Elitebook 1040 G9 Laptop! / i5-1245U 16GB 256GB FHD
- Eladó iPad Pro 12.9 tokok többféle színben és kivitelben!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
]
