SlideShare ist ein Scribd-Unternehmen logo
1 von 33
By P. Venkata Sai Vamsi,
3rd Year EE, B.Tech,
IIT Indore.

ELECTRONICS CLUB, IIT INDORE
Outline
•
•
•
•
•
•
•

Introduction
Block Diagrams
Classifications in Microcontrollers (Atmega 32A)
Integration of Keyboard with the Microcontroller
Integration of LCD Display with the Microcontroller
CID CALCULATOR
Programming
Introduction (Source – Wikipedia)
Microprocessor:- The microprocessor is a multipurpose
programmable device that accepts digital data as input, processes
it according to instructions stored in its memory, and provides
results as output.

8085 MICROPROCESSOR
Microcontroller:- is a small computer on a single integrated
circuit containing a processor core, memory, and
programmable input/output peripherals.
Example:Microcontroller based
Microwave

Peripherals:- is a device that is connected to a host computer,
but not an integral part of it. It expands the host's capabilities
but does not form part of the core computer architecture. It is
often, but not always, partially or completely dependent on the
host.
There are three different types of peripherals:
I. Input devices (mouse, keyboards, etc.)
II. Output devices (monitors, printers, etc.)
III. Storage devices (hard drives, flash drives, etc.)
Examples:-

4x4 Keypad

16x2 LCD Display
Microprocessor Block Diagram

Ex:- Keyboard

MICROPROCESSOR
Microcontroller Block Diagram

MICROCONTROLLER

PORTS
Classifications in Microcontrollers (ATMEGA 32A)
• Ports:- PORT A, PORT B, PORT C, PORT D
Each port consists of 8 pins, to transfer 8 bit data between the
Microcontroller and the Peripheral devices. These ports can acts
as both input/output ports.
• Interrupts:- INT 0, INT 1

interrupt is a signal to the processor emitted by hardware or
software indicating an event that needs immediate attention.
The processor responds by suspending its current activities,
saving its state, and executing a small program called
an interrupt handler (or interrupt service routine, ISR) to deal
with the event. This interruption is temporary, and after the
interrupt handler finishes, the processor resumes execution of
the previous thread.
Edge triggered interrupt:- An edge-triggered interrupt is an
interrupt signaled by a level transition on the interrupt line,
either a falling edge (high to low) or a rising edge (low to high).

***For more details in using Interrupts contact me pvsvamsi2009@gmail.com

Active Low and Active High:- If any port is activated by giving
low (0) input, then it is called as Active Low and vice versa.
Ex:- Reset is active low
• ATMEGA 32A Pin Configuration

Back
Integration of Keyboard with the Microcontroller
Key Board Integration (4x4 Keyboard)

Switches
Here I connected the
keyboard to PortB.
Any port will solve the
purpose.
Before Pressing a key
By following the above procedure, we can get the row no of the
key pressed.
Question:- How we will find the column no of the key pressed?
By following the above procedure, we can get the ‘row no’ of the
key pressed.
Question:- How we will find the ‘column no’ of the key pressed?
Answer:- By setting the value of each column to ‘1’ (one at a
time), we can observe the change in the state of the row 1 for
the corresponding change in the state of column 1 (here we
pressed the 1st key).

*****This is the end of the keyboard integration*****
Integration of LCD Display with the Microcontroller
Why do we prefer LCD Display to 16/17 segment ALPHA Numeric
Display?
Reasons:1. Length of the display - In 16x2 LCD Display unit, we can
display up to the 32 characters. Whereas, in 16/17 segment
ALPHA Numeric Display we require, 32 display units to
display the same.
2. Ease of use – Predefined libraries are available for the LCD
Display.
Integration of LCD Display with the Microcontroller

Connections with Atmega 32A
Procedure
Add the predefined libraries to your project folder and initialize
the LCD subsystem using a call to LCDInit(LS_BLINK|LS_ULINE).
To write any text call LCDWriteString("Welcome"); To write any
number call void LCDWriteInt(int val,unsigned int field_length);
This will print a integer contained in “val”. The field length is the
length of field in which the number is printed.
Example:- LCDWriteInt(3,4); will print as follows
Question:- Can any one guess what happens if we write
LCDWriteInt(123,5); ?
Question:- Can any one guess what happens if we write
LCDWriteInt(123,5); ?
Answer:-
Next function - void LCDGotoXY(uint8_t x,uint8_t y);
Here, uint8_t represents unsigned integer which is 8bit.
So, the maximum number it can store = 2^8-1 = 255.
LCDGotoXY(11,1);

This function changes the cursor position to the given X,Y
coordinates.
LCD Display panel, will retain the previously displayed value. It
won’t clear it.
Well, does anyone wonder how to clear the display then?
Here comes the use of another important function LCDClear();
This will clears the display and reset’s the default cursor position
to (0,0).
Next function - LCDWriteStringXY(x,y,msg);
With this function, user can display the message at his desired
coordinates.
For Example:LCDWriteStringXY(3,0,”hello”);
LCDWriteStringXY(8,1,”world”);

Similarly there is a function for integers.
LCDWriteIntXY(x,y,num,field_length);
*****This is the end of the LCD Display integration*****
FLUXUS 2014

CID CALCULATOR

FEB 7th 2014

Basic components required:1. ATMEGA 32A Microcontroller
2. Display unit ( I suggest you to use
16x2 LCD Display unit)
3. 4x4 Keyboard(No restriction with
the size)
4. Connecting Wires
5. Circuit Board
6. Battery
7. *HD74LS08 IC (AND Gate)
8. **Programmer
*Depends on whether you are going to use interrupts or not.
**We do possess one USB Programmer, which can be used for programming.
Bread boards, Soldering wire and Soldering irons are available with our electronics club.
How to start???
I think this is the big question in your mind!!!
Steps to complete the CID CALCULATOR:-

1.
2.
3.
4.

Finish off the connections part.
Start programming the microcontroller.
Implement your own ideas.
Test the functionalities of your design.

That’s it!!!
How to Connect??
How to Connect??
Connection’s part is already covered!!!
Programming
Software used: Atmel Studio 6.1
Size: Around 900MB
(This can be downloaded directly from the atmel website)
Language: ‘Embedded C’
There is no much difference between ‘embedded c’ and ‘c’.
How to connect the Programmer
ISP- In System Programming

If you remember the pin
configuration of ATMEGA 32A

MOSI - Pin 6
MISO - Pin 7
SCK - Pin 8
RESET - Pin 9
VCC - Pin 10
GND - Pin 11
Sample Program

Atmel Studio 6.1

To Blink an LED:#define F_CPU 8000000UL //Setting the clock frequency for
using delay
#include<avr/io.h>
#include<avr/interrupt.h> // For Interrupts
#include<util/delay.h>
// For Delay function
int main(void)
{ DDRD = 0xFF;
//setting Port D as output port
while(1)
//to run the loop continuously
{ PORTD = 0XFF;
//giving high (1) as output to the port D
_delay_ms(1000); //giving delay
PORTD = 0x00;
//giving low (0) as output to the port D
_delay_ms(1000); //giving delay
}}
THANK YOU

For queries, write to me @
pvsvamsi2009@gmail.com

Weitere ähnliche Inhalte

Was ist angesagt?

Microcontroller presentation
Microcontroller presentationMicrocontroller presentation
Microcontroller presentationredwan1006066
 
Tutorial on avr atmega8 microcontroller, architecture and its applications
Tutorial on avr atmega8 microcontroller, architecture and its applicationsTutorial on avr atmega8 microcontroller, architecture and its applications
Tutorial on avr atmega8 microcontroller, architecture and its applicationsEdgefxkits & Solutions
 
AVR Microcontroller
AVR MicrocontrollerAVR Microcontroller
AVR MicrocontrollerÖzcan Acar
 
What is a Microcontroller ?
What is a Microcontroller ?What is a Microcontroller ?
What is a Microcontroller ?ShrutiVij4
 
1 introducing embedded systems and the microcontrollers
1 introducing embedded systems and the microcontrollers1 introducing embedded systems and the microcontrollers
1 introducing embedded systems and the microcontrollersBidhu Deka
 
Intro to micro controller (Atmega16)
Intro to micro controller (Atmega16)Intro to micro controller (Atmega16)
Intro to micro controller (Atmega16)Ramadan Ramadan
 
Microcontroller overview 1
Microcontroller overview 1Microcontroller overview 1
Microcontroller overview 1Sally Salem
 
AVR_Course_Day4 introduction to microcontroller
AVR_Course_Day4 introduction to microcontrollerAVR_Course_Day4 introduction to microcontroller
AVR_Course_Day4 introduction to microcontrollerMohamed Ali
 
Introduction to microcontrollers and embedded systems
Introduction to microcontrollers and embedded systemsIntroduction to microcontrollers and embedded systems
Introduction to microcontrollers and embedded systemsTyler Ross Lambert
 
Embedded c & working with avr studio
Embedded c & working with avr studioEmbedded c & working with avr studio
Embedded c & working with avr studioNitesh Singh
 
how to generate sms
how to generate smshow to generate sms
how to generate smssumant reddy
 

Was ist angesagt? (20)

Microcontroller presentation
Microcontroller presentationMicrocontroller presentation
Microcontroller presentation
 
Avr introduction
Avr introductionAvr introduction
Avr introduction
 
Tutorial on avr atmega8 microcontroller, architecture and its applications
Tutorial on avr atmega8 microcontroller, architecture and its applicationsTutorial on avr atmega8 microcontroller, architecture and its applications
Tutorial on avr atmega8 microcontroller, architecture and its applications
 
AVR Microcontroller
AVR MicrocontrollerAVR Microcontroller
AVR Microcontroller
 
What is a Microcontroller ?
What is a Microcontroller ?What is a Microcontroller ?
What is a Microcontroller ?
 
1 introducing embedded systems and the microcontrollers
1 introducing embedded systems and the microcontrollers1 introducing embedded systems and the microcontrollers
1 introducing embedded systems and the microcontrollers
 
Introduction in microcontroller
Introduction in microcontrollerIntroduction in microcontroller
Introduction in microcontroller
 
Intro to micro controller (Atmega16)
Intro to micro controller (Atmega16)Intro to micro controller (Atmega16)
Intro to micro controller (Atmega16)
 
Microcontroller overview 1
Microcontroller overview 1Microcontroller overview 1
Microcontroller overview 1
 
AVR_Course_Day4 introduction to microcontroller
AVR_Course_Day4 introduction to microcontrollerAVR_Course_Day4 introduction to microcontroller
AVR_Course_Day4 introduction to microcontroller
 
ATmega32
ATmega32 ATmega32
ATmega32
 
AVR ATmega32
AVR ATmega32AVR ATmega32
AVR ATmega32
 
Introduction to microcontrollers and embedded systems
Introduction to microcontrollers and embedded systemsIntroduction to microcontrollers and embedded systems
Introduction to microcontrollers and embedded systems
 
ATmega 16
ATmega 16ATmega 16
ATmega 16
 
Microcontroller
MicrocontrollerMicrocontroller
Microcontroller
 
Embedded c & working with avr studio
Embedded c & working with avr studioEmbedded c & working with avr studio
Embedded c & working with avr studio
 
8 bit microcontroller
8 bit microcontroller8 bit microcontroller
8 bit microcontroller
 
Micro-controller course lec 01
Micro-controller course lec 01Micro-controller course lec 01
Micro-controller course lec 01
 
how to generate sms
how to generate smshow to generate sms
how to generate sms
 
3.TechieNest microcontrollers
3.TechieNest  microcontrollers3.TechieNest  microcontrollers
3.TechieNest microcontrollers
 

Andere mochten auch

Introduction to microcontrollers
Introduction to microcontrollersIntroduction to microcontrollers
Introduction to microcontrollersCorrado Santoro
 
Integrated circuits
Integrated circuitsIntegrated circuits
Integrated circuitsdhawal mehta
 
Integrated Circuits
Integrated CircuitsIntegrated Circuits
Integrated CircuitsANAND G
 
Integrated circuits
Integrated circuitsIntegrated circuits
Integrated circuitsNaveen Sihag
 
Know About Different Types of Integrated Circuits
Know About Different Types of Integrated CircuitsKnow About Different Types of Integrated Circuits
Know About Different Types of Integrated Circuitselprocus
 
Chp4 introduction to the pic microcontroller copy
Chp4 introduction to the pic microcontroller   copyChp4 introduction to the pic microcontroller   copy
Chp4 introduction to the pic microcontroller copymkazree
 
Integrated circuit
Integrated circuitIntegrated circuit
Integrated circuitJessa Arnado
 
Computer Integrated Manufacturing
Computer Integrated Manufacturing  Computer Integrated Manufacturing
Computer Integrated Manufacturing suraj_21
 

Andere mochten auch (8)

Introduction to microcontrollers
Introduction to microcontrollersIntroduction to microcontrollers
Introduction to microcontrollers
 
Integrated circuits
Integrated circuitsIntegrated circuits
Integrated circuits
 
Integrated Circuits
Integrated CircuitsIntegrated Circuits
Integrated Circuits
 
Integrated circuits
Integrated circuitsIntegrated circuits
Integrated circuits
 
Know About Different Types of Integrated Circuits
Know About Different Types of Integrated CircuitsKnow About Different Types of Integrated Circuits
Know About Different Types of Integrated Circuits
 
Chp4 introduction to the pic microcontroller copy
Chp4 introduction to the pic microcontroller   copyChp4 introduction to the pic microcontroller   copy
Chp4 introduction to the pic microcontroller copy
 
Integrated circuit
Integrated circuitIntegrated circuit
Integrated circuit
 
Computer Integrated Manufacturing
Computer Integrated Manufacturing  Computer Integrated Manufacturing
Computer Integrated Manufacturing
 

Ähnlich wie Introduction to Microcontrollers

microbit Microbit programming Microbit programming
microbit Microbit programming Microbit programmingmicrobit Microbit programming Microbit programming
microbit Microbit programming Microbit programmingssuser5feb2c1
 
Arduino PAPER ABOUT INTRODUCTION
Arduino PAPER ABOUT INTRODUCTION  Arduino PAPER ABOUT INTRODUCTION
Arduino PAPER ABOUT INTRODUCTION NAGASAI547
 
Customizable Microprocessor design on Nexys 3 Spartan FPGA Board
Customizable Microprocessor design on Nexys 3 Spartan FPGA BoardCustomizable Microprocessor design on Nexys 3 Spartan FPGA Board
Customizable Microprocessor design on Nexys 3 Spartan FPGA BoardBharat Biyani
 
An_Introduction_to_Microcontrollers.pptx
An_Introduction_to_Microcontrollers.pptxAn_Introduction_to_Microcontrollers.pptx
An_Introduction_to_Microcontrollers.pptxStefan Oprea
 
Introduction_to_Mechatronics_Chapter67.pdf
Introduction_to_Mechatronics_Chapter67.pdfIntroduction_to_Mechatronics_Chapter67.pdf
Introduction_to_Mechatronics_Chapter67.pdfBereket Walle
 
Developing an avr microcontroller system
Developing an avr microcontroller systemDeveloping an avr microcontroller system
Developing an avr microcontroller systemnugnugmacmac
 
Password based door lock system using 8051 microcontroller final report
Password based door lock system using 8051 microcontroller final reportPassword based door lock system using 8051 microcontroller final report
Password based door lock system using 8051 microcontroller final reportChinaraja Baratam
 
Paper id 36201529
Paper id 36201529Paper id 36201529
Paper id 36201529IJRAT
 
Embedded systems presentation
Embedded systems presentationEmbedded systems presentation
Embedded systems presentationSurender Singh
 
INDUSTRIAL TRAINING REPORT EMBEDDED SYSTEM.pptx
INDUSTRIAL TRAINING REPORT EMBEDDED SYSTEM.pptxINDUSTRIAL TRAINING REPORT EMBEDDED SYSTEM.pptx
INDUSTRIAL TRAINING REPORT EMBEDDED SYSTEM.pptxMeghdeepSingh
 
Arduino by yogesh t s'
Arduino by yogesh t s'Arduino by yogesh t s'
Arduino by yogesh t s'tsyogesh46
 
Advanced view of atmega microcontroller projects list at mega32 avr
Advanced view of atmega microcontroller projects list   at mega32 avrAdvanced view of atmega microcontroller projects list   at mega32 avr
Advanced view of atmega microcontroller projects list at mega32 avrWiseNaeem
 
arduinocourse-180308074529 (1).pdf
arduinocourse-180308074529 (1).pdfarduinocourse-180308074529 (1).pdf
arduinocourse-180308074529 (1).pdfssusere5db05
 
Rodrigo Almeida - Microkernel development from project to implementation
Rodrigo Almeida - Microkernel development from project to implementationRodrigo Almeida - Microkernel development from project to implementation
Rodrigo Almeida - Microkernel development from project to implementationFelipe Prado
 
AVR Atmega16 based Projects List - ATMega32 AVR _ Atmega16 based Projects.pdf
AVR Atmega16 based Projects List - ATMega32 AVR _ Atmega16 based Projects.pdfAVR Atmega16 based Projects List - ATMega32 AVR _ Atmega16 based Projects.pdf
AVR Atmega16 based Projects List - ATMega32 AVR _ Atmega16 based Projects.pdfIsmailkhan77481
 
Microcontroller from basic_to_advanced
Microcontroller from basic_to_advancedMicrocontroller from basic_to_advanced
Microcontroller from basic_to_advancedImran Sheikh
 
Networking of Micro-Controllers through USB
Networking of Micro-Controllers through USBNetworking of Micro-Controllers through USB
Networking of Micro-Controllers through USBpranjal009
 

Ähnlich wie Introduction to Microcontrollers (20)

microbit Microbit programming Microbit programming
microbit Microbit programming Microbit programmingmicrobit Microbit programming Microbit programming
microbit Microbit programming Microbit programming
 
Arduino PAPER ABOUT INTRODUCTION
Arduino PAPER ABOUT INTRODUCTION  Arduino PAPER ABOUT INTRODUCTION
Arduino PAPER ABOUT INTRODUCTION
 
Customizable Microprocessor design on Nexys 3 Spartan FPGA Board
Customizable Microprocessor design on Nexys 3 Spartan FPGA BoardCustomizable Microprocessor design on Nexys 3 Spartan FPGA Board
Customizable Microprocessor design on Nexys 3 Spartan FPGA Board
 
An_Introduction_to_Microcontrollers.pptx
An_Introduction_to_Microcontrollers.pptxAn_Introduction_to_Microcontrollers.pptx
An_Introduction_to_Microcontrollers.pptx
 
Introduction_to_Mechatronics_Chapter67.pdf
Introduction_to_Mechatronics_Chapter67.pdfIntroduction_to_Mechatronics_Chapter67.pdf
Introduction_to_Mechatronics_Chapter67.pdf
 
Developing an avr microcontroller system
Developing an avr microcontroller systemDeveloping an avr microcontroller system
Developing an avr microcontroller system
 
Password based door lock system using 8051 microcontroller final report
Password based door lock system using 8051 microcontroller final reportPassword based door lock system using 8051 microcontroller final report
Password based door lock system using 8051 microcontroller final report
 
Paper id 36201529
Paper id 36201529Paper id 36201529
Paper id 36201529
 
Embedded systems presentation
Embedded systems presentationEmbedded systems presentation
Embedded systems presentation
 
INDUSTRIAL TRAINING REPORT EMBEDDED SYSTEM.pptx
INDUSTRIAL TRAINING REPORT EMBEDDED SYSTEM.pptxINDUSTRIAL TRAINING REPORT EMBEDDED SYSTEM.pptx
INDUSTRIAL TRAINING REPORT EMBEDDED SYSTEM.pptx
 
Arduino by yogesh t s'
Arduino by yogesh t s'Arduino by yogesh t s'
Arduino by yogesh t s'
 
Advanced view of atmega microcontroller projects list at mega32 avr
Advanced view of atmega microcontroller projects list   at mega32 avrAdvanced view of atmega microcontroller projects list   at mega32 avr
Advanced view of atmega microcontroller projects list at mega32 avr
 
Arduino course
Arduino courseArduino course
Arduino course
 
arduinocourse-180308074529 (1).pdf
arduinocourse-180308074529 (1).pdfarduinocourse-180308074529 (1).pdf
arduinocourse-180308074529 (1).pdf
 
Picmico
PicmicoPicmico
Picmico
 
Rodrigo Almeida - Microkernel development from project to implementation
Rodrigo Almeida - Microkernel development from project to implementationRodrigo Almeida - Microkernel development from project to implementation
Rodrigo Almeida - Microkernel development from project to implementation
 
AVR Atmega16 based Projects List - ATMega32 AVR _ Atmega16 based Projects.pdf
AVR Atmega16 based Projects List - ATMega32 AVR _ Atmega16 based Projects.pdfAVR Atmega16 based Projects List - ATMega32 AVR _ Atmega16 based Projects.pdf
AVR Atmega16 based Projects List - ATMega32 AVR _ Atmega16 based Projects.pdf
 
Microcontroller from basic_to_advanced
Microcontroller from basic_to_advancedMicrocontroller from basic_to_advanced
Microcontroller from basic_to_advanced
 
Bidirect visitor counter
Bidirect visitor counterBidirect visitor counter
Bidirect visitor counter
 
Networking of Micro-Controllers through USB
Networking of Micro-Controllers through USBNetworking of Micro-Controllers through USB
Networking of Micro-Controllers through USB
 

Kürzlich hochgeladen

The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.christianmathematics
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17Celine George
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...christianmathematics
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfagholdier
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactPECB
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxiammrhaywood
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfAdmir Softic
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docxPoojaSen20
 
Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfChris Hunter
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxVishalSingh1417
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Celine George
 
An Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdfAn Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdfSanaAli374401
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.pptRamjanShidvankar
 

Kürzlich hochgeladen (20)

The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
Explore beautiful and ugly buildings. Mathematics helps us create beautiful d...
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
Advance Mobile Application Development class 07
Advance Mobile Application Development class 07Advance Mobile Application Development class 07
Advance Mobile Application Development class 07
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docx
 
Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdf
 
Unit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptxUnit-IV- Pharma. Marketing Channels.pptx
Unit-IV- Pharma. Marketing Channels.pptx
 
Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17Advanced Views - Calendar View in Odoo 17
Advanced Views - Calendar View in Odoo 17
 
An Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdfAn Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdf
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 

Introduction to Microcontrollers

  • 1. By P. Venkata Sai Vamsi, 3rd Year EE, B.Tech, IIT Indore. ELECTRONICS CLUB, IIT INDORE
  • 2. Outline • • • • • • • Introduction Block Diagrams Classifications in Microcontrollers (Atmega 32A) Integration of Keyboard with the Microcontroller Integration of LCD Display with the Microcontroller CID CALCULATOR Programming
  • 3. Introduction (Source – Wikipedia) Microprocessor:- The microprocessor is a multipurpose programmable device that accepts digital data as input, processes it according to instructions stored in its memory, and provides results as output. 8085 MICROPROCESSOR
  • 4. Microcontroller:- is a small computer on a single integrated circuit containing a processor core, memory, and programmable input/output peripherals. Example:Microcontroller based Microwave Peripherals:- is a device that is connected to a host computer, but not an integral part of it. It expands the host's capabilities but does not form part of the core computer architecture. It is often, but not always, partially or completely dependent on the host.
  • 5. There are three different types of peripherals: I. Input devices (mouse, keyboards, etc.) II. Output devices (monitors, printers, etc.) III. Storage devices (hard drives, flash drives, etc.) Examples:- 4x4 Keypad 16x2 LCD Display
  • 6. Microprocessor Block Diagram Ex:- Keyboard MICROPROCESSOR
  • 8. Classifications in Microcontrollers (ATMEGA 32A) • Ports:- PORT A, PORT B, PORT C, PORT D Each port consists of 8 pins, to transfer 8 bit data between the Microcontroller and the Peripheral devices. These ports can acts as both input/output ports. • Interrupts:- INT 0, INT 1 interrupt is a signal to the processor emitted by hardware or software indicating an event that needs immediate attention. The processor responds by suspending its current activities, saving its state, and executing a small program called an interrupt handler (or interrupt service routine, ISR) to deal with the event. This interruption is temporary, and after the interrupt handler finishes, the processor resumes execution of the previous thread.
  • 9. Edge triggered interrupt:- An edge-triggered interrupt is an interrupt signaled by a level transition on the interrupt line, either a falling edge (high to low) or a rising edge (low to high). ***For more details in using Interrupts contact me pvsvamsi2009@gmail.com Active Low and Active High:- If any port is activated by giving low (0) input, then it is called as Active Low and vice versa. Ex:- Reset is active low
  • 10. • ATMEGA 32A Pin Configuration Back
  • 11. Integration of Keyboard with the Microcontroller
  • 12. Key Board Integration (4x4 Keyboard) Switches Here I connected the keyboard to PortB. Any port will solve the purpose.
  • 14.
  • 15. By following the above procedure, we can get the row no of the key pressed. Question:- How we will find the column no of the key pressed?
  • 16. By following the above procedure, we can get the ‘row no’ of the key pressed. Question:- How we will find the ‘column no’ of the key pressed? Answer:- By setting the value of each column to ‘1’ (one at a time), we can observe the change in the state of the row 1 for the corresponding change in the state of column 1 (here we pressed the 1st key). *****This is the end of the keyboard integration*****
  • 17. Integration of LCD Display with the Microcontroller Why do we prefer LCD Display to 16/17 segment ALPHA Numeric Display? Reasons:1. Length of the display - In 16x2 LCD Display unit, we can display up to the 32 characters. Whereas, in 16/17 segment ALPHA Numeric Display we require, 32 display units to display the same. 2. Ease of use – Predefined libraries are available for the LCD Display.
  • 18. Integration of LCD Display with the Microcontroller Connections with Atmega 32A
  • 19. Procedure Add the predefined libraries to your project folder and initialize the LCD subsystem using a call to LCDInit(LS_BLINK|LS_ULINE). To write any text call LCDWriteString("Welcome"); To write any number call void LCDWriteInt(int val,unsigned int field_length); This will print a integer contained in “val”. The field length is the length of field in which the number is printed. Example:- LCDWriteInt(3,4); will print as follows
  • 20. Question:- Can any one guess what happens if we write LCDWriteInt(123,5); ?
  • 21. Question:- Can any one guess what happens if we write LCDWriteInt(123,5); ? Answer:-
  • 22. Next function - void LCDGotoXY(uint8_t x,uint8_t y); Here, uint8_t represents unsigned integer which is 8bit. So, the maximum number it can store = 2^8-1 = 255. LCDGotoXY(11,1); This function changes the cursor position to the given X,Y coordinates.
  • 23. LCD Display panel, will retain the previously displayed value. It won’t clear it. Well, does anyone wonder how to clear the display then? Here comes the use of another important function LCDClear(); This will clears the display and reset’s the default cursor position to (0,0). Next function - LCDWriteStringXY(x,y,msg); With this function, user can display the message at his desired coordinates.
  • 24. For Example:LCDWriteStringXY(3,0,”hello”); LCDWriteStringXY(8,1,”world”); Similarly there is a function for integers. LCDWriteIntXY(x,y,num,field_length); *****This is the end of the LCD Display integration*****
  • 25. FLUXUS 2014 CID CALCULATOR FEB 7th 2014 Basic components required:1. ATMEGA 32A Microcontroller 2. Display unit ( I suggest you to use 16x2 LCD Display unit) 3. 4x4 Keyboard(No restriction with the size) 4. Connecting Wires 5. Circuit Board 6. Battery 7. *HD74LS08 IC (AND Gate) 8. **Programmer *Depends on whether you are going to use interrupts or not. **We do possess one USB Programmer, which can be used for programming. Bread boards, Soldering wire and Soldering irons are available with our electronics club.
  • 26. How to start??? I think this is the big question in your mind!!!
  • 27. Steps to complete the CID CALCULATOR:- 1. 2. 3. 4. Finish off the connections part. Start programming the microcontroller. Implement your own ideas. Test the functionalities of your design. That’s it!!!
  • 29. How to Connect?? Connection’s part is already covered!!!
  • 30. Programming Software used: Atmel Studio 6.1 Size: Around 900MB (This can be downloaded directly from the atmel website) Language: ‘Embedded C’ There is no much difference between ‘embedded c’ and ‘c’.
  • 31. How to connect the Programmer ISP- In System Programming If you remember the pin configuration of ATMEGA 32A MOSI - Pin 6 MISO - Pin 7 SCK - Pin 8 RESET - Pin 9 VCC - Pin 10 GND - Pin 11
  • 32. Sample Program Atmel Studio 6.1 To Blink an LED:#define F_CPU 8000000UL //Setting the clock frequency for using delay #include<avr/io.h> #include<avr/interrupt.h> // For Interrupts #include<util/delay.h> // For Delay function int main(void) { DDRD = 0xFF; //setting Port D as output port while(1) //to run the loop continuously { PORTD = 0XFF; //giving high (1) as output to the port D _delay_ms(1000); //giving delay PORTD = 0x00; //giving low (0) as output to the port D _delay_ms(1000); //giving delay }}
  • 33. THANK YOU For queries, write to me @ pvsvamsi2009@gmail.com