Micro-controller = Microprocessor + ROM + RAM + I/O + Controllers
The Microcontroller is Semiconductor Integrated Circuit used for various embedded applications. The application may be as simple as a remote control toy car to as complex as the military tank.
A microcontroller is a combination of Memory(RAM, ROM), Oscillator, ADC, etc. with the CPU. Now, Embedded System:
Embedded System is a combination of Hardware (Microcontroller and various electronics components) and Software(Embedded C) to make a Specific purpose Device.
There are lots of embedded applications are available in the market. I can say we started our day with some embedded applications and also end our day with other embedded applications. Few examples: AC, Washing Machine, VR Glasses, Speedometer, Projector, Energy Meter, Digital watch, etc.
In simple terms, if we assume our Brain as the main processor (Microprocessor) of our human body, then it needs to communicate with the external parts like the hand, eye, ear, leg, etc., plus it needs to have some amount of memory. In this memory, there are two types. One memory never forgets, it stores things permanently. The other memory we use is for temporary operations. When we add 6 + 7 we use this memory. We put it all together, so our brain is not only a processor, it also contains some permanent memory (ROM), Some scratch memory (RAM), Part to communicate with the external world (I/O, Input/Output). Controllers (to process Image, voice, etc..).
In essence, we call Micro-controller a Silicon Brain. The beauty is, that this Silicon Brain's activities can be controlled by Human Brain. The human brain can store all the activities to be performed by the Silicon Brain, in its ROM.
MPUs are capable to execute the hex code instructions. The programmer writes the program using embedded C or Assembly language but before loading it into the microcontroller's flash memory he converts it to the hex formate and then loads it into the memory of MPU.
Essentially, microcontrollers (or MCUs) are chips with CPU, Flash, RAM, and peripherals, all on the same chip (usually), with the pinout for the peripherals supported, consisting of digital and often also analog I/O, sometimes also I2C, USB, async serial, etc.
Most MCUs don't have an external address and data bus, as you use the internal memory.
The Atmel ATMega series of MCUs used in Arduinos are typical microcontrollers, but there are several other providers.
MCUs come with differing peripheral support and hence pinout. In the extreme end, there are 6-pin MCUs that if surface-mounted are super-tiny and also very cost-effective, still fully programmable.
MCUs in the same series use the same machine code instructions, making it easy to prototype on a more powerful MCU and then scale down pinout to optimize cost when making the production implementations.
Types of microcontrollers:
Microcontrollers are classified based on the following classifications:
I. Bits: 8- bit Microcontroller, 16-bit Microcontroller, 32-bit Microcontroller
II. Memory: External Memory Microcontroller, Embedded Memory Microcontroller
III. Memory Architecture: Harvard Memory Architecture Microcontroller, Von Neumann or Princeton Memory Architecture Microcontroller
IV. Instruction Set: CISC- Complex Instruction Set Computer, RISC- Reduced Instruction Set Computer.
The difference between a microprocessor and microcontroller:
The following are some differences between a Microcontroller & Microprocessor:
Microcontrollers include RAM (and usually ROM), and microprocessors don’t (or they may only have cache).
Microcontrollers tend to have more peripherals - timers, IO transceivers, ADCs, DMA controllers, etc, and microprocessors tend to just be a CPU.
1) Architecture: Microprocessor is just a CPU ( i.e composed of Control Unit, Register Pairs & some special registers) On the other hand Microcontroller have CPU, Memory & other peripheral Interfaces.
2) Timers and Counters: In Microprocessor there are no Timers and Counters While they are present in Microcontroller.
3) Functionality: Microcontrollers are made to perform a specific function while Microprocessor is a bit kind of general in terms of their functionality i.e. they can use to perform different functions.
4) Cost: Microcontroller is far cheaper than Microprocessor.
5) Purpose: Microcontroller is developed to perform small and dedicated applications and Microprocessor is developed to perform complex and multiple task-based applications.
6) Speed: Microcontrollers have a speed in MHz frequency whereas Microprocessors have a speed range from MHz to GHz, so comparatively Microprocessors are faster than Microcontrollers.
7) Memory: Microcontrollers have their own memory whereas Microcontrollers don’t have their own memory.
8) Firmware: Programming or Firmware can be developed in Microcontrollers easily but comes with certain limitations whereas, in Microprocessors, little complex but can perform multithreaded applications through building an operating system also.
9) In Microcontroller all hardware like RAM, ROM, and External memory with all other peripherals are embedded on a single chip but In a microprocessor, hardware is connected externally, It comes only with the CPU.
10) Processing speed of the Microprocessor is faster than Microcontroller.
11) Micro-processor are more efficient than Microcontrollers.
12) Micro-controller are designed to perform specific tasks like keyboards, fridges, washing machines, air conditioners, etc. but Microprocessors are used where the task is not defined like developing software, game, websites, etc.
13) Micro-controller is far cheaper than a micro-processor.
Does the Arduino Uno use a microprocessor or a microcontroller?
The Arduino Uno uses a microcontroller. In fact, many learners are confused with the term Microcontroller and Microprocessor. In Microcontroller all hardware like RAM, ROM, and External memory with all other peripherals are embedded on a single chip but In a microprocessor, hardware is connected externally, It comes only with the CPU.
Usually, we refer to microcontrollers as low-powered devices (Or a low-powered computer) which may be powered by a low-powered processor (e.g. an 8-bit or 16-bit processor), while microprocessors are referred to as the CPU (or brain) of a computer.
The reason why students require Homework Help is tutors’ assistance
Choosing an online homework help website is very important for improving academic performance. Our customer service people are always available through online chat service at any time even while we're working 24 hours, 7 days a week for instant homework online.
Contact us for homework writing services for all college and university subjects. 100% on-time delivery guaranteed. We will write your homework for A+ grades. So, send your homework doubt or sample project along with the homework deadlines to us and all homework gets completed on time within the agreed deadline.