RE: AVR vs 32b (Začínáme s Atmel Studiem - kontrola)
Pavel Hudecek
edizon na seznam.cz
Sobota Únor 6 12:43:58 CET 2021
Konfigurátor na STM je moc hezkej, ale zrovna mě hned u prvního projektu pěkně vypek. Zapnul jsem PWM a ona nefungovala… Když jsem se v tom vrtal, zjistil jsem, že zorientovat se v těch HAL funkcích je poněkud komplikovanější, než jsem byl zvyklý i z výrazně většího LPC. Takový LWIP na cortex A8 je docela složitý, ale dá se v tom zorientovat líp, než v HAL z banálního projektu s malým STM. To mě fakt nepříjemně překvapilo.
PH
Od: Jaroslav Buchta
Pokud nemate pupinky z grafickeho konfiguratoru, tak tento problem
myslim s STM mit nebudete. I jinak si teda myslim, ze pro zakladni
pouziti periferii ma HAL i LL jasne a pruhledne funkce.
Dne 05.02.2021 v 19:52 Miroslav Mraz napsal(a):
> 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.
>
>
> 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:-)
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20210206/a3da8379/attachment.html>
Další informace o konferenci Hw-list