Juist u zou kiezen voor micro-controllers voor een project, is dat u streven naar minimale hardware in de ingesloten projecten die u probeert uit te voeren. Micro controllers zijn nuttig als ze de meeste processor-gerelateerde bronnen (geheugen, I/O poorten, enz.) op de processorchip zelf bevatten. Ze hebben andere gangbare randapparatuur ook opgenomen. Een UART of een soortgelijke seriële communicatie-apparaat is meestal een gemeenschappelijk randapparaat. Meestal, wat er beschikbaar is hangt af van wat de fabrikanten is geschikt voor het marktsegment dat het apparaat is gericht denken tot. Sommige analoge randapparatuur zijn vaak beschikbaar in-chip. Dus, de allereerste stap is om te controleren of de randapparatuur die u nodig hebt zijn beschikbaar op de chip.
Hoewel het gaat om stappen, die een sequentieel proces impliceren, het is niet strikt zo. Wellicht moet gaan over de stappen heen en weer een paar keer.
Tegelijkertijd met deze stap moet u beslissen als u een 8 bit/16 bits of een 32-bits-apparaat nodig voor uw project. 8 bits apparaten zijn vaak de goedkoopste opties, maar nieuwere apparaten kunnen minder energie-honger. U kunt wegkomen met een 8-bits apparaatstuurprogramma als uw toepassing hoeft niet te veel rekenwerk doen. Het is vooral een soort van controle van toepassing, en de 8-bit poorten zijn genoeg om te controleren de externe apparaten die moeten worden gecontroleerd. Vaak meerdere poorten zijn beschikbaar, en dat moet zorgen voor de situatie zijn er meer dan 8 onderdelen in uw project worden gecontroleerd. Een andere gerelateerde aspect zou worden om te controleren voor de steun die beschikbaar zijn voor een aantal van de standaard interfaces. Hierbij zal USB, I2C, PWM, enz.
16 en 32-bits apparaten kunnen u omgaan met een groter bereik van getallen. Met behulp van een 8 bits-apparaat zal u neer vertragen voor een vergelijkbare kloksnelheid op een 16-bits of een 32-bits-apparaat. Andere voordelen aan deze apparaten bieden zou zullen de mogelijkheid om adres groter geheugen. Het algemeen is het het geheugen aan boord. Deze apparaten zullen kunnen inspelen op extern geheugen ook, indien nodig.
Gelet op de beslissing de controller-familie, moet u naar beneden smal naar sommige specifieke leden uit de doel-families. De leden van de familie verschillen in de grootte van de middelen (zelfs werkelijke resources). Bijvoorbeeld, zal de hoeveelheid niet-vluchtig en vluchtige geheugen verschillen van leden voor leden.
Bij het kiezen van een familie, is een van de belangrijkste aspecten van het maken van een keuze over het micro-controller om ervoor te zorgen ontwikkelen softwaresupport is beschikbaar. Normaal gesproken, wat u nodig zult hebben, zou een compiler te voeren op een ontwikkelingen-systeem (meestal uw PC of Mac). Terwijl assembly language programmering soms gebeurt, ontwikkelen meestal u de software in sommige hogere programmeertaal zoals C of C++. Koppelen en andere voorzieningen voor het genereren van een volledig loadable object module zijn vereist. Even zou belangrijke faciliteit de mogelijkheid om de code in de doel-hardware. Debug ondersteuning voor het uitvoeren van code op de plaats in de doel-hardware zal ook nodig zijn.