circuitprofessor.com

path to learn electronics

what is a microcontroller like Arduino Uno / Arduino mega /Arduino nano? How does it work?

ByDavid E. Olson

Nov 25, 2022

 Arduino is the most common Microcontroller these days. ATmega328 or ATmega328p chips are in Arduino UNO and ATmega2560 is in Arduino mega boards. RAM, ROM, CPU and many components are in a single chip. mainly three languages can use to write the program on the chip. After sending our code to the chip, we can take inputs and send output signals from the board. we can do many things using these kinds of Arduino boards.

  • Arduino board

The Arduino UNO board is a 2.7” x 2.1” size board and there is a chip on the board. The Arduino Uno board has ATmega328/ATmega328p chip and the Arduino mega has an ATmega2560 chip, and the Arduino nano board has an ATmega328 chip. ATmega328, ATmega328p and ATmega2560 are microcontrollers attached to a panel with other components to use easily. 

Arduino UNO

Arduino Uno

Arduino mega

Arduino Uno

Arduino nano

Arduino Uno


There is a tiny element in the Arduino board. Which is called a “cristal” (Crystal oscillator ). That oscillator is generated the clock pulse and the main chip (microcontroller ) works according to pulse speed. usually, That oscillator generates 16MHz oscillations.

Arduino Uno
Arduino Uno

Now let’s consider about Arduino UNO board which means the ATmega328 .You can see various tiny elements around the main chip.

  • 13 DIGITAL I/O (Input and Output) ports 

There are  13 DIGITAL I/O (Input and Output) ports in the chip. Which are used to take the digital input and give digital output to the external components.

Arduino Uno
  • ANALOG I/O ports

 And there are 6 ANALOG I/O ports. Actually, each port is internally connected to the main chip (microcontroller).

Arduino Uno

Also, there are two ground ports and two output ports, which are 5V and 3.3 V. You can use these ports for different purposes.

Arduino Uno
  • reset button

Small tiny reset button in the corner of the board and by pressing this button we can erase the internal written program.

Arduino Uno
  • small LED

Here is a small LED that is attached to the 13th digital I/O ports That means, you can identify the output of the 13th pin by seeing it.

Arduino Uno
Arduino Uno
  • ICSP( In-Circuit Serial Programming ) 

There are 6 pins in the Arduino board that are used to program the ic externally. I will post about these pins in AVR programming

Arduino Uno
  • USB Port

In usual cases, we use USB (universal serial bus) to program the IC. You can see there is a  small chip (USB -TTL converter ) in front of the USB port which makes a path between the USB and communicates with each other.

Arduino Uno

If you want to know about Arduino IC
(microcontroller ) hardware architecture then visits this. you can learn more about computers from the past in this article.

You can simulate your code and your components by using Tikercad. It is a free web-based platform and you can also code in there. 

if you are a beginner then use Tikercad and 100% free and you can code Arduino in threeway

  1. using blocks
  2. Arduino language
  3. AVR c

Arduino Uno

And there are many pc software to simulate Arduino, I personally use the proteus.

Arduino Uno

you can find more articles which are related to microcontroller internal architecture, history of the computers and microcontrollers  and AVR C & Assembly programming

Arduino is a more user-friendly hardware programming kit and you can create your own robots and any other projects. there are many modules available in the market and by connecting those modules to your board, you can connect your board to the internet, main power supply, mobile phone and any other devices.

I think you have some knowledge about Arduino boards.do you have any desire to programme the Arduino chip (ATmega328)? will it be easy or hard for you? what is your next Arduino project?

2 thoughts on “what is a microcontroller like Arduino Uno / Arduino mega /Arduino nano? How does it work?”

Leave a Reply

Your email address will not be published. Required fields are marked *