Atmel řady 51

Diskuze a poradna o programátorech a programování různých obvodů

Moderátor: Moderátoři

Zpráva
Autor
Uživatelský avatar
jiriS
Příspěvky: 609
Registrován: 14 led 2014, 00:00
Bydliště: Ašsko
Kontaktovat uživatele:

#16 Příspěvek od jiriS »

Koukám, že jsem trochu způsobil malou bitvu mezi C a JSA. To jsem nechtěl, jen jsem si povzdechl, že mi nějak nejde do hlavy...
Jirka
Uživatelský avatar
ZdenekHQ
Významný člen
Příspěvky: 25519
Registrován: 21 črc 2006, 00:00
Bydliště: skoro Brno
Kontaktovat uživatele:

#17 Příspěvek od ZdenekHQ »

Jestli Ti kvůli "JSA" chodí PM, tak to je vážně jak v blázinci. Proč to nenapíšou sem?

Stejně jsem to sem zavlekl já, ale snažím se jen upozorňovat na terminologii, nic víc.

Samozřejmě odmítám nějak "nutit" uživatele EB používat přesné výrazy, jsme na Bastlírně - třeba termín "rezistor" místo "odpor", protože je to svým způsobem taky blbost (název v.s. fyzikální veličina), ale je dobrý to vědět kvůli šťouralům... :D
Pro moje oslovení klidně použijte jméno Zdeněk
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?
]
Uživatelský avatar
Habesan
Příspěvky: 7377
Registrován: 12 led 2009, 00:00
Bydliště: Plzeňsko
Kontaktovat uživatele:

#18 Příspěvek od Habesan »

Ale byla by to inspirace na Apríla, vyhlásit Bastlírnu jako jazykovědné fórum, a známkovat příspěvky (jedna chyba, stupeň dolů).
Sháním hasičák s CO2 "sněhový", raději funkční.
(Nemusí mít platnou revizi.)
(Celkově budu raději, když se to obejde bez papírů.)
Uživatelský avatar
jiriS
Příspěvky: 609
Registrován: 14 led 2014, 00:00
Bydliště: Ašsko
Kontaktovat uživatele:

#19 Příspěvek od jiriS »

Ale je pravdou, že jsem chybně použil termín assembler já, a myslel jsem tím právě JSA. Upozornění je v pořádku, protože jsem chybným použitím tohoto termínu napsal blbost.
Jinak považuju za nesmyslné se dohadovat,který jazyk je lepší a který horší- všechno má svoje + i - a každý programátor to má taky jinak naučené a zažité.
Jirka
Uživatelský avatar
ZdenekHQ
Významný člen
Příspěvky: 25519
Registrován: 21 črc 2006, 00:00
Bydliště: skoro Brno
Kontaktovat uživatele:

#20 Příspěvek od ZdenekHQ »

V "konečných stádiích" programování v JSA/ASM (jako třeba já) skončíš třeba tak, že si složitější či speciální příkazy definuješ pomocí maker a tím se vlastně dostaneš o úroveň výš. Výhoda je, že jejich změna se Ti projeví naráz a všude, což je mimochodem obrovská výhoda v případě chyby. V postatě si tím vyrobíš vlastní překladač.

Ale například v rámci "časové kompatibility" - t.j. kvůli kritickému časování, které je třeba základem celého programu - stejně nemůžeš přejít na obecně vyšší programovací jazyk. Navíc bys to musel celý napsat znovu a ztratil by jsi zpětnou kompatibiltu.
Pro moje oslovení klidně použijte jméno Zdeněk
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?
]
Uživatelský avatar
Atlan
Příspěvky: 4514
Registrován: 10 kvě 2004, 00:00
Bydliště: Košice

#21 Příspěvek od Atlan »

Preco by si nemohol, kriticku cast napises v asm a zbytok v Cku.
Uživatelský avatar
ZdenekHQ
Významný člen
Příspěvky: 25519
Registrován: 21 črc 2006, 00:00
Bydliště: skoro Brno
Kontaktovat uživatele:

#22 Příspěvek od ZdenekHQ »

Ano, ale u mě by to bylo C vložené do JSA... :D

Navíc přepisovat odladěných 20 až 30 tisíc řádků v JSA (samozřejmě počet je včetně komentářů) do C je dost časově náročný.
Pro moje oslovení klidně použijte jméno Zdeněk
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?
]
Uživatelský avatar
jiriS
Příspěvky: 609
Registrován: 14 led 2014, 00:00
Bydliště: Ašsko
Kontaktovat uživatele:

#23 Příspěvek od jiriS »

Makra používám, taky mám v JSA nějaký knihovny- dělení jsem někde sehnal, něco jsem si napsal sám, něco převzal. Výhody C vidím- ono to JSA kódování je vlastně dost úmorný a u programů nad určitou mez vlastně (skoro) nemožný.
Ale do hlavy to neleze a neleze a protože se tím neživím a živit nebudu (k programování jednočipů jsem se dostal až v padesáti), schází i dostatečně silná motivace.
Možná by pomohl občasný pokec s někým znalým, ale děti pracují na jiných úrovních, vnuk ještě ani nemluví a manželka se se mnou o programování jednočipů prostě nebaví :D
Jirka
Uživatelský avatar
ZdenekHQ
Významný člen
Příspěvky: 25519
Registrován: 21 črc 2006, 00:00
Bydliště: skoro Brno
Kontaktovat uživatele:

#24 Příspěvek od ZdenekHQ »

Určitě - na soft typu změř teplotu a pošli na displej je Céčko ideální, protože je (zjednodušeně řečeno) nezávislý na procesoru.

Pokud je to procesor typu BIOS - t.j. nějaké řízení konkrétní desky, pak je (alespoň podle mě) JSA/ASM výhodnější.
Pro moje oslovení klidně použijte jméno Zdeněk
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?
]
Uživatelský avatar
ZdenekHQ
Významný člen
Příspěvky: 25519
Registrován: 21 črc 2006, 00:00
Bydliště: skoro Brno
Kontaktovat uživatele:

#25 Příspěvek od ZdenekHQ »

jiriS píše:...manželka se se mnou o programování jednočipů prostě nebaví...


Ale baví. Jde o bitovou komunikaci, ani o tom neví. Uvaří, neuvaří, bude sex či nebude - a jak do toho zavleče jednoduché podmínky, pořád jsi ještě v JSA.... :D
Pro moje oslovení klidně použijte jméno Zdeněk
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?
]
Uživatelský avatar
jiriS
Příspěvky: 609
Registrován: 14 led 2014, 00:00
Bydliště: Ašsko
Kontaktovat uživatele:

#26 Příspěvek od jiriS »

Teď řeším měření teplot na dvou místech, s možným rušením, tedy průměrovat řadu měření, chybná měření vyloučit, k tomu měřit napětí, hlídat mezní hodnoty a na ně upozorňovat, něco průběžně zobrazovat...
K tomu hlídat několik dalších stavů, reakce na ně, na tlačítka.
Dostatečně blbuvzdorný atd..
Jediná rozumná cesta byla v 10ms intervalech opakovaně měřit, kontrolovat, reagovat; každý proces se musí dělit podle fáze, ve které se zrovna nachází tak, aby byl správně přerušený nebo dokončený a přitom jen s omezeným přiděleným časem...
Nedokážu si představit, jak by to v C bylo možné časovat, leda nějakou tou kombinací, zároveň ale musí programátor C-čko dokonale zvládat.
Jirka
Uživatelský avatar
jiriS
Příspěvky: 609
Registrován: 14 led 2014, 00:00
Bydliště: Ašsko
Kontaktovat uživatele:

#27 Příspěvek od jiriS »

Jo, jde o bitovou komunikaci. Pokud podmínku nesplním, jsem bit :D
Uživatelský avatar
weed_smoker
Příspěvky: 2673
Registrován: 02 pro 2011, 00:00
Bydliště: Jaroměř

#28 Příspěvek od weed_smoker »

Programovat x51 jsem před 10-11 lety uměl,občas problém s nahráváním(pojistkyMCU,kabel,LPT port,napájení...).klasicky v JSA (Assembler v softwaru AS51.exe)Jednoduchý věci se daly napsat rovnou až po END,pokud to bylo něco složitějšího,tak se udělaly podprogramy.
AVR by to měly mít podobně,ale je potřeba mít seznam podporovanejch instrukcí a mapu registrů,případně paměti.
U PICu mi to přišlo takový docela masakrální,skoro jako Assembler pro x86.
Se starym AS51.exe AVR asi nenaprogramuju,ale prej existuje podobnej soft i na novější MCU x51 a Atmel,akorát si nevzpomenu na název.
Uživatelský avatar
ZdenekHQ
Významný člen
Příspěvky: 25519
Registrován: 21 črc 2006, 00:00
Bydliště: skoro Brno
Kontaktovat uživatele:

#29 Příspěvek od ZdenekHQ »

Já teď používám 89C51RD2 - má to 51 jádro, takže jsou kompatibilní se starším softem, ale jsou rychlejší, mají mnohem větší paměť (64kB), větší RAM, SPI, 8x PWM atd.

A hlavně mají bootloader, dají se programovat přes UART, takže se píchne kabel do mašiny a dá se dělat pokusy se softem. Přeprogramování je věc pár vteřin, a lze i použít přímé ovládání pinů.
Pro moje oslovení klidně použijte jméno Zdeněk
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?
]
termit256
Příspěvky: 10029
Registrován: 06 pro 2007, 00:00

#30 Příspěvek od termit256 »

Mrkni na AT89LP51RD2. Ta LP rada by mela byt mnohem rychlejsi a kupodivu jsou i levnejsi.

Ja je pouzivam na veci typu inkrementalni snimace, krokove motory apod, proste tam kde je potreba jasne definovane casovani a rychle reakce. Samozrejme "pomale" veci typu zobrazovani, ovladani, databaze... je lepsi psat v C. Vcelku nemam problem nacpat do stroje i vice MCU a propojit je napr. pomoci uartu. Delam vetsinou prototypy, takze cena HW nehraje roli. Na 51 se mi libi takovy pohodovy assembler, kdysi jsem delal nejakou vec s extremne nizkou spotrebou na PICu, to byly galeje :-)
Odpovědět

Zpět na „Programování PIC, ATMEL, EEPROM a dalších obvodů“