Microcontrollers let you control hardware in new ways; if you don't get it right first time, or just need new
system operation, then re-program it! There are many microcontrollers but the most popular is the Arduino Uno.
Here you can find Projects and Tutorials designed by me an Electronics Design Engineer experienced in both hardware and programming.
What you could do:
Use a microcontroller for measurement and control.
Make a weather station by connecting sensors that return Pressure, Humidity and Temperature. Display the results on an OLED screen.Or make a robot by controlling some servo motors! (or a 3D printer). Much more...
A microcontroller is a self contained processing unit with in built
RAM, Flash and (what I call) internal peripherals such as an Analog to
Digital Converter (ADC).
An Arduino contains a microcontroller but provides you with an entire eco system including:
This makes the Arduino Extremely Easy to use.
If you tried to build any computer system in the 80's you had to put a processor, (EEPROM) equivalent to the Flash chip, RAM chip and ADC, on a prototype board and the wire up the 8 bit bus between all of them! Now you just buy a microcontroller and its all done for you inside!
The EEPROM was a pain because you had to erase it using a Ultra Violet light box for 20 minutes. For any change you made in your program you had to go through that process each time! Now you can hit a button and the Flash within the microcontroller is programmed in circuit in seconds.
The Arduino project makes it even easier to use
microcontrollers as it gives you an open source compiler and simple IDE
(Integrated Design Environment). It lets you program in C/C++ and upload
programs very easily with the push of a button.
All you have to do is figure out what you want to make, and then program it!
On this site you can find out about microcontrollers:
A microcontroller is a circuit element that is completely self-contained,
packed with lots of different hardware blocks such as counters, comparators, even ADCs built in, so
there is no need to wire up too much external hardware to make useful projects.
Here's a small sample of usage, You can:
Here are 5 different microcontrollers - ok they all look the same - but some work faster or have different peripherals (modular functional blocks e.g. timer, ADC, I2C) inside:
Clockwise from top left is 18F2550, 12F675, 16F628, 18F877A, ATMega328P.
Note: Even the the smallest one chip shown in the image above (12F675) has a lot of internal peripherals; 2 Timers (one 16 bit and one 8 bit), 4 Analogue inputs (10 bit), an internal oscillator and an analogue comparator along with the standard memory and RAM. All the rest have much more (even so you can do a lot with the 12F675).
There are many FREE
projects on this site (with source code in C) that you can use to learn
about microcontrollers including an ultrasonic distance meter, an led matrix
driver, and more.
Each Project includes source code, description and schematics which you can use as a basis for starting your own projects or just use them stand-alone - to obtain the source code - just sign up for the free newsletter in the forms on any page..
Check out the tutorial section where you'll find tutorials on building the circuits, device programming, prototyping and using high level languages.
The tips and techniques section gives information on designing specific circuits that either are difficult or that save you time and effort.
...98% of the processors used today are microcontollers - that means for every 2 desktop computers you can see in an office there are 98 others that you don't see!. They are in everything toasters, microwave ovens, security alarms, mobile phones, petrol pumps, jogging machines, key fobs... the list is endless.
The reason is simple - reprogrammability - they are effectively reconfigurable hardware blocks. This is important as you don't have to re-wire the circuit when you want a different operation from an existing circuit. You can change their operation very quickly - even in circuit!
All of them have at least one built in timer, often several, as well as
other goodies such as comparators, PWM modules and ADCs and more. These are
all internal hardware units making it simple to create almost any project you
can think of. All you need to do is decide what to use, and then activate the
On this site you can learn how to use these compact devices to create any type of project you can dream up, and you don't have to work in low level assembler - all the projects use high level C Programming which makes it easier to update and understand what is going on.
The navigation bar shows you some of the projects, all of which include free C code and description.
There are many different types of microcontroller from many different manufacturers and two popular types are from MicrochipTM and AtmelTM: In fact Microchip has bough Atmel (2016) to broaden their product range - but you won't see any difference yet they still look like separate companies.
MicrochipTM (Industry popular PIC range)
MicrochipTM specialises in supplying almost bespoke solutions (microcontrollers) for a problem and creates hundreds of different variants. The idea is that you create a solution to a problem and you want to cost reduce it so what you really want to do is chop out all the hardware that you do not need.
There are many variants with added built-in modules such as a GLCD lcd driver, a motor controller, a capacitive touch sensor etc. So you choose a device based on what hardware you want to control. You can even get 6 pin SMD (SOT-23) microcontrollers!
On this site only a few devices are used 12F675, 16F88, 16F877A, 18F2550 because these devices offer a broad range of internal peripherals found in almost all in the devices in the same family (12F,16F 18F). You can learn here about these devices and be able to move easily to another, since the internal hardware is controlled in the same way.
There are also examples of using Arduino for building projects wit the main device in these being the AtMega328p which is broadly similar to the 18F2550.
AtmelTM : Made extremely popular by the Open source ArduinoTM group.
You have probably heard of the ArduinoTM which is not a microcontroller but rather an open source movement that uses Atmel (and other) microcontrollers to offer a simplified way of connecting hardware (shields) and control devices (software). Because the hardware and software is open source many people have contributed free software so it makes it easy to quickly setup and create something.
Be warned though that just because you can use other software and connect it quickly may not mean that you understand it - and that means that any bugs in the software are up to you to find and correct.
Have your say about what you just read! Leave me a comment in the box below.
Don’t see the comments box? Log in to your Facebook account, give Facebook consent, then return to this page and refresh it.