Jednočip a více desek s různou funkcí
Řeším takový dilema. V zásadě jde o to, že se použije jednočip a několik různých vývojových desek (osazených různými komponenty). Desky se ale nebudou používat současně, takže jednočipů bude míň než desek.
No a dilema spočívá v tomhle, jakou zvolit variantu řešení:
A) Bude více typů desek a dle aktuální potřeby se do příslušné desky vloží jednočip (ostatní součástky budou na desce připájeny natrvalo).
B) Jedna vývojová deska bude základní, v ní bude jednočip napevno (nepůjde oddělat) a na tuto desku se pak napojí požadovaná deska jako shield (tak, jak to má třeba Arduino). Že budou výsledný rozměry větší než v příp. A ničemu nevadí.
Jaký řešení má podle vás větší smysl?
To záleží na spoustě okolností, ale zhruba se dá říct, že
A) pokud budou ty vývojové desky každá zcela jiná a bude se přesazovat jen málokdy, tak je asi lepší tento způsob
B) pokud mají ty vývojové desky nějakou čast stejnou, je lepší ji dát na tu "centrálni", než ji pořád osazovat na všech deskách dokola (například stabilizátor napětí, konektor pro nahrávání programu/čtení dat/jinou komunikaci, nějaký společný senzor (třeba teploty MCU), sadu konfiguračních switchů ...) - dokonce i kdyby se daná věc vyskytovala jen na některých deskách a na jiných ne, ale bylo by dost volných nožiček, tak ji dát na tu "centrálni" a občas nepoužít
C) pokud by se to přesazovalo často, tak určitě dát ten procesor na samostatnou desku a až se opotřebujou kontakty, tak měnit jen kontakty, nikoli procesor s ulámanýma nožičkama
Další věc, co je potřeba uvážit je, jak mít zajištěno, že je v procesoru správný program pro aktuální desku, aby se ti nestalo, že to odpálíš, protože se ti propojí dva výstupy přez něco s malým odporem, nebo že se připojí výstup MCU na výstup čidla (a jeden tam dá 0, druhý 1 a zkrat to přetíží)
Navíc MCU na samostatné desce (případně s nějakým společným vybavením) můžeš snadno vyndat, proměřit a/nebo přeprogramovat, pokud na té desce na to budeš mít šikovně konektory
D) pokud jde o levné MCU, tak je asi ideální je dát do konektorů na příslušné desce/shieldu a nechat je tam nafurt. Při dnešních cenách to může být ve výsledku levnější, než práce se synchronizací programů a případné způsobené škody.
Volil by som variant A) s tým, že jednočip by tam bol tiež priletovaný natrvalo.
Oprava: Samozrejme B)
Kolik stojí ten jednočip?
Já bych přidal variantu C, kdy by na každé desce byl jednočip.
Pokud budeš jednočip přestrkávat z desky do desky, otázka by nezněla, jestli se při přestrkávání neulomí nějaká nožička, ale kdy se to stane.
Pokud je jednočip hodně drahý, volil bych variantu B.
Varianta A je v dnešní době nesmysl. Samotný procesor tolik nestojí, patice se na ně pořádně nedělají a když jo, stojí majlant.
Varianta B tak trochu dává smysl, ostatně v práci to jedeme. Relativně malá, osmivrstva deska na který je procesor a řekněme sada obecně využívaných součástek (non-volatilni RAM, RTC a podobná běžná bižuterie) a tahle deska se zasouvá do vcelku velkých plachet, který jsou jenom 2-4 vrstvý a jsou na nich výkonový součástky + projektově specifická bižuterie. Výhodu spatřuji v relativně snadným designu těch plachet a trochu i v možnosti osadit již vyvinuté plachty novější verzí procesorového modulku, když se něco stane obsolete (což se teď děje furt) nebo je třeba víc výkonu.
Většinou je ale nejlepší řešení separátní HW pro každý účel.