Introduction to Embedded Systems Instructed by Iksan Bukhori
Introduction to Embedded Systems Instructed by: Iksan Bukhori
Outline • • Course Information Course Overview & Objectives Course Materials Course Requirement/Evaluation/Grading (REG)
I. Course Information • Instructor + Name : Iksan Bukhori + Address : Jl. Ki Hadjar Dewantara, President University, Cikarang, Bekasi : bukhoriiksan@gmail. com : + Email Address + Office Hours • Course‘s Meeting Time & Location + Meeting Time : Thursday-> 10. 30 – 13. 00 (Lec) + Location : Friday -> 10. 30 – 13. 00 (Lab) : Room B, President University, Cikarang Baru, Bekasi
Course Objectives The objectives of this course are students should be able to : • Demonstrate the understanding of several microprocessor architectures & organizations, bus systems, input/output units, and memory systems • Exhibit the ability in designing and building an interface for AVR ATmega 328 p microcontroller of an Arduino UNO Board • Develop interface programming using Assembly, or C languages • Assemble the interfacing of AVR ATmega 328 p microcontroller to other external peripherals, sensor(s) , actuator(s), computer(s)
III. Course Materials Week (Tentative) I II IV V VI Content Activity
Week Content Activity (Tentative) VIII IX X XI XIII Final Exam : All Chapters/Activities
IV. Course Requirement/Evaluation/Grading • Requirements : - Microcomputer Interfacing - Engineering Programming • Evaluation for the final grade will be based on : - Mid-Term Exam - Quizzes - Lab Experiments or Assignments - Course Project : 30 % : 15 % : 25 % : 30%
- Mid-Term Exam consists of Lectures given in between the Week 1 and the Week 6. - Final Exam covers whole subjects or materials given during the classes. § Grading Policy Final grades may be adjusted; however, you are guaranteed the following: If your final score is 85 - 100, your grade will be A. If your final score is 70 - 84, your grade will be B. If your final score is 60 - 69, your grade will be C. If your final score is 55 - 59, your grade will be D. If your final score is < 55, your grade will be E.
REFERENCES • LOTS
Rules & Regulations
Chapter 2 Intro to Arduino
2. 1 Meet Arduino
2. 2 ATmega 328 P Architecture
2. 3 AVR CPU Core Architecture
2. 1. 1 Arduino IDE See: http: //arduino. cc/en/Guide/Environment for more information
2. 2 Input/Output Image from Theory and Practice of Tangible User Interfaces at UC Berkley
2. 3 Digital I/O • Digital IO is binary valued—it’s either on or off, 1 or 0 • Internally, all microprocessors are digital, why? 1 0
Arduino Digital I/0 www. mikroe. com/chapters/view/1 pin. Mode(pin, mode) Sets pin to either INPUT or OUTPUT digital. Read(pin) Reads HIGH or LOW from a pin digital. Write(pin, value) Writes HIGH or LOW to a pin Electronic stuff Output pins can provide 40 m. A of current Writing HIGH to an input pin installs a 20 KΩ pullup
2. 4 Analog Input • Think about music stored on a CD---an analog signal captured on digital media – Sample rate – Word length
2. 4. 1. Analog to Digital
2. 4. 2 Arduino Analog Input Image credit: Tod Kurt • Resolution: the number of different voltage levels (i. e. , states) used to discretize an input signal • Resolution values range from 256 states (8 bits) to 4, 294, 967, 296 states (32 bits) • The Arduino uses 1024 states (10 bits) • Smallest measurable voltage change is 5 V/1024 or 4. 8 m. V • Maximum sample rate is 10, 000 times a second
2. 4. 3 Signal Quantization
3. 1 Analog Output • Can a digital devise produce analog output? Image from Theory and Practice of Tangible User Interfaces at UC Berkley • Analog output can be simulated using pulse width modulation (PWM)
3. 1. 1 Pulse Width Modulation • Can’t use digital pins to directly supply say 2. 5 V, but can pulse the output on and off really fast to produce the same effect • The on-off pulsing happens so quickly, the connected output device “sees” the result as a reduction in the voltage Image from Theory and Practice of Tangible User Interfaces at UC Berkley
3. 1. 2 PWM Duty Cycle output voltage = (on_time / cycle_time) * 5 V Image credit: Tod Kurt Fixed cycle length; constant number of cycles/sec
3. 1. 3 Arduino PWM Pins • Command: analog. Write(pin, value) • value is duty cycle: between 0 and 255 • Examples: analog. Write(9, 128) for a 50% duty cycle analog. Write(11, 64) for a 25% duty cycle Image from Theory and Practice of Tangible User Interfaces at UC Berkley
4. 1 Breadboard Circuitry
Thank You
- Slides: 28