8051 e altri microcontrollori low-bit sono ancora in uso oggi?
Sì, quasi ovunque. Sono piccoli e facili, ci sono molti core che fluttuano intorno al tuo silicio personalizzato a basso o nessun costo, ci sono compilatori maturi. Tutto ciò rende l'8051 ancora una delle architetture centrali più popolari tra i produttori di silicio. I core ARM potrebbero essere disponibili in più prodotti diversi, ma poi, quando parli con qualcuno che sta costruendo molti dispositivi con un vincolo di prezzo molto rigoroso, è probabile che preferirà un core 8051 più economico / gratuito se lo farà il lavoro . Giusto per opporci alla pretesa di @ Nitro2k01 di utilizzo solo di nicchia: Mouser ha in magazzino quasi 800 modelli di microcontrollori 8051 ¹. E il fatto che questi inizino, anche da Mouser, a prezzi inferiori a 40 ct potrebbe essere un'indicazione di ciò per cui sono utilizzati:
MCU tradizionali, a basso rendimento e ad alto volume
in tal modo:
... ovviamente, non verrà utilizzato da nessun settore per sviluppare un prodotto a causa della sua semplicità ...
è un'assurdità assoluta di alta qualità. Soprattutto dal momento che stai fornendo un contro-esempio tu stesso
Il mio capo, che ha circa la metà degli anni '50, disse che stava usando 8051 derivati e che stavano facendo il lavoro.
Esattamente! Sono utilizzati ovunque, sono ben collaudati ed economici e sono sufficienti ; non sottovalutare mai il vantaggio di avere una soluzione a un problema comune in un cassetto da qualche parte!
Certo, spesso succede che potresti aver bisogno di una soluzione con due bus automobilistici tipici, un'interfaccia ad alta velocità con un ADC, alcuni timer di watchdog affidabili, tre unità PWM ... e poi inizi a mettere insieme qualcosa composto da quattro derivati 8051 e 8080 .. uh. Questa è una brutta situazione e molto probabilmente potrebbe essere risolta molto più velocemente e in modo più affidabile utilizzando un unico MCU più versatile, più potente (ad esempio un ARM). Ma che "abbiamo le conoscenze dell'azienda su come funziona qualcosa con la vecchia tecnologia" vs "siamo a prova di futuro avendo la capacità di funzionare su hardware moderno" è un classico compromesso di sicurezza degli investimenti. Se incontri uno di quel tipo di progetti, proverei a parlare con il capo in quel contesto. Per piccoli lavori facili, sì, 8051.
Dovrei preoccuparmi di conoscere le architetture MCU in generale?
Sì! Penso che @jfkowes lo spieghi molto bene. Ma onestamente: è un po 'come chiedere "dovrei imparare come funziona il motore a combustione interna se voglio fare il meccanico d'auto"; la risposta è "potresti vivere bene se riesci a eseguire abbastanza bene i manuali di riparazione, ma probabilmente sarai un tecnico molto migliore (lascia solo il tecnico) se capisci cosa fa il tuo hardware.
Non appena dovessi affrontare un problema che non può essere cercato su Google, saresti praticamente una tartaruga sulla schiena se non capissi approssimativamente come funziona il tuo processore.
Dovrei preoccuparmi di imparare l'architettura 8051?
Probabilmente no. Nel senso che, sì, fintanto che il costo non è il tuo obiettivo principale, molto probabilmente puoi semplicemente usare MCU molto più potenti e versatili basati su core ARM o altre architetture più moderne.
Inoltre, il core 8051 è così semplice che in realtà consiglierei di capire quali sono le sue unità prima di provare ad affrontare un core MCU più moderno, complesso. È un bell'esempio.
Quindi, se 8051 non è il core che sto cercando in un'applicazione a basso volume, cosa sto cercando?
Quindi, personalmente: scegli un ARM Cortex-M0, -M3, -M4F; questi sono abbondanti in tutti i tipi di microcontrollori convenienti, facili da programmare (yay, supporto GCC maturo, librerie standard CMSIS, molti sistemi operativi integrati in esecuzione su questi) e comunemente vengono forniti con interfacce di debug standard (il che è un grande vantaggio).
Gli ARM sono, dall'esterno, di solito relativamente facili da capire, poiché in genere si mappano tutte le periferiche nello spazio di memoria, e basta. Internamente, hanno vari gradi di sofisticazione e ottimizzazioni di velocità / robustezza / dimensioni, il che li rende non perfettamente comprensibili nei dettagli, ma immagino che potrebbe essere un po 'troppo chiedere a meno che non ti piaccia la progettazione della CPU.
Se sei interessato alla progettazione della CPU, penso (questa è davvero una convinzione personale basata sulla mia osservazione delle attività di ricerca e degli investimenti del settore "promessi") stiamo attualmente osservando l'ascesa di un nuovo importante ISA - il RISC-V. Esistono varie implementazioni di questa architettura per FPGA o silicio e persone come Nvidia sembrano giocare anche con l'idea di sostituire i loro multiprocessori di flusso con questo tipo di core.
¹: È molto probabile che mi manchi più della metà degli 8051 attuali di Mouser (perché, ehi, ho appena selezionato tutti gli MCU il cui nome principale era * 80 * 5 *). È probabile che se scegli un microcontrollore a 8 bit casuale, è probabile che il suo nucleo sia almeno parzialmente derivato dall'8051. Voglio dire, dai un'occhiata alla
"lista dei [8051] fornitori di derivati" di Wikipedia .