Hirdetés
- urandom0: Száműztem az AI-t az életemből
- Luck Dragon: Asszociációs játék. :)
- MasterDeeJay: Harc a DDR5 árak ellen
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- GoodSpeed: Harcban az adathalászokkal - az AI tud segíteni?
- gban: Ingyen kellene, de tegnapra
- sziku69: Fűzzük össze a szavakat :)
- Elektromos rásegítésű kerékpárok
- droidic: [Memory Leak] Az agy defragmentálása
- GoodSpeed: 3I/Atlas: Üstökös vagy idegen civilizáció űrhajója?
Új hozzászólás Aktív témák
-
Domonkos
addikt
Using the DataHand System is Good for You
A belepesi pont a
main()fuggveny lesz.
A belseje ennek igencsak egyszeru, lenyegeben ez csak a peldaprogram egy kicsit strukturaltabban es a timer nelkul:int
main(void)
{
CLKPR = 0x80, CLKPR = 0;
init_ports();
usb_init();
while (!usb_configured()) {
const double freq_ms = 111;
set_led(NAP_LED, true);
_delay_ms(freq_ms);
set_led(NAP_LED, false);
_delay_ms(freq_ms);
}
greet_user();
run();
}Az orajelet erdemes a legelejen lerendezni. Ezt a prescaler allitasaval tudjuk megtenni. 16MHz-et kerunk.
Utana a port-okat erdemes egybol inicializalni. Bar ezt is csak egyszer kell megtenni, a kod konnyebben lesz ertheto ha azt egy kulon fuggvenybe szervezzuk ki.
Utana az USB kapcsolatot lehet kiepiteni. Itt mi tul sokat nem rakunk az egeszhez, a peldaprogramhoz kapott konyvtarbol hivogatunk 2 fuggvenyt, amig a kapcsolat ki nem epul. Annyi extra van csak az egeszben, hogy en szeretem latni, hogy eppen a folyamat melyik statuszban van, es mivel elegg kezenfekvonek talaltam erre a feladatra a billentyuzet egyik LED-jet villogtatni, igy amig az USB-re varunk, addig a NAP LED fog villogni ~4.5Hz-en. A kedvenc frekvenciamon.
Utana udvozoljuk a juzert a billentyuzet kepessegeinek megfeleloen. Ez a fuggveny egyebkent arra is jo lesz, hogy meg egy napi kontentet adjon a blognak, ha a csomagjaim tovabb kesnek.
Legvegul pedig belepunk arun()fuggvenybe, ami az egesz logikat fogja keretezni. Ez a fuggveny nem ter vissza, addig fut, amig az eszkozt ki nem huzzuk, vagy a Reset gombot meg nem nyomjuk. Ez lesz felelos a tovabbi feladatokert.
Egyszeru.
Extra info a tovabbiakhoz:
Bar a kod lenyegi resze az ide mind be lesz masolva, a boilerplate es trivialis dolgokat nem fogom mind kiirni. Ha valakinek megis kell, akkor azokat kulon kerdesre be tudom masolni, de szeretnem ha a blognak ez a resze is konnyen ertheto tudna maradni.
Szoval a kodnak nem feltetlen celja lesz az, hogy "jo" legyen. Elsodlegesen csupan annyi, hogy feltamassza a billencset es hogy jo alapja legyen ha kesobb tovabb szeretnem majd fejleszteni.
A sebesseg, meret, fogyasztas kibalanszolasa az olvaso feladata marad.
Ellenben a kerdesekre a meglevo kodhoz nyitott vagyok!
Esetleg ha van "feature-request", akkor azokat is megfontolom a meg meg nem irt reszekhez, de ha nem lesznek az sem baj. A blog vegere egy 6KRO firmware azert el fog keszulni.
Új hozzászólás Aktív témák
- HiFi műszaki szemmel - sztereó hangrendszerek
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Örömhír: nem spórol Európán a OnePlus
- OLED TV topic
- Autós topik
- Hivatalos a OnePlus 13 startdátuma
- Nintendo Switch 2
- Kezünkben a OnePlus 15 és az Oppo Find X9-ek
- iPhone topik
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- További aktív témák...
- GYÖNYÖRŰ iPhone 14 Pro Max 256GB Space Black - 1 ÉV GARANCIA, Kártyafüggetlen,MS3489
- HP Thunderbolt-dokkoló, 120W G4 (4J0A2AA)
- ÁRGARANCIA!Épített KomPhone Ryzen 7 9800X3D 32/64GB RAM RX 9070 XT 16GB GAMER PC termékbeszámítással
- Bomba ár! Lenovo ThinkPad X260 - i5-6G I 8GB I 256SSD I 12,5" HD I HDMI I CAM I W10 I Gari!
- LG 65G4 - 65" OLED evo - 4K 144Hz & 0.1ms - MLA Plus - 3000 Nits - NVIDIA G-Sync - FreeSync Premium
Állásajánlatok
Cég: ATW Internet Kft.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi




