19ECE304 Introduction
19ECE304 Introduction
Interfacing (3 0 3 4)
Mr. Giriraja C V
Ms. Jayashree M Oli
Ms. Priya B K
1
19ECE304 - Microcontrollers and Interfacing
Course Objectives
Course Outcomes:
2
19ECE304 - Microcontrollers and Interfacing
Module I
Module II
3
19ECE304 - Microcontrollers and Interfacing
Module III
Lab component
Basic Assembly Language Programs - PLL configuration - GPIO programming - Analog Sensor
interfacing using ADC - Serial Communication using UART -External Interrupt configuration -
PWM based motor speed control - Single stepping of Stepper Motor - Sine wave generation
using DAC - Universal Timer using Timer peripheral -Digital Panel meter using Seven Segment
Display Keypad and LCD interfacing.
4
19ECE304 - Microcontrollers and Interfacing
Text Book(s)
[1] Steve Furber, “ARM system On Chip Architecture”, Addison Wesley, 2000.
[2] LPC2148 User manual, NXP Semiconductors.
Reference(s)
[1] T Martin, “The Insider's Guide to the Philips ARM7-based Microcontrollers: An Engineer's
Introduction to the LPC2100 Series”, Hitex, 2005.
[2] Tammy Noergaard, “Embedded Systems Architecture A Comprehensive Guide for Engineers
and Programmers”, Newnes, 2013.
5
Lectur
Topics Key-Contents Objective References CO
e No(s)
Unit 1
1-4 Introduction to ARM Processor – Processor Families- Able to identify the Text book - 1
ARM Processor Features of ARM-ARM7 TDMI importance of 32-bit Chapter - 2.1 to
Architecture– Programmer’s Model Microcontroller 2.3 CO1
5-6 Introduction to Interrupts and Exceptions - Operating Able to understand Text book - 1
ARM Modes– Addressing Modes the basics of ARM Chapter - 5.1 &
Processor Microcontroller 5.2 CO1
7-14 ARM Instruction ARM Instruction Set-THUMB Able to understand Text book - 1
Set Instruction Set- Basic ARM Assembly the instruction set of Chapter - 3,5,7
Language Programs ARM CO3
Microcontroller
15-18 Pipelining in Three stage pipeline ARM Able to understand Text book - 1
ARM organization - Five stage pipeline the execution of each Chapter - 4.1 to
ARM Cortex M - ARM organization-ARM instruction instruction in ARM 4.3
A & R series. execution Microcontroller CO2
6
Unit 2
19-21 Bus and Memory Advanced Microcontroller Bus Able to understand Text book - 1 CO2
hierarchy in ARM Architecture-Memory size and speed - the bus configuration Chapter -8.2
Microcontroller On-chip memory- Caches and types of memory to 4.3
used
22 - 25 ARM LPC2148 Introduction to LPC2148- Able to understand Text book - 2 CO2
Microcontroller Architecture-Memory Map-Phase the architecture of
Locked Loop-VPB Divider – Wakeup LPC2148
Timer - Brown-out Detector
Unit 3
26-36 LPC2148 External Interrupts- Device Control – Able to analyze Text book - 2 CO3
Peripherals and Timers - Delay Timer- PWM-DC Peripherals and their
Interfacing Motor Speed Control -DAC – Sine programming aspects
Wave Generation Interfacing- Keypad
- LCD – Seven Segment- Stepper
Motor- Temperature Sensor
9
Need to study Microcontroller:
• Many people throughout the world use smartphones, personal digital assistant devices and
microcomputers.
• All of these devices utilize a key component: a microprocessor.
• A device that uses microprocessor is capable of many functions such as word processing,
calculation and communication via Internet or telephone.
• But for the device to work properly, the microprocessor itself has to communicate with other
parts of the device.
• For ex: a microprocessor would need to communicate with the video display to control the
output data that a program may produce.
• Microprocessor would act as device's "brain" in that it transmits, receives and interprets the
data needed to operate a device.
10
Is learning about microcontrollers and microprocessors necessary
for embedded systems?
• There are two aspects in Embedded System Development. Hardware and Firmware (software). Even
in the firmware, there are two aspects: Drivers and Application.
• On application, one may work on protocol stacks - working of network or transport layer algorithms
or one may work on algorithm development using C or MATLAB. Or, one may be working on
developing a test automation framework using LABView or dSpace.
• One need not have much understanding of micro-controller and micro-processor. Most of the
hardware is abstracted from them.
• The industry is moving towards this trend as most of the chip manufactures are providing low level
drivers. The embedded firmware is more on developing application over it.
• If one wants to become a thorough professional and a specialist, he needs to work at a deeper level
and troubleshoot the problems. Sometimes, the drivers provided might not work the way we want or
they might be slower. Also, as you work on some specific cases, we might see different issues which
are typical. In those cases, one needs a good understanding of electronics, micro-controllers.
• If you are new, can approach Embedded Systems through basic understanding of C programming.
Many persons are doing that with the help of Arduino boards. Once you get more familiar, it is better
to work closely with a micro controller based board by using the chip level drivers provided by
manufacturer.. 11
To be a good Embedded developer one should be good in the following skills.
1. C programming skill
2. Ability to understand Memory Map
3. Each controllers Start and End Address
4. Ability to understand the functional description of Controllers
5. How to interact with the controllers and get the work done.
12
Applications:
• Instrumentation
• Control
• Communication
• Office automation
• Consumer – Calculators, Accounting system, Games machine, Traffic light Control, Data
acquisition systems, Multi user, multi-function environments, Military applications,
wristwatches, consumer electronics and even automobiles.
• House hold devices
• Transportation
• Medical field
• Entertainment
13
14