Which Microcontroller for a begginer with my needs?

Thread Starter

elissaios

Joined Nov 7, 2012
14
Hallo to all,
i am a student in university in greece(Computer engineering) and now its time to start learning microcontrollers.

So i need help from more experienced guys.
The characherestics that the microcontroller want to have is:

1)be popular
(That means that there are lots of information on internet like tutorials,examples,books with its architecture)

2)Free development tools and simulator
(i dont know if simulator is so important i think it is when you program in assembly whats your opinion?)

3)I want to start from low level in parallel with hi-level.
I want to write some simple assembly programs at first because i like to know what happens in hardware and then move to abstract c,or do it in parallel(so ii need a free assembler to do that and the assembly not to be so complex)
Also i would like to understand its architecture so i wouldn t like a mcu with very complex architecture.

From what i have read on internet i think that a 8 bit AVR or PIC would be good.But which model and which for my needs??

The experience that i have right now is:logical disign,basic electronics,architecture,c programming and little assemply(these experiences are not about microcontrollers but in general)

I would appreciate any help very much.
 

Thread Starter

elissaios

Joined Nov 7, 2012
14
I would have selected the same brand as your university use. That will give you a head start in the classes.
In my class we learn about mcu in general and you can choose
a project with whatever mcu and theme you want without final exam
or have only final exam.

Also I dont buy a mcu only for my class but also because i like and i want to make things for my own.
 

ErnieM

Joined Apr 24, 2011
8,377
Hiya. I use a lot of PIC processors, both personally and professionally. I do admit to being biased towards them, and there are lots of other good choices.

1)be popular
There is much information online about the PIC processors. The only drawback is some of it is quite dated using obsolete devices. Still... you can get all of it for free.

2)Free development tools and simulator
The IDE is free, it has a built in assembler, and the C compilers are also a free download.

3)I want to start from low level in parallel with hi-level.
I really don't see the need to learn assembly, though it is nice to know, it's not essential. Writing in C is still pretty minimal: you make the same register settings just in a different (easier) way.


4)Also i would like to understand its architecture so i wouldn t like a mcu with very complex architecture.

The PIC16 series and below only have 33 instructions to learn. The PIC18 and higher devices are much harder to do assembly on (and I never have bothered to do so unlike the lower types).

Here are some of my thoughts on getting started.
 

xainnasir

Joined Nov 8, 2012
15
I would recommend you to use PIC18F452 ..... its a cheap one and you can find a lot of info online on it plus its has all the attributes u need ....

but if u have money then try arduino as well .... buy arduino uno ..... its very simple one easy to program .... usb control .... its really fun to use arduino ....
 

Thread Starter

elissaios

Joined Nov 7, 2012
14
I conclude to go for a pic series 18F????
What is the most popular,with tons of examples 18f series which fit my needs?

Do you know any very good kit ?
**i wouldnt like all components in one pcb.Only the programmer and the μC.
If the kit has any very good guide with some examples or how to do my first steps it would be helpfull.
 

Thread Starter

elissaios

Joined Nov 7, 2012
14
i dont think a μC with 44pins it would be good for me.I think it would be very complex to understand what happens inside.
 

MrChips

Joined Oct 2, 2009
30,707
To some extent, you should not be intimidated by the number of pins.
Most MCUs incorporate a basic core and then they add peripherals (devices).
You only need to learn and use what you need. You can begin by just learning how to output to a bunch of pins.
 

MrChips

Joined Oct 2, 2009
30,707
True. There always seem to be a shortage of I/O pins on whichever chip you select,
a little bit like memory space.
 

tshuck

Joined Oct 18, 2012
3,534
Personally, I learned how to use microcontrollers using a PIC 12f683. No fancy peripherals to confuse from the basics.

I used this tutorial to learn. It uses a different pic, maybe learn that one, but it's well enough to figure it out.
 

Thread Starter

elissaios

Joined Nov 7, 2012
14
Guys really thanks for your time.

As tshuck says maybe its better to start with a very simple μC.i said that because the goad is to understand how the prossesor that the μC have communicate with the peripherals like timer,how they do an interupt and after understand these to a degree then move and program to some simple assembly and c and then connect and the other components like an lcd and a keypad.

So i dont want very peripherals which many the internal circuit complicated.

I think it is good to understand how a μC works inside to a degree because it is a small computer and you understand how computers work,how they communicate with lcd,keypad,timer,how interups work,how you program them(things that i dont know) and then you go to more abstract like a c program and to work with libraries.

This is the reason that i dont want to start with arduino which is very abstract and you dont need to know what happens in hardware a lot.
 

Thread Starter

elissaios

Joined Nov 7, 2012
14
Guys really thanks for your time.

As tshuck says maybe its better to start with a very simple μC.i said that because the goal is to understand how the prossesor that the μC have communicate with the peripherals like timer,how they do an interupt and after understand these to a degree then move and program to some simple assembly and c and then connect and the other components like an lcd and a keypad.

So i dont want very peripherals which many the internal circuit complicated.

I think it is good to understand how a μC works inside to a degree because it is a small computer and you understand how computers work,how they communicate with lcd,keypad,timer,how interups work,how you program them(things that i dont know) and then you go to more abstract like a c program and to work with libraries.

This is the reason that i dont want to start with arduino which is very abstract and you dont need to know what happens in hardware a lot.
 

kubeek

Joined Sep 20, 2005
5,794
As tshuck says maybe its better to start with a very simple μC
I don´t think that is true, or at least not in the sense that a uC with 40 pins is harder to comprehend than a uC with 8 pins. Within a given family, the basic core, timers and interrupts and assembly will be the same. You don´t need to care about the fancier peripherals like ADCs and pwm channels and what not in the beginning, but as you get better you will want the chip to do more.
This is when buying a larger chip in the first place is better, because you already have all the pripherals you might want and they just wait for you to use them, but they don´t pose any hinderance by being there.

It is like having lots of usb devices hooked up in your computer, you can still learnprogramming the cpu without even noticing they are there, until you want to use them.
 

tshuck

Joined Oct 18, 2012
3,534
I don´t think that is true, or at least not in the sense that a uC with 40 pins is harder to comprehend than a uC with 8 pins. Within a given family, the basic core, timers and interrupts and assembly will be the same. You don´t need to care about the fancier peripherals like ADCs and pwm channels and what not in the beginning, but as you get better you will want the chip to do more.
This is when buying a larger chip in the first place is better, because you already have all the pripherals you might want and they just wait for you to use them, but they don´t pose any hinderance by being there.

It is like having lots of usb devices hooked up in your computer, you can still learnprogramming the cpu without even noticing they are there, until you want to use them.
I'd have to agree here. I only picked the 12F683 because my cheap, not even a real Pickit clone, listed this as one of the very few microcontrollers it could program(the chip was cheap too). It would seem to be less intimidating with only 8 pins as opposed to 40, but the result is the same.

The datasheet for the 12F683 is smaller and less intimidating for a beginner since you don't have to worry about what a DAC, FVR, I2C, SPI, etc. is, so that may be a factor in your choice.

I also know the 16F84A is really popular for beginners.

like kubeek said, if you don't want the peripheral module, don't enable it. The initial pin assignments from Microchip are such that the peripherals are, in my experience, disabled at reset.
 

Thread Starter

elissaios

Joined Nov 7, 2012
14
Ok,
Right now i dont care so much about how much pins the uC has.

Could you suggest me any nice and tested good kit to start out with a very good guide or tutorial how i can start step by step?

**i want to add that:
i dont start uC because i want to be professional and i dont search about the uC which i could make more money.
I just start because it will help me to undestand how a pc works.How the cpu co-opperates with the peripherals,what each one of the peripherals do,how the communicate,what is an interupt and how we handle and program it.So i want it for education reasons.
And then to make same simple projects and if i want more i will have the experience to choose a new uC if i want.
 
Last edited:
Top