Dobry vecer. Chtel bych se zaptat zkusenejsich. Chtel bych zacit programovat AVR v C. Hledam nejakou dobrou ucebnici. Mam AVR programovani v jazyce C ale aspon pro me je strasne nesrozumitelna autor tam skoro nic nepopisuje. Nevite nekdo o necem jinem??
Dekuji za reakce
Fórum › Mikrokontroléry
Jak zacit s programovanim
To KIIV : no spis neumim nez umim. Nechtel bych se ucit cely C pokud to neni bezpodminecne nutny. Spis jen to co se tyka mikroprocesoru. Vytvaret sw na pc se ani nebudu pokouset :-) to uz by bylo uplne mimo me ...
prave pro mikrokontrolery je to uz opravdu "low level" programovani.. tj. musis opravdu dukladne znat chovani jazyka..
neni treba potreba dynamicke alokovani pameti - ale ukazatele urcite vyuzijes..
nekdy se mohou hodit struktury.. ikdyz casto to opravdu neni ...
neskutecne dulezite jsou bitove operatory .. | & << >> ^ ~ a ciste binarni || && .....
tj. musis hodne dukladne prolezt podminky, booleovu algebru, zaklady elektroniky a cislicovych obvodu (po prakticke strance tez)
dynamicke vlastnosti obvodu, prechodove jevy, vliv parazitnich indukcnosti, parazitnich kapacit (cim vetsi frekvence tim dulezitejsi)
a hlavne velice dukladne prolezt datove listy procesoru ktery programujes.. registry, ktere upravuji chovani jednotlivych periferii..
To KIIV : z elektronikou jako takovou nou problem je me jasny datasheety atd bez toho nic nejde. ale ja spis mluvim o tom ze v asm je napr instrukce kdyz ma podmince nulu skoci kdyz ne neskoci to je jasny ale v c treba if ... jo podminka splnena ale co to udela??? a co to udela potom??? nebo kdyz v te ucebnici je napsany ze instrukce nebo nejakej prikaz vraci 1 kde?? kam??? v cem???? z toho si rvu vlasy :-) a nemuzu se toho docist.
instrukce sou dobre popsany i v nekterych datovych listech.. asi presne ten o instrukcni sade..
v C je to jednodussi.. funguje to vetsinou tak, ze spousta operaci - hlavne ty, ktere upravuji data, nastavuji nekolik bitu ve status registru.. carry, zero flag a podobne.. a podle toho jak sou nastaveny po operaci, lze pouzit podminene skoky
no treba na avrfreaks.net jsou v diskuznim foru v sekci tutorialu docela podrobne navody..
asi si me nerozumel napr.: int min(int a,int b) popis je vraci mensi z celych cisel a.b. No ale kam ji vraci?? a jakym zpusobem? jako rekne ze a je mensi nebo uda hodnotu a. no proste tapu. nejhorsi na tom celym je ze by clovek dal i nejakej peniz za kurz ale ten jsem taky nenasel.
jo takhle.. no funkci se predavaji parametry pres zasobnik.. nekdy jsou od zadu, nekdy postupne.. ale o to se stara samo C
a navratova hodnota, ktera se vraci pomoci return se obvykle vraci v nekterych registrech (tech pro libovolne pouziti..) ..
priklad nadevse:
int neco = min(1,10);
navratova hodnota v tom vyrazu nakonec nahradi cele to volani funkce.. tj. zjisti se jakou hodnotu ma s danymi parametry funkce min a pote se s touto hodnotou pocita dale.. (v tomto pripade se jen priradi do promenne neco)
pokud bude napriklad int neco = min(2,6) + min(30,4); tak se nejprve zjisti hodnota prvni funkce a aby se to dalo secist musi se zjistit i hodnota druhe funkce
tedy postupne:
int neco = 2 + min(30,4);
dalsi krok:
int neco = 2 + 4;
a nakonec se to secte a priradi .. neco= 6;
tak pokud je tam neco = ... rovna se chapu to je jasny ale to min je prikaz C??? kecal jsem ted jsem nejaky kurzy nasel dokonce Brne coz je supr ... tak pujdu asi touto cestou protoze ja se vzdycky na necem seknu a nemuzu se pres to prekousat a to mas takovy blbiny. Kazdopadne dííík za reakce
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Jak začít, začít vůbec s tímto? — založil Av3ng
Jak začít? — založil
Jak začít s c — založil bohetik
Moderátoři diskuze