Continue to Site

Welcome to our site!

Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

  • Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.

What Microcontrollers (starter kit) should I buy ?

Status
Not open for further replies.

Johnmcfly

New Member
Hello guys !

I hope you are doing well :)
I have a question for you and I would like to know your opinon.
Actually, I have decided to buy my first microcontroller !

However, as a beginner and a student, I can't afford to spend too much money and use a too complex micocontroller.
I would like to buy a starter Kit and I would like to get advices about which microcontrollers I should buy.

My goals :
- Be comfortable by programming microcontroller (I know a little about the principles used in microcontroller...But I have never programmed one).
- Understanding how it works
- I have a course about Control Theory and I would like to embed an PID controller (I think it is funny when you know the theory and then, you can see with your own eyes how it works). I would like to track velocity'motor for instance.

Plus :
- I like using Matlab/Simulink. So if I can act this software with my microcontroller, it will be fun to me !
- About programming language, I have some knowledges about Java and C. I would like to learn a new language (like Python, Basic...).
If possible, I would like to learn a "useful" programming language (I mean I can use it in other case, a plus for my resume) but it won't bother me if I can use C.

Here some informations :
- Maximum budget : 50 € (= 67 USD) (approximatively)
- The kit must include :
* little motor (to command it by my controller)
* Sensors (no matter what kind of sensors, just try it)
* I have no materials (I am not an handy-man. Haha). So I need wires, board...
* Of course, microcontroller...

I know there is lots of requirements for a little budget.
So which kit should I buy ?

I am looking forward to hearing from you ! :)
 
Honestly, for around $60 USD you can get the PICkit2 Debug Express kit. It comes with the PICkit2 programmer and a 44-pin demo board with the PIC16F887 microcontroller on it. It's a very powerful yet easy to learn PICmicro. That's if you wanna go the PIC route.

If you want to learn the down & dirty of how the microcontroller works, an Arduino kit is not going to teach you that.

I've been an electronics guy for about 22 years but didn't get into digital/embedded electronics until about 4 years ago. Like you, I had never coded a micro before. I started with a PIC16F628A on a breadboard and within a month was able to design/build my own MIDI devices. Transitioning to the 16F887 from the F628A was a breeze. Just recently I transitioned to the 18F family. They're a bit more advanced and the memory/SFR organization is a bit different from the 16F but it actually made more sense. In both assembly and C language I am now able to code the entire 16F and 18F families. Microchip keeps most of its SFR names the same from one PIC to the next, and when you code in C this makes the code highly portable from one processor to the next.

Today I can now code PIC16F and PIC18F along with the dinosaur Intel 8051, which is an entirely different processor altogether. Once you develop microcontroller skills and concepts, you'll see just how simple it is to migrate between processor types using the same concepts.
 
Hi,

No mention yet of the Arduino, ( ooops missed Ians post) while most genuine boards are around the gbp £20 -30 for just £6 you can buy a perfectly good clone with usb cable.
**broken link removed**

It does not have a motor or sensors, few lo cost dev boards do, but there is so much simple lo cost add on diy stuff on the market for the Arduino it will soon have you building stuff on breadboards.

Masses of online software tutorials as well.
 
I started out about 6 years ago programming PICs in assembly. Learned a lot and had fun. One thing led to another and I am now programming Propellers. Several ready made boards available and you don't need a programmer, it's built in. Many languages available. Very much support on forum. The Propeller Quickstart board usually goes for about $25-35 but Radio Shack in closing them out around $10. Even includes the USB cable. I am having much fun and learning lots. Have a drawer full of sensors and gadgets.
Aaron
 
If you actually want to learn how a microcontroller works, an Arduino is probably the WORST possible choice. A lot of work has gone into oversimplifying them in such a way that the user just makes it work without understanding how. I strongly recommend getting either a PICkit starter pack (what I started with), or if you're dead-set on a cheap development board and the PIC boards cost too much, and you don't care about software size limits, the TI MSP430 Launchpad might be a good idea. PICs or straight AVRs are really probably your best choice though, if you want to understand how they work (the architecture and all).

Regards,
Matt
 
If you actually want to learn how a microcontroller works, an Arduino is probably the WORST possible choice. A lot of work has gone into oversimplifying them in such a way that the user just makes it work without understanding how. I strongly recommend getting either a PICkit starter pack (what I started with), or if you're dead-set on a cheap development board and the PIC boards cost too much, and you don't care about software size limits, the TI MSP430 Launchpad might be a good idea. PICs or straight AVRs are really probably your best choice though, if you want to understand how they work (the architecture and all).

Regards,
Matt
I kinda half agree.... But once you have an arduino you can shunt the IDE and just program the AVR direct from AVR Studio.... Just use it as a dev board so to speak..
 
Hi,

You can get a kit with everything and more including an Arduino Uno and experimental plugboard if you check on Amazon.

What is good about the Arduino Uno is that it is low cost and you can build projects almost as soon as you get it because there are ready made libraries on the web and there are many that come with the free IDE. They allow you to quickly get going with 7 segment displays, stepper motors, sensors, etc. Programming in the IDE is in C or C++.
Once you get bored with that you'll want to dig into the internal workings of the microcontroller chips used on the board like the 328P for example. It's got lots of i/o pins too so you can do quite a bit with it. So you can learn more about the uC chip itself at your own pace while still playing around with the ready made software.

For example, a friend bought such a kit and wanted to learn to drive a four digit 7 segment display. I was a little put off that the IDE did not come with a ready made library, but after a quick search on the web on the Arduino site i found a ready made driver program, downloaded it, and within about 2 hours we had a working four digit counter breadboarded and tested.

So dont be fooled by how armchair-ish the Arduino IDE seems to be, because you can always dig in as deep as you like. If you are a curious person that seeks knowledge then you'll do this automatically at some point.


The PIC starter kits are also interesting, and programing in ASM is one of my favorite things to do :)
What i like about ASM is you always know what your program is doing, clock tic by clock tic. You do have to take the time to learn what all the registers do, and that means knowing what every bit in every control register does. You can also use C code but i havent needed this myself.

Probably the simplest sensor that is worth playing with is a light dependent resistor. You bias it and then read the voltage with the ADC on the uC chip. You can get these things cheap on the web.
 
I kinda half agree.... But once you have an arduino you can shunt the IDE and just program the AVR direct from AVR Studio.... Just use it as a dev board so to speak..

That is an excellent point. I guess I shouldn't knock the Arduino itself, but if I were you I'd stay FAR away from the Arduino IDE.
 
That is an excellent point. I guess I shouldn't knock the Arduino itself, but if I were you I'd stay FAR away from the Arduino IDE.

Hi,

That's the very same thing Nikola Tesla would say if he were still around today :)

I'd like to hear what it is about the Arduino IDE that makes you have such a strong negative opinion about it. I'll say it might be a little strange, but it does seem to have it's merits. I probably have not used it as much as you did though so it will be interesting to hear how you arrived at your conclusion.
 
Hi,

That's the very same thing Nikola Tesla would say if he were still around today :)

Not quite sure what you mean by that or where that crack came from, but okay.... :p

I'd like to hear what it is about the Arduino IDE that makes you have such a strong negative opinion about it. I'll say it might be a little strange, but it does seem to have it's merits. I probably have not used it as much as you did though so it will be interesting to hear how you arrived at your conclusion.

As I mentioned before, a lot of work has gone into the Arduino IDE to dumb it down and make it as simple as possible. The OP asked for suggestions that would help him learn how microcontrollers work. Unless you dig very deep, you're not going to learn much about uC architecture and whatnot by using the over-simplified IDE.

I have been working with some students here at the University who are required to use the Arduino in a couple of their classes, and it's very difficult to teach them how microcontrollers actually operate if all they've used is the Arduino IDE. This is why I never recommend it for students or other people who want to actually learn about microcontrollers. I would consider the Arduino (at least when programmed in the standard IDE) to strictly be a prototyping tool rather than a learning tool.

Obviously, this is just my opinion, but there has been a lot of personal experience that supports my point of view.

Regards,
Matt
 
4 years ago I joined ETO and then got a PICKit2 LP demo board. Comes with tuts and a ready made board to blink LEDs, make a BCD counter, and do basic analog to digital inputs. Basic I/O and simple DIY circuits. I did it in ASM.
Proceeded to buy the Oshonsoft BASIC/ASM development PIC simulator which was great for quick BASIC prgs. Especially with the 7 segment peripherals & LCD display etc. Learned a lot by being able to watch the PIC port pins change state as per the prg and even watch the special function registers and timers and interrupts interact graphically. For more complex sims I now use the Proteus ISIS sim, but the facility of the Oshonsoft sim for configuring the fuses and checking which memory bank contains which SFR is useful. The PICkit 2 logic tool and UART tool is also quite useful.

I plan to use C eventually as I move into the bigger PIC chips but there's something satisfying about ASM coding. It's cryptic but kinda like 'Tank' looking at his 'Matrix' display from the movie. You see patterns and constructs and efficiencies that don't occur much in high level languages.
 
Not quite sure what you mean by that or where that crack came from, but okay.... :p



As I mentioned before, a lot of work has gone into the Arduino IDE to dumb it down and make it as simple as possible. The OP asked for suggestions that would help him learn how microcontrollers work. Unless you dig very deep, you're not going to learn much about uC architecture and whatnot by using the over-simplified IDE.

I have been working with some students here at the University who are required to use the Arduino in a couple of their classes, and it's very difficult to teach them how microcontrollers actually operate if all they've used is the Arduino IDE. This is why I never recommend it for students or other people who want to actually learn about microcontrollers. I would consider the Arduino (at least when programmed in the standard IDE) to strictly be a prototyping tool rather than a learning tool.

Obviously, this is just my opinion, but there has been a lot of personal experience that supports my point of view.

Regards,
Matt


Hi Matt,

That was just a little joke to maybe get people to think about what he might think of microcontrollers and what he might do with them if he were still around today. Would be VERY interesting to see i think.

As far as the Arduino, to me the bottom line is it is now part of history and we just have to deal with it. I see it as a learning tool and the ones who are really interested will surely want to understand the underpinnings. If your students are not that interested maybe it is because they already have enough to do with their regular course work, or perhaps you can come up with some inventive ways to challenge them into rolling up their sleeves and digging in.

I also find that some people will never find ASM interesting and will never want to use it once they start using a higher level language no matter what i have to say about it. They just dont want to be bothered unless it is some sort of required activity. I also find there are some people who dont want to use ANY language, they just want to get free programs or even buy them. Not all people have the same disposition when it comes to the sciences and it is next to impossible to change them.
 
Hi Matt, If your students are not that interested maybe it is because they already have enough to do with their regular course work, or perhaps you can come up with some inventive ways to challenge them into rolling up their sleeves and digging in.

A few months ago I gave 2 14 year olds a couple lessons in Propeller basics and got everything they need loaded on their laptops, gave them a Quickstart board and some components and showed them how to assemble and use them, hands on. Then after a few weeks I gave them this challenge to spur their interest in continuing to learn. Both are very busy for the summer but I hope they will pick it up in the fall.

Programming challenge

Build a counter that adds one to a variable each time you press a button, displays the result as it happens on the Parallax Serial Terminal and beeps a low tone at the count of 5 and a high tone at the count of 10, each for one second.
Show me your working code and I’ll give you a
Parallel Character LCD 16x2 Module (picture)
You’ve already used all the elements that you will need to do this
 
Hi,

The P8x32 Parallex chips look pretty interesting. Eight uC cores on one chip. Makes interrupts obsolete.
I was a little put off though that they dont seem to have a built in SA analog to digital converter like most other uC's. I think they expect you to build your own DS a to d unit with the on board counters of one of the 8 cores.
Still very interesting that we see multi core architectures creeping into the uC arena now...nice.
 
Status
Not open for further replies.

New Articles From Microcontroller Tips

Back
Top