Learning about microcontrollers

  • Thread starter Photon70
  • Start date
In summary: I did a post on it here: http://www.rcgroups.com/forums/showpost.php?p=14166130&postcount=2173A much cheaper option is the STM32 Primer2 from STMicroelectronics, which is similar to the Stellaris boards, but with a simpler display and navigation buttons, and with audio output and an SD card slot. The 128K version (that's 128K of flash, 32K of RAM) is about US$50. The 512K version is about US$75. More info at http://www.stm32circle.com/projects/project.php?id=15In summary, for those with a Physics background looking to learn about microcontrollers and microprocessors, there are
  • #1
5
0
Hi:
I need to learn about micro controllers and micro processors. Coming from a Physics background I need a starter kit that is intended for non-Electrical Engineers. What is the best kit that I can get that will give me a basic understanding of micro processor through actual experimentation to learn things like SCA, SDA, etc?
Thanks
 
Engineering news on Phys.org
  • #2
Arduino, though I'm not sure what SCA/SDA is.
 
  • #3
Thanks.
 
  • #4
Photon70 said:
Hi:
I need to learn about micro controllers and micro processors. Coming from a Physics background I need a starter kit that is intended for non-Electrical Engineers. What is the best kit that I can get that will give me a basic understanding of micro processor through actual experimentation to learn things like SCA, SDA, etc?
Thanks

Microcontroller (uC) kits are also available from Microchip (PIC uC), and other uC vendors. You can probably do a search in this EE forum for threads with microcontroller in the title, and get a wide variety of information.
 
  • #6
berkeman said:
Their the two lines used in I2C serial communication:

http://en.wikipedia.org/wiki/I2c

And the AVR (the actual microcontroller used on the Arduino) does have I2C, though it's called TWI on the AVRs. I don't know if it's brought out to a header on the Arduino board.

The Arduino is just an Atmel AVR microcontroller with a particular bootloader, stuck on a particular board with power and some other stuff on it, usually programmed in a sort of heavily customized C++ called Wiring, together with some libraries which heavily abstract the actual hardware. You may get going faster in the Arduino environment, but you won't learn nearly as much in doing so, and you'll be limited in what you can do by the capabilities of that environment.

That's the software. I've never seen much advantage to the hardware, either. There's a stupid hardware bug, a misaligned header that makes it impossible to plug the Arduino into a breadboard or standard perfboard, which has been carried over the stack-on "shields" and become a permanent feature. Aside from that, the Arduino is much more expensive than a bare AVR chip and doesn't have any notable features, other than the aforementioned shields. And you won't learn much by stacking on a shield and linking a library for it.

The same basic objections apply to the Parallax BASIC Stamp. It is really not harder to learn to do the things you can do in BASIC in C, and there's no shortage of howtos and getting-started guides. You just severely limit yourself, while spending time and energy on something that won't teach you as much and paying a premium for the hardware.

That said, I do strongly prefer the AVR over the PIC. It's a cleaner design, it supports the C language well, and there's decent free tools for it as well as a strong online community...look at http://avrfreaks.net. I would suggest an ATmega32 or something (make sure to get it in the DIP package), a breadboard, and Atmel's AVRISP MkII programmer...it's cheap and well supported, but there's also guides out there on how to build parallel port or other programmers.

There's other microcontrollers out there, but many are only available in surface mount packages, or are harder to get tools and support for. I do suggest looking around to see what's available.
 
  • #7
I would (and did) start with the picaxe range of microprocessors. These are programmed in Basic and hence very easy to get started. They can interface through Serial or USB and there are a range of hobbyist boards available.
Best of all the forums are absolutely brilliant and easily used by novices

Craig
 
  • #8
sparkfun.com has some good tutorials to get you up and started with microcontrollers. keep in mind this is for the extreme novice... like me.
 
  • #9
I am just going to enter engineering college in 2 months for B.TECH 1st year. Before that I want to learn every single detail about microcontrollers from basics.

Plz help from where to start and how?
Thanx in advance for ur kindness......
 
  • #10
I prefer the PIC series. You have lots of choices and lots of online sources to learn from. The harvard architechture is a slight pain but if you use an 18 series IC there's a C compiler.
 
  • #11
Antiphon said:
I prefer the PIC series. You have lots of choices and lots of online sources to learn from. The harvard architechture is a slight pain but if you use an 18 series IC there's a C compiler.

I'd say there's little reason to inflict the PIC on yourself unless you're getting paid for it. Expensive, proprietary tools and an ugly architecture.

There seems to have been an implicit assumption of 8-bit microcontrollers. The ARM Cortex microcontrollers are another possible choice...cortex M3s are really about as easy to get going as 8-bit micros. They're pretty much universally surface mount, but there are boards that break the pins out to useful headers.

The Stellaris MCUs have some good, low-cost eval kits with a few peripherals like buttons and OLED displays and places to solder on wires or header connectors, and on-board JTAG hardware for programming and debugging over USB: http://www.luminarymicro.com/products/stellaris_811_evaluation_kits.html

Those boards come with various time-limited and size-limited evaluation development environments, but it's not too hard to get them going with open source tools.
 

1. What is a microcontroller?

A microcontroller is a small computer on a single integrated circuit that is designed to control specific functions. It typically includes a processor, memory, and input/output peripherals, making it suitable for use in embedded systems.

2. How do microcontrollers work?

Microcontrollers work by receiving input from sensors or other devices, processing that information, and then outputting signals to control other devices. They are programmed using a specific programming language, which allows users to define the specific functions and operations of the microcontroller.

3. What are the advantages of using microcontrollers?

Some advantages of using microcontrollers include their small size, low cost, and low power consumption. They are also highly versatile, as they can be programmed to perform a wide range of functions and tasks. Additionally, microcontrollers can be easily integrated into electronic systems, making them suitable for a variety of applications.

4. What are some common applications of microcontrollers?

Microcontrollers are used in a variety of applications, including consumer electronics, automotive systems, medical devices, and industrial equipment. They can be found in products such as smartphones, microwaves, pacemakers, and robotic arms, to name a few.

5. How can I learn more about microcontrollers?

There are many resources available for learning about microcontrollers, including online tutorials, books, and workshops. It is also helpful to have a strong background in basic electronics and programming before diving into microcontroller projects. Additionally, experimenting with different microcontrollers and working on hands-on projects can also enhance understanding and proficiency in this field.

Suggested for: Learning about microcontrollers

Back
Top