Skip to the content.

Appendix C: Microcontroller Selection

Selecting the appropriate microcontroller is crucial for the success of any project that involves electronic devices. For Team 305’s project, the selection of Microchip’s microcontroller was essential. The process of selecting a microcontroller involved in identifying and evaluating the available options and choosing the one that best meets the project’s requirements. The evaluation process involved in using tools such as the Microchip Parametric Search Tool to identify and compare different microcontroller options. After identifying the options that met the project’s requirements, the team gathered specific information about each microcontroller and assessed how each option met the project-specific requirements. The evaluation process included filling out a template that was provided and identifying the overall pros and cons of each option and ranking them based on how well they meet the project’s needs. Finally, the team chose the microcontroller that best meets their requirements and provided a clear justification for their selection based on data-driven analysis.

Microcontroller Comparison

Determine your project-specific requirements   Look up specifications in the PIC datasheet    
Design Considerations Team Project-Specific Requirements from Problem Definition and Block Diagram PIC Option 1 PIC Option 2 PIC Option 3
How many GPIO Pins?   60 I/O Pins 36 I/O Pins 85 I/O Pins
Built-in Analog to Digital Converter? How many?   4 Internal 47 external 4 internal 35 external 4 internal 35 external
Built-in Hardware PWM? How many?   2 2 1
Built-in I2C? SPI? How many? We need at least 2 serial sensors and 1 serial actuator using I2C or SPI. 2 2 3
Built-in UART? How many? We need at least 1 example of UART, SPI, and I2C. 5 2 3
Find 3 microcontrollers that meet your team project-specific requirements and find information on each   Part details from the PIC datasheets:    
Microcontroller Considerations Instructions PIC Option 1 PIC Option 2 PIC Option 3
Part Number Include the entire part number (leave off any letters at the end that specify the package type) PIC18F67K40 PIC18F46Q10 PIC24FJ1024GA610T-I/PT
Link (URL) to product page Do not paste links directly into the table. Instead, link them. (Link Here) (Link Here) Link Here
Links (URL) to Data Sheets   (Link Here) (Link Here) (Link Here)
Links (URL) to Application Notes Often provided by manufacturers to give you specific examples of how to use their products. Search for them in the search bar on the Microchip’s website. (Link Here) More applications: (Link Here) (Link Here) More applications: (Link Here) Link Here
More
applications: (Link Here)
Links (URL) to Code Examples   (Link Here) (Link Here) (Link Here) (Pg. 27)
Links (URL) to External Resources Search on Google and YouTube for other resources for each specific microcontroller. (Link Here) (Link Here) (Link Here)
Production Unit Cost Find in the Microchip online store, or Digikey $5.31/ each $2.35/ each $6.08/ each
Supply Voltage Range Find in the microcontroller datasheet 2.3V to 5.5V 1.8V to 5.5V 2.0 to 36V
Absolute Maximum Current for entire IC Find in the microcontroller datasheet 350mA 350mA 300mA
Maximum GPIO Pin Current (Source/Sink) Find in the microcontroller datasheet +-50mA +-50mA +-25mA
8-bit or 16-bit Architecture Find in the microcontroller datasheet 8 bit 8 bit 16 bit
Available IC Packages / Footprints Find in the microcontroller datasheet. Choose a microcontroller with both surface mount and DIP/through-hole packages available. See Most Common Mistakes below for requirements to improve manufacturing reliability. 12 available– surface mount only. (Link Here) 14 available Both through-hole and surface mount available (Link Here) 5 available– surface mount only. (Link Here)
Supports External Interrupts? Find in the microcontroller datasheet Yes Yes Yes
In-System Programming Capability and Type Allows for programming the microcontroller without removing it from the PCB. Find in the microcontroller datasheet. ISCP support (5-pin) ISCP support (5-pin) ISCP support (?-pin)
Programming Hardware, Cost, and URL Find on the microcontroller product page PC/ MPLAB PM3 Universal Device Programmer (Link Here) PC/ MPLAB PM3 Universal Device Programmer (Link Here) PC/ MPLAB PM3 Universal Device Programmer (Link Here)
Works with MPLAB® X Integrated Development Environment (IDE)? Required. See Microchip Development Tools Works with MPLAB Works with MPLAB Works with MPLAB
Works with Microchip Code Configurator? Required. Go to the MCC website, click the “Manual Downloads” tab, scroll to the device library that goes with the PIC you chose (likely “MCC 8-bit PIC”) and read the release notes to make sure your microcontroller is in the list of supported devices. Works with MCC Works with MCC Works with MCC

7.2 Microcontroller Overview

Write overall pros, cons, and rankings for the chosen microcontrollers        
Overall Pros Write at least 2 for each microcontroller -Can operate at 3.3V
-64 pins for additional purposes
-Can operate at 3.3V
-Contains all the necessary specifica-tions
-can operate at 3.3V
-Uses 16 bit
Overall Cons Write at least 2 for each microcontroller -8-bit Microcontroller
-Max ADC Resolution = 10
-64 memory size
-40 pin count
-Lots of pinouts can cause confusion
-Limited on number of PWMs
Ranking 1 = first,
2 = second,
3 = third
1 2 3

7.3 Microcontroller Finalization

Final Microcontroller Choice: PIC18F67K40

Rationale: Team 305 decided that the PIC18F67K40 IC was the overall best choice for our chosen project. Despite the relatively lower ADC resolution, the amount of pins that the IC has as well as the multitude of packages available make the PIC18F67K40 the right pick for the project. The large amount of pins available in the IC allow for a large degree of freedom and flexibility in where the sensors and other components are located on the PCB. The array of packages available to choose from allow for a perfect selection as to exactly what is needed for the project.

click here to return to index