Re: AVR vs 32b (Začínáme s Atmel Studiem - kontrola)

Miroslav Mraz mrazik na volny.cz
Pátek Únor 5 19:52:13 CET 2021


STM to vzali podle mého soudu za špatný konec. Ty knihovny jsou psány z 
hlediska návrháře hardware a v konečném důsledku jsou pro aplikačního 
programátora nepoužitelné. Na druhou stranu máte periferie široce 
konfigurovatelné. Což ovšem ocení málokdo. NXP to vzali z té druhé 
strany - z pohledu aplikačního programátora. Takže když chcete nějaké 
neobvyklé chování periferie, musíte se vrtat v jejich kódu. Ale pokud 
vám stačí to co se obvykle používá, máte jasně definované programové 
rozhraní, které je snadné použít. Nakonec se dá použít i Arduino styl, 
který (alespoň co jsem kdysi zhruba zkoumal pro AVR) není vůbec špatně 
napsaný.
Co mně na Arduinu jako takovém vadí je snaha předstírat, že použitý 
jazyk (C++) je jednoduchý a používat ho může každý. Ne, není tomu tak. 
C++ je jazyk velmi komplikovaný, protože prošel dlouhým vývojem, už pár 
desítek let ho používám a nemohu říct, že bych ho znal. Však Herout má 
tak stovku stránek, zatímco takový Eckel zhruba 10x tolik a ani tak v 
tom není zdaleka všechno.

Mrazík

Dne 05. 02. 21 v 17:48 Pavel Hudecek napsal(a):
> Těch 5 V je ve skutečnosti značná výhoda. Dnes má každej doma hromadu 5 
> V adaptérů, takže stačí připojit. Nebo připojit Li-ionku. Těch mají děti 
> taky dost, ze starých NTB, nebo telefonů.
> 
> Jinak zásadně učím děti, že jde spoustu věcí, ale je vždy potřeba řešit, 
> zda je to dobrý nápad a co to obnáší. Takže ano, MOSFET přes Rg rovnou 
> na pin procesoru. Ale ještě předtím najít takový MOSFET, aby ho šlo 5V 
> spolehlivě otvírat a proud, který si dle DS od MCU lze dovolit stačil na 
> dostatečně rychlé nabíjení a vybíjení jeho kapacity. Při tom se hned dá 
> ukázat, jak do toho kecá kapacita zpětnovazební. No a samozřejmě jsou 
> věci, kde se hodí, aby MCU jen ovládal nějakej zdrojovej šváb a řešit, 
> do jaký míry mu do toho kecat. Takových 300 kHz se sice dá vytáhnout 
> z AVR i z STM32, ale obojí bude mít nepoužitelně malé rozlišení na 
> regulaci. Ovšem v obojím případě stačí třeba na nastavení deadtime.
> 
> Stejně tak lze třeba LED displej připojit přímo na port a jen společné 
> konce spínat tranzistorama. Dá se moc hezky ukázat, co se děje, když se 
> to udělá špatně a jak to udělat správně, takže pak hodiny jdou přesně a 
> ADC měří normálně. A že to je jednodušší, pokud se na port segmentů dají 
> odpory, ale za cenu nutnosti použít různá napětí dle barvy displeje to 
> jde i bez nich.
> 
> Ale zpátky k rozdílům  v SW: Na ARMy se normálně používá rozsáhlej 
> ekosystém s hromadou .h souborů a udělat něco bez toho je dost složitý. 
> Zajímavý je, že třeba na LPC to je celkem hezký a dá se v tom snadno 
> zorientovat, podobně je na tom o hodně mohutnější AM335, ale na STM32 
> mají všechno na můj vkus hodně komplikovaný, takže mnohem radši použiju 
> LPC než STM.
> 
> A jsou samozřejmě situace, kdy je 32b jasná volba, třeba grafické 
> displeje. Když na 100nohej LPC připojím displej tak, že má na jednom 
> portu 0-17 paralelní data a na dalších bitech i řídící signály, lze 
> přenášet řádově desítky MPx/s (reálně míň, protože ty data taky nějak 
> vznikaj, což zabere většinu času). Na 8bitu se lze dohadovat, zda je 
> rychlejší SPI, nebo paralel 8bit. Jelikož jsem na obojím zkoušel 
> osciloskop 320x240, vím o čem píšu:-)
> 
> PH
> 


Další informace o konferenci Hw-list