Choosing the right microcontroller [on hold]
How do you choose a micro-controller for your project? My hardware requirements are :
- I2c
- SPI
- ADC channels
- SMD package
- 3.3V operating voltage
- A few GPIOs.
There are so many microcontrollers available from various companies which satisfy these hardware requirements(almost all I know of satisfy 1,2,3,4,6)? So then should I choose the microcontroller based on my familiarity with the controller and resourses/documentation available about it or is there any other method to choose one?
pic atmega arm lpc
New contributor
put on hold as primarily opinion-based by Rev1.0, Dmitry Grigoryev, Elliot Alderson, pipe, Wesley Lee 2 days ago
Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.
add a comment |
How do you choose a micro-controller for your project? My hardware requirements are :
- I2c
- SPI
- ADC channels
- SMD package
- 3.3V operating voltage
- A few GPIOs.
There are so many microcontrollers available from various companies which satisfy these hardware requirements(almost all I know of satisfy 1,2,3,4,6)? So then should I choose the microcontroller based on my familiarity with the controller and resourses/documentation available about it or is there any other method to choose one?
pic atmega arm lpc
New contributor
put on hold as primarily opinion-based by Rev1.0, Dmitry Grigoryev, Elliot Alderson, pipe, Wesley Lee 2 days ago
Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.
If you consider Atmel/Microchip without using the Arduino platform, I suggest choosing the XMEGA series instead of the ATMEGA. XMEGA is better documented, easier to use from a hardware-register perspective and there are lots of ready-to-use libraries from the ASF (Advanced (a.k.a. Atmel) Software Framework). The Atmel Studio IDE is pretty good as well and integrates all the ASF stuff and supports lots of development/evaluation boards.
– Rev1.0
2 days ago
2
Possible duplicate of How to choose a MCU platform?
– Rev1.0
2 days ago
This is a thinly veiled request for a product recommendation...you provided the specific needs of your project in the question. Voting to close.
– Elliot Alderson
2 days ago
This spec meets thousands of different MCUs. Notably, you never just need ADC, but ADC of a certain resolution. This might narrow down the results.
– Lundin
2 days ago
add a comment |
How do you choose a micro-controller for your project? My hardware requirements are :
- I2c
- SPI
- ADC channels
- SMD package
- 3.3V operating voltage
- A few GPIOs.
There are so many microcontrollers available from various companies which satisfy these hardware requirements(almost all I know of satisfy 1,2,3,4,6)? So then should I choose the microcontroller based on my familiarity with the controller and resourses/documentation available about it or is there any other method to choose one?
pic atmega arm lpc
New contributor
How do you choose a micro-controller for your project? My hardware requirements are :
- I2c
- SPI
- ADC channels
- SMD package
- 3.3V operating voltage
- A few GPIOs.
There are so many microcontrollers available from various companies which satisfy these hardware requirements(almost all I know of satisfy 1,2,3,4,6)? So then should I choose the microcontroller based on my familiarity with the controller and resourses/documentation available about it or is there any other method to choose one?
pic atmega arm lpc
pic atmega arm lpc
New contributor
New contributor
edited 2 days ago
Michel Keijzers
5,89992662
5,89992662
New contributor
asked 2 days ago
SohamSoham
231
231
New contributor
New contributor
put on hold as primarily opinion-based by Rev1.0, Dmitry Grigoryev, Elliot Alderson, pipe, Wesley Lee 2 days ago
Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.
put on hold as primarily opinion-based by Rev1.0, Dmitry Grigoryev, Elliot Alderson, pipe, Wesley Lee 2 days ago
Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.
If you consider Atmel/Microchip without using the Arduino platform, I suggest choosing the XMEGA series instead of the ATMEGA. XMEGA is better documented, easier to use from a hardware-register perspective and there are lots of ready-to-use libraries from the ASF (Advanced (a.k.a. Atmel) Software Framework). The Atmel Studio IDE is pretty good as well and integrates all the ASF stuff and supports lots of development/evaluation boards.
– Rev1.0
2 days ago
2
Possible duplicate of How to choose a MCU platform?
– Rev1.0
2 days ago
This is a thinly veiled request for a product recommendation...you provided the specific needs of your project in the question. Voting to close.
– Elliot Alderson
2 days ago
This spec meets thousands of different MCUs. Notably, you never just need ADC, but ADC of a certain resolution. This might narrow down the results.
– Lundin
2 days ago
add a comment |
If you consider Atmel/Microchip without using the Arduino platform, I suggest choosing the XMEGA series instead of the ATMEGA. XMEGA is better documented, easier to use from a hardware-register perspective and there are lots of ready-to-use libraries from the ASF (Advanced (a.k.a. Atmel) Software Framework). The Atmel Studio IDE is pretty good as well and integrates all the ASF stuff and supports lots of development/evaluation boards.
– Rev1.0
2 days ago
2
Possible duplicate of How to choose a MCU platform?
– Rev1.0
2 days ago
This is a thinly veiled request for a product recommendation...you provided the specific needs of your project in the question. Voting to close.
– Elliot Alderson
2 days ago
This spec meets thousands of different MCUs. Notably, you never just need ADC, but ADC of a certain resolution. This might narrow down the results.
– Lundin
2 days ago
If you consider Atmel/Microchip without using the Arduino platform, I suggest choosing the XMEGA series instead of the ATMEGA. XMEGA is better documented, easier to use from a hardware-register perspective and there are lots of ready-to-use libraries from the ASF (Advanced (a.k.a. Atmel) Software Framework). The Atmel Studio IDE is pretty good as well and integrates all the ASF stuff and supports lots of development/evaluation boards.
– Rev1.0
2 days ago
If you consider Atmel/Microchip without using the Arduino platform, I suggest choosing the XMEGA series instead of the ATMEGA. XMEGA is better documented, easier to use from a hardware-register perspective and there are lots of ready-to-use libraries from the ASF (Advanced (a.k.a. Atmel) Software Framework). The Atmel Studio IDE is pretty good as well and integrates all the ASF stuff and supports lots of development/evaluation boards.
– Rev1.0
2 days ago
2
2
Possible duplicate of How to choose a MCU platform?
– Rev1.0
2 days ago
Possible duplicate of How to choose a MCU platform?
– Rev1.0
2 days ago
This is a thinly veiled request for a product recommendation...you provided the specific needs of your project in the question. Voting to close.
– Elliot Alderson
2 days ago
This is a thinly veiled request for a product recommendation...you provided the specific needs of your project in the question. Voting to close.
– Elliot Alderson
2 days ago
This spec meets thousands of different MCUs. Notably, you never just need ADC, but ADC of a certain resolution. This might narrow down the results.
– Lundin
2 days ago
This spec meets thousands of different MCUs. Notably, you never just need ADC, but ADC of a certain resolution. This might narrow down the results.
– Lundin
2 days ago
add a comment |
3 Answers
3
active
oldest
votes
Almost all microcontrollers have / can support the features you list. So in my opinion you will not find what you need by looking at the features in your list.
A very important feature (for me) is how easy it is to use and develop using a microController. The Arduino IDE is easy to use (I think) and free. Also you will find loads of examples for that platform.
But then you're "stuck" with the uCs that are supported by that platform. So that's mostly the ATMega uCs. Is that an issue? For me it is not as I use uCs only for hobby projects. I simply buy an Arduino-NanoPro clone on ebay for less than $2 and use that.
If you need a uC for some gadget and it needs to be mass produced and as cheap as possible then there are uCs that cost only 3 cents each. But these need a special development platform and can only be programmed once.
But to learn about uCs for hobby projects: just use an Arduino. With the knowledge you gain from doing that you will be able to make better use of any uC you will be using in the future.
add a comment |
I think it depends on many things, like:
You mentioned already:
- Capabilities/features
- Familiarity (yourself)
Others can be:
- Cost
- Familiarity in your company
- Expected support from the manufacturer
- Swappability (how easy it is to later convert to different models when hardware requirements change)
- Software/tools/IDE support (thanks to Peter Smith)
This list can probably be much longer.
4
Software tools and environments come to mind. Some are better than others in this regard.
– Peter Smith
2 days ago
@PeterSmith Thanks ... I added it in my answer.
– Michel Keijzers
2 days ago
add a comment |
Nano won't do 3.3V that I know of.
But a 3.3V/8MHz Promini will, plug on an FTDI Basic or equivalent clone to program/debug it. Same Atmega328P uC as the Nano and Uno.
If by "Nano" you mean Arduino Nano: those use ATMega328 and similar MCUs which have a 1.8 V to 5.5 V supply voltage range! So they can work at 3.3V. Also: 3.3 V is such a common standard that it would be foolish not to support it. It can be that some MCUs have their brownout detection set to a somewhat high voltage. If you program that detection properly you can make an ATMega MCU work at 1.8 V without problems. I know that as I have done that myself.
– Bimpelrekkie
2 days ago
Yes, except they are shipped with 16 MHz resonator. Operating at 3.3V (by powering from 3.3V on the 5V pin, and bypassing the 5V regulator) means the chip is then operating out of spec - ~10.xMHz is the max for 3.3V to be fully compliant, and errors may occur, often seen in hardware serial communications. Many folks do not have a Programmer to reset the fuses to alter the brownout detection level. Or the knowledge to do so based on questions seen here and in Arduino stack exchange (and often in the Arduino forum). Best bet then is to start with a 3.3V/8MHz board such as Promini.
– CrossRoads
2 days ago
add a comment |
3 Answers
3
active
oldest
votes
3 Answers
3
active
oldest
votes
active
oldest
votes
active
oldest
votes
Almost all microcontrollers have / can support the features you list. So in my opinion you will not find what you need by looking at the features in your list.
A very important feature (for me) is how easy it is to use and develop using a microController. The Arduino IDE is easy to use (I think) and free. Also you will find loads of examples for that platform.
But then you're "stuck" with the uCs that are supported by that platform. So that's mostly the ATMega uCs. Is that an issue? For me it is not as I use uCs only for hobby projects. I simply buy an Arduino-NanoPro clone on ebay for less than $2 and use that.
If you need a uC for some gadget and it needs to be mass produced and as cheap as possible then there are uCs that cost only 3 cents each. But these need a special development platform and can only be programmed once.
But to learn about uCs for hobby projects: just use an Arduino. With the knowledge you gain from doing that you will be able to make better use of any uC you will be using in the future.
add a comment |
Almost all microcontrollers have / can support the features you list. So in my opinion you will not find what you need by looking at the features in your list.
A very important feature (for me) is how easy it is to use and develop using a microController. The Arduino IDE is easy to use (I think) and free. Also you will find loads of examples for that platform.
But then you're "stuck" with the uCs that are supported by that platform. So that's mostly the ATMega uCs. Is that an issue? For me it is not as I use uCs only for hobby projects. I simply buy an Arduino-NanoPro clone on ebay for less than $2 and use that.
If you need a uC for some gadget and it needs to be mass produced and as cheap as possible then there are uCs that cost only 3 cents each. But these need a special development platform and can only be programmed once.
But to learn about uCs for hobby projects: just use an Arduino. With the knowledge you gain from doing that you will be able to make better use of any uC you will be using in the future.
add a comment |
Almost all microcontrollers have / can support the features you list. So in my opinion you will not find what you need by looking at the features in your list.
A very important feature (for me) is how easy it is to use and develop using a microController. The Arduino IDE is easy to use (I think) and free. Also you will find loads of examples for that platform.
But then you're "stuck" with the uCs that are supported by that platform. So that's mostly the ATMega uCs. Is that an issue? For me it is not as I use uCs only for hobby projects. I simply buy an Arduino-NanoPro clone on ebay for less than $2 and use that.
If you need a uC for some gadget and it needs to be mass produced and as cheap as possible then there are uCs that cost only 3 cents each. But these need a special development platform and can only be programmed once.
But to learn about uCs for hobby projects: just use an Arduino. With the knowledge you gain from doing that you will be able to make better use of any uC you will be using in the future.
Almost all microcontrollers have / can support the features you list. So in my opinion you will not find what you need by looking at the features in your list.
A very important feature (for me) is how easy it is to use and develop using a microController. The Arduino IDE is easy to use (I think) and free. Also you will find loads of examples for that platform.
But then you're "stuck" with the uCs that are supported by that platform. So that's mostly the ATMega uCs. Is that an issue? For me it is not as I use uCs only for hobby projects. I simply buy an Arduino-NanoPro clone on ebay for less than $2 and use that.
If you need a uC for some gadget and it needs to be mass produced and as cheap as possible then there are uCs that cost only 3 cents each. But these need a special development platform and can only be programmed once.
But to learn about uCs for hobby projects: just use an Arduino. With the knowledge you gain from doing that you will be able to make better use of any uC you will be using in the future.
answered 2 days ago
BimpelrekkieBimpelrekkie
47.4k240104
47.4k240104
add a comment |
add a comment |
I think it depends on many things, like:
You mentioned already:
- Capabilities/features
- Familiarity (yourself)
Others can be:
- Cost
- Familiarity in your company
- Expected support from the manufacturer
- Swappability (how easy it is to later convert to different models when hardware requirements change)
- Software/tools/IDE support (thanks to Peter Smith)
This list can probably be much longer.
4
Software tools and environments come to mind. Some are better than others in this regard.
– Peter Smith
2 days ago
@PeterSmith Thanks ... I added it in my answer.
– Michel Keijzers
2 days ago
add a comment |
I think it depends on many things, like:
You mentioned already:
- Capabilities/features
- Familiarity (yourself)
Others can be:
- Cost
- Familiarity in your company
- Expected support from the manufacturer
- Swappability (how easy it is to later convert to different models when hardware requirements change)
- Software/tools/IDE support (thanks to Peter Smith)
This list can probably be much longer.
4
Software tools and environments come to mind. Some are better than others in this regard.
– Peter Smith
2 days ago
@PeterSmith Thanks ... I added it in my answer.
– Michel Keijzers
2 days ago
add a comment |
I think it depends on many things, like:
You mentioned already:
- Capabilities/features
- Familiarity (yourself)
Others can be:
- Cost
- Familiarity in your company
- Expected support from the manufacturer
- Swappability (how easy it is to later convert to different models when hardware requirements change)
- Software/tools/IDE support (thanks to Peter Smith)
This list can probably be much longer.
I think it depends on many things, like:
You mentioned already:
- Capabilities/features
- Familiarity (yourself)
Others can be:
- Cost
- Familiarity in your company
- Expected support from the manufacturer
- Swappability (how easy it is to later convert to different models when hardware requirements change)
- Software/tools/IDE support (thanks to Peter Smith)
This list can probably be much longer.
edited 2 days ago
answered 2 days ago
Michel KeijzersMichel Keijzers
5,89992662
5,89992662
4
Software tools and environments come to mind. Some are better than others in this regard.
– Peter Smith
2 days ago
@PeterSmith Thanks ... I added it in my answer.
– Michel Keijzers
2 days ago
add a comment |
4
Software tools and environments come to mind. Some are better than others in this regard.
– Peter Smith
2 days ago
@PeterSmith Thanks ... I added it in my answer.
– Michel Keijzers
2 days ago
4
4
Software tools and environments come to mind. Some are better than others in this regard.
– Peter Smith
2 days ago
Software tools and environments come to mind. Some are better than others in this regard.
– Peter Smith
2 days ago
@PeterSmith Thanks ... I added it in my answer.
– Michel Keijzers
2 days ago
@PeterSmith Thanks ... I added it in my answer.
– Michel Keijzers
2 days ago
add a comment |
Nano won't do 3.3V that I know of.
But a 3.3V/8MHz Promini will, plug on an FTDI Basic or equivalent clone to program/debug it. Same Atmega328P uC as the Nano and Uno.
If by "Nano" you mean Arduino Nano: those use ATMega328 and similar MCUs which have a 1.8 V to 5.5 V supply voltage range! So they can work at 3.3V. Also: 3.3 V is such a common standard that it would be foolish not to support it. It can be that some MCUs have their brownout detection set to a somewhat high voltage. If you program that detection properly you can make an ATMega MCU work at 1.8 V without problems. I know that as I have done that myself.
– Bimpelrekkie
2 days ago
Yes, except they are shipped with 16 MHz resonator. Operating at 3.3V (by powering from 3.3V on the 5V pin, and bypassing the 5V regulator) means the chip is then operating out of spec - ~10.xMHz is the max for 3.3V to be fully compliant, and errors may occur, often seen in hardware serial communications. Many folks do not have a Programmer to reset the fuses to alter the brownout detection level. Or the knowledge to do so based on questions seen here and in Arduino stack exchange (and often in the Arduino forum). Best bet then is to start with a 3.3V/8MHz board such as Promini.
– CrossRoads
2 days ago
add a comment |
Nano won't do 3.3V that I know of.
But a 3.3V/8MHz Promini will, plug on an FTDI Basic or equivalent clone to program/debug it. Same Atmega328P uC as the Nano and Uno.
If by "Nano" you mean Arduino Nano: those use ATMega328 and similar MCUs which have a 1.8 V to 5.5 V supply voltage range! So they can work at 3.3V. Also: 3.3 V is such a common standard that it would be foolish not to support it. It can be that some MCUs have their brownout detection set to a somewhat high voltage. If you program that detection properly you can make an ATMega MCU work at 1.8 V without problems. I know that as I have done that myself.
– Bimpelrekkie
2 days ago
Yes, except they are shipped with 16 MHz resonator. Operating at 3.3V (by powering from 3.3V on the 5V pin, and bypassing the 5V regulator) means the chip is then operating out of spec - ~10.xMHz is the max for 3.3V to be fully compliant, and errors may occur, often seen in hardware serial communications. Many folks do not have a Programmer to reset the fuses to alter the brownout detection level. Or the knowledge to do so based on questions seen here and in Arduino stack exchange (and often in the Arduino forum). Best bet then is to start with a 3.3V/8MHz board such as Promini.
– CrossRoads
2 days ago
add a comment |
Nano won't do 3.3V that I know of.
But a 3.3V/8MHz Promini will, plug on an FTDI Basic or equivalent clone to program/debug it. Same Atmega328P uC as the Nano and Uno.
Nano won't do 3.3V that I know of.
But a 3.3V/8MHz Promini will, plug on an FTDI Basic or equivalent clone to program/debug it. Same Atmega328P uC as the Nano and Uno.
answered 2 days ago
CrossRoadsCrossRoads
1,3248
1,3248
If by "Nano" you mean Arduino Nano: those use ATMega328 and similar MCUs which have a 1.8 V to 5.5 V supply voltage range! So they can work at 3.3V. Also: 3.3 V is such a common standard that it would be foolish not to support it. It can be that some MCUs have their brownout detection set to a somewhat high voltage. If you program that detection properly you can make an ATMega MCU work at 1.8 V without problems. I know that as I have done that myself.
– Bimpelrekkie
2 days ago
Yes, except they are shipped with 16 MHz resonator. Operating at 3.3V (by powering from 3.3V on the 5V pin, and bypassing the 5V regulator) means the chip is then operating out of spec - ~10.xMHz is the max for 3.3V to be fully compliant, and errors may occur, often seen in hardware serial communications. Many folks do not have a Programmer to reset the fuses to alter the brownout detection level. Or the knowledge to do so based on questions seen here and in Arduino stack exchange (and often in the Arduino forum). Best bet then is to start with a 3.3V/8MHz board such as Promini.
– CrossRoads
2 days ago
add a comment |
If by "Nano" you mean Arduino Nano: those use ATMega328 and similar MCUs which have a 1.8 V to 5.5 V supply voltage range! So they can work at 3.3V. Also: 3.3 V is such a common standard that it would be foolish not to support it. It can be that some MCUs have their brownout detection set to a somewhat high voltage. If you program that detection properly you can make an ATMega MCU work at 1.8 V without problems. I know that as I have done that myself.
– Bimpelrekkie
2 days ago
Yes, except they are shipped with 16 MHz resonator. Operating at 3.3V (by powering from 3.3V on the 5V pin, and bypassing the 5V regulator) means the chip is then operating out of spec - ~10.xMHz is the max for 3.3V to be fully compliant, and errors may occur, often seen in hardware serial communications. Many folks do not have a Programmer to reset the fuses to alter the brownout detection level. Or the knowledge to do so based on questions seen here and in Arduino stack exchange (and often in the Arduino forum). Best bet then is to start with a 3.3V/8MHz board such as Promini.
– CrossRoads
2 days ago
If by "Nano" you mean Arduino Nano: those use ATMega328 and similar MCUs which have a 1.8 V to 5.5 V supply voltage range! So they can work at 3.3V. Also: 3.3 V is such a common standard that it would be foolish not to support it. It can be that some MCUs have their brownout detection set to a somewhat high voltage. If you program that detection properly you can make an ATMega MCU work at 1.8 V without problems. I know that as I have done that myself.
– Bimpelrekkie
2 days ago
If by "Nano" you mean Arduino Nano: those use ATMega328 and similar MCUs which have a 1.8 V to 5.5 V supply voltage range! So they can work at 3.3V. Also: 3.3 V is such a common standard that it would be foolish not to support it. It can be that some MCUs have their brownout detection set to a somewhat high voltage. If you program that detection properly you can make an ATMega MCU work at 1.8 V without problems. I know that as I have done that myself.
– Bimpelrekkie
2 days ago
Yes, except they are shipped with 16 MHz resonator. Operating at 3.3V (by powering from 3.3V on the 5V pin, and bypassing the 5V regulator) means the chip is then operating out of spec - ~10.xMHz is the max for 3.3V to be fully compliant, and errors may occur, often seen in hardware serial communications. Many folks do not have a Programmer to reset the fuses to alter the brownout detection level. Or the knowledge to do so based on questions seen here and in Arduino stack exchange (and often in the Arduino forum). Best bet then is to start with a 3.3V/8MHz board such as Promini.
– CrossRoads
2 days ago
Yes, except they are shipped with 16 MHz resonator. Operating at 3.3V (by powering from 3.3V on the 5V pin, and bypassing the 5V regulator) means the chip is then operating out of spec - ~10.xMHz is the max for 3.3V to be fully compliant, and errors may occur, often seen in hardware serial communications. Many folks do not have a Programmer to reset the fuses to alter the brownout detection level. Or the knowledge to do so based on questions seen here and in Arduino stack exchange (and often in the Arduino forum). Best bet then is to start with a 3.3V/8MHz board such as Promini.
– CrossRoads
2 days ago
add a comment |
If you consider Atmel/Microchip without using the Arduino platform, I suggest choosing the XMEGA series instead of the ATMEGA. XMEGA is better documented, easier to use from a hardware-register perspective and there are lots of ready-to-use libraries from the ASF (Advanced (a.k.a. Atmel) Software Framework). The Atmel Studio IDE is pretty good as well and integrates all the ASF stuff and supports lots of development/evaluation boards.
– Rev1.0
2 days ago
2
Possible duplicate of How to choose a MCU platform?
– Rev1.0
2 days ago
This is a thinly veiled request for a product recommendation...you provided the specific needs of your project in the question. Voting to close.
– Elliot Alderson
2 days ago
This spec meets thousands of different MCUs. Notably, you never just need ADC, but ADC of a certain resolution. This might narrow down the results.
– Lundin
2 days ago