Se vuoi passare da principiante a intermedio, la lingua che devi imparare è C. Anche se metti da parte l'intero dibattito sul blocco di Windows, devi essere molto bravo a programmare in C prima di poter fare un lavoro di qualità su un microcontrollore in un linguaggio di livello superiore come .NET Micro o C ++.
I sistemi incorporati sono composti da una piramide di conoscenza e devi davvero conoscere almeno alcuni di ogni passaggio per essere un buon progettista:
^ Codice utente
^^ Sistemi operativi
^^^ Il linguaggio C
^^^^ Linguaggio assembly
^^^ ^^ Architettura a microcontrollore
^^^^^^ Progettazione digitale
^^^^^^^ Semiconduttori
^^^^^^^^ Elettronica di base (legge di Ohm)
Il framework Arduino offre un comodo gancio per gli appassionati nella piramide da qualche parte tra il linguaggio C e un sistema operativo.
Specifico per la tua domanda su .NET Micro Framework, il About dice:
Il tipico dispositivo .NET Micro Framework ha un processore a 32 bit senza unità di gestione della memoria esterna (MMU) e potrebbe avere fino a 64 KB di memoria ad accesso casuale (RAM).
Inoltre, la brochure lo differenzia da Windows Mobile , Windows Embedded , CE 6.0 e .NET Compact Framework e lo confronta con Linux, Real-Time, Java e sistemi operativi personalizzati. Questo è un grande salto dal framework Arduino / Processing.
Il tuo Arduino ha un processore a 8 bit con 1k di RAM. Oltre alla perdita di potenza a 8 e 32 bit, funziona anche meno della metà della maggior parte dei processori elencati. Anche se non ti scoraggio dal passaggio a un processore a 32 bit, lo consiglierei come passaggio da intermedio a avanzato.
È davvero facile impiegare molto tempo e memoria con poche righe in C # o C ++, che sono insignificanti su un processore dual core in esecuzione a un paio di gigahertz con gigabyte di RAM, ma che può fare una grande differenza su un dispositivo incorporato . Fino a quando non sarai bravo nel linguaggio assembly e / o C, o in un guru in C # o C ++, non consiglierei di usarlo per la programmazione integrata.
Quindi, inizierei con il download di WinAVR e programmerei una semplice routine di lampeggiamento dei LED in C. Se C ti confonde totalmente, esegui un po 'di codice nativo ("Hello World") sul tuo PC, quindi passa a microcontrollore, ma non dovrebbe essere necessario. Quindi, passa alla comunicazione tramite UART, inizia a utilizzare gli interrupt e ripeti alcuni dei tuoi progetti Arduino in C. Quindi, trova (o crea!) Una nuova scheda di sviluppo con un diverso microcontrollore, forse un PIC o un ARM , e alcuni gadget come uno schermo LCD, Ethernet, scheda SD o qualsiasi cosa tu voglia, e prova ad imparare un nuovo sistema. Una volta arrivati lì, saprai meglio dove vuoi andare.
Saremo qui per aiutarti lungo la strada!