Doporucite procesor / prostredi?
Petr Labaj
labaj na volny.cz
Středa Březen 5 22:49:39 CET 2025
Já jsem kdysi měl docela rád AVR. Psal jsem pro něho v assembleru, a
něco málo později i v C.
Ale když se objevily dostupné ARMy ( v mém případě STM32), tak jsem po
tom skočil.
Proč? Protože to má unifikovaný adresový prostor a kód může běžet nejen
z Flash, ale stejně tak dobře z RAM.
Proč to píšu? Protože pro Vaši aplikaci (aspoň jak ji chápu já) by se to
podle mě velmi hodilo.
Udělal bych to tak, že bych tam foukl nějaký ARM s vetší pamětí. Třeba
něco jako STM32F407.
Tomu bych dal do Flash zavaděč, kterým by komunikoval s nadřízeným
počítačem. Zřejmě PC, ale klidně i RPi nebo něco jiného.
Buď po USB nebo po Ethernetu. Případně po WiFi.
A ty vlastní testovací programy/scripty bych psal v nějakém normálním
jazyce, třeba C nebo C++.
Překládaly by se na PC, tam by byly i uložené.
Při testování by se tester připojil k PC třeba tím USB, na PC by se
zvolil daný test. Ten by se po tom USB nasypal do testeru, kde by se
spustil v RAM.
Výhody:
- tvorba testů v civilizovaném jazyku, netřeba žádné interpretry
- ovládání přes PC, což je jistě pohodlnější než přes nějaká tlačítka a
maličký displej (ale i to by samozřejmě mohlo jít)
- upgrade SW vlastností testeru by se dělaly jen jiným SW na PC, takže
žádné programování Flash, tudíž vhodné i pro laiky
Nevýhody:
- pokud opravdu potřebujete 5V (a opravdu ji potřebujete, když dneska už
skoro vše nové jede na 3.3V?), tak je třeba řešit nějaké level-shiftery
PL
****************
Dne 5.3.2025 v 21:45 Pavel Kutina napsal(a):
> Zdravim,
>
> pro potřeby našeho servisu bych chtěl udělat nějaké HW testovadlo.
> Potřebuju k tomu 2x16 LCD, pár tlačítek, hromadu volných GPIO (čím
> víc, tím líp, minimálně 16), nejméně dva HW UARTy a 5V kompatibilitu.
> Tohle všechno by mi dala stará ATmega2540 / Arduino Mega.
>
> Protože se dělá víc testů různých IO karet a podobných opičáren, bylo
> by fajn, kdyby vznikla mašinka, která bude mít nějaké tělo, ke kterému
> se přes nějaký sběrnicový tlustokonektor připojí jen jednoduchá deska
> s interfacem a spustí se příslušný testovací FW.
>
> A teď to přijde - jestli bude mašinka univerzální, znamená to pro
> každý kus HW, co se bude testovat, udělat / rozšířit stávající FW. Tak
> mě napadlo připojit k tomu SD kartu a na ní nějaké testovací skripty.
> Akorát by to někdo musel napsat, včetně interpreteru. Pro novější
> procesory by se dal využít třeba interpretovaný microPython (jo,
> tenhle jazyk, založený na interpretaci neviditelných znaků fakt nemám
> rád, ale je to moderní a docela dost lidí "do toho vidí", takže napsat
> skript by mohl ledaskdo). A nebo třeba tinyBasic, kterej zase už
> dneska umí málokdo, ale já jo :)
>
> Nacpat tam nějaké RPi s hromadou expandérů by možná taky bylo řešení,
> ale znamená to, že k tomu ten FW a skripty a tak dál bude už muset
> napsat někdo, kdo umí psát.
>
> Nenapadne někoho, kudy do toho? Popravdě, kdyby to bylo jenom na mě,
> tak bych šel asi tím Basicem a Megou - a když se v tom bude chtít
> někdo rejpat, tak se holt bude muset naučit Basic a zkazí si karmu,
> pošpiní ruce a budou se mu zdát divoké sny :)
>
> A nebo jít tím Pythonem, ale na to už ta Mega nastačí, takže jiný
> tlustý procesor - jen mám dojem, že jich je na 5V poměrně málo, a
> dělat na každém GPIO převodník úrovní bude kapku otravné a omezující,
> co se týká možností využití portů (nezapnu si analog, nebudou fungovat
> různé hrátky s pull-up a -down a tak podobně). A kdyby se to ještě
> dalo programovat v Arduinu, vůbec bych se nezlobil.
>
> Nějak nevím, dám se poddat. Díky za každou alespoň trochu dobrou radu.
>
> Pavel Kutina
Další informace o konferenci Hw-list