SlideShare a Scribd company logo
1 of 28
Download to read offline
Prepared by: Mohamed AbdAllah
Raspberry pi interfacing
Lecture 1: Introduction
1
Course content
 Introduction
• Introduction to Embedded Systems.
• Introduction to Linux operating system.
• Introduction to Embedded Linux.
 Linux operating system
• Linux file system hierarchy.
• Linux commands.
• Files permissions.
• Input-Output redirection.
• Environment variables.
• Process management.
• Linux shell scripting. 2
Course content
 Embedded Systems Communication Protocols
• UART protocol.
• I2C protocol.
• SPI protocol.
 Hardware interfacing special cases
• Analog to Digital Converter (ADC).
• Pulse Width Modulation (PWM).
• Polling V.S Interrupt based interfacing.
3
Course content
 Raspberry Pi – Hardware interfacing
• Hardware interfacing using Python language.
• Installing Linux on the Pi.
• Setting a static IP address and local host name for the Pi.
• Configuring the Wi-Fi dongle.
• Working with Pi GPIO.
• Working with Pi UART.
• Working with Pi PWM.
4
Introduction Agenda
 Introduction to Embedded Systems.
• What is an embedded system ?
• Embedded systems in our life.
• Embedded systems characteristics.
• Hardware, Software Co-Design.
• Micro-Controller concepts.
• Embedded systems market in Egypt.
 Introduction to Linux operating system.
• What is an operating system ?
• Why to use an operating system ?
• What is Linux operating system ?
• Linux OS main components.
• Linux features.
 Introduction to Embedded Linux.
• What is an embedded Linux ?
• Why to use embedded Linux ?
• Embedded Linux main components. 5
Introduction Agenda
Introduction
to
Embedded
Systems
Introduction to
Linux operating
system
Introduction
to
Embedded
Linux
6
Introduction to Embedded Systems
Introduction
to
Embedded
Systems
Introduction to
Linux operating
system
Introduction
to
Embedded
Linux
7
Introduction to Embedded Systems
 What is an embedded system ?
An embedded system is a computer system with a dedicated function within
a larger mechanical or electrical system, sometimes with real-time
computing constraints. It is embedded as part of a complete device often
including hardware and mechanical parts.
8
Introduction to Embedded Systems
 Embedded systems in our life
9
Introduction to Embedded Systems
 Embedded systems characteristics
• Cost of hardware and software.
• Memory.
• Power consumption.
• Operator interface.
• Reliability.
• Maintainability.
• Security.
• Safety.
• Real time critical.
• Interface to environment through sensors and actuators.
10
Introduction to Embedded Systems
 Hardware, Software Co-Design
• Break system into subsystems.
• Identify concurrency and dependencies in over all system.
• Allocate system components between hardware and software.
• Trade off between hardware and software.
• Break software into layers.
• Design user interface system.
11
Introduction to Embedded Systems
 Micro-Controller concepts
12
Introduction to Embedded Systems
 Micro-Controller concepts
0010011000
ADD R16,R10
SUB R7,R3
Z = x + y ;
If (y==3)
return 0 ;
file1.c Compiler
file1.asm
Assembler
file1.oLinker
file2.o
file3.o
prog.hex
13
Introduction to Embedded Systems
 Embedded systems market in Egypt
14
Introduction to Linux operating system
Introduction
to
Embedded
Systems
Introduction to
Linux operating
system
Introduction
to
Embedded
Linux
15
Introduction to Linux operating system
 What is an operating system ?
• An operating system acts as an intermediary
between the user of a computer and the
computer hardware. The purpose of an operating
system is to provide an environment in which a
user can execute programs in a convenient and
efficient manner.
• An operating system is software that manages the
computer hardware. The hardware must provide
appropriate mechanisms to ensure the correct
operation of the computer system and to prevent
user programs from interfering with the proper
operation of the system.
16
Introduction to Linux operating system
 Why to use an operating system ?
• Memory management.
• Storage management.
• Process management.
• Protection and security.
• Abstraction layer for every resource.
17
 What is Linux operating system ?
• In 1983, Richard Stallman, founder of the Free Software Foundation, set
forth plans of a complete Unix-like operating system, called GNU,
composed entirely of free software.
• By 1991 the lower level (kernel, device drivers, system-level utilities and
daemons) was still mostly lacking.
• In 1991, Linus Torvalds released the first version of the Linux kernel. Early
Linux developers ported GNU code, including the GNU C Compiler, to the
kernel. The free software community adopted the use of the Linux kernel
as the missing kernel for the GNU operating system.
Introduction to Linux operating system
18
 Linux OS main components
Introduction to Linux operating system
19
 Linux features
• Open Source: Linux source code is freely available and it is community
based development project. Multiple teams works in collaboration to
enhance the capability of Linux operating system and it is continuously
evolving.
• Multi-User: Linux is a multiuser system means multiple users can access
system resources like memory, ram, application programs at same time.
• Multiprogramming: Linux is a multiprogramming system means multiple
applications can run at same time.
• Hierarchical File System: Linux provides a standard file structure in which
system files, user files are arranged.
Introduction to Linux operating system
20
 Linux features
• Shell: Linux provides a special interpreter program which can be used to
execute commands of the operating system. It can be used to do various
types of operations, call application programs etc.
• Security: Linux provides user security using authentication features like
password protection, controlled access to specific files, encryption of
data.
Introduction to Linux operating system
21
Introduction to Linux operating system
22
Introduction to Embedded Linux
Introduction
to
Embedded
Systems
Introduction to
Linux operating
system
Introduction
to
Embedded
Linux
23
 What is an embedded Linux ?
• Operating systems based on the Linux kernel are used
in embedded systems such as consumer electronics
(i.e. set-top boxes, smart TVs, in-vehicle infotainment
(IVI), networking equipment (such as wireless routers),
machine control, industrial automation, navigation
equipment, spacecraft flight software, and medical
instruments in general).
• Thanks to their versatility, operating systems based on
the Linux kernel can be also found in mobile devices
that are actually touchscreen-based embedded
devices, such as smartphones and tablets, together
with personal digital assistants (PDAs) and portable
media players that also include a touchscreen.
Introduction to Embedded Linux
24
 Why to use embedded Linux ?
• Linux kernel supports wide range of architectures like:
 X86 and x64 in PC and multimedia.
 ARM.
 PowerPC mainly in real time applications.
 And much more architectures.
• A very basic Linux system can work on 8 MB of RAM and 4 MB of storage.
• Linux kernel has support for many communication busses like:
 USB.
 SPI.
 CAN.
Introduction to Embedded Linux
25
 Why to use embedded Linux ?
• Linux kernel has support for many networking stacks like:
 Ethernet.
 Wi-Fi.
 Bluetooth.
 IPv4, IPv6, TCP, UDB.
 Firewall and advanced routing.
Introduction to Embedded Linux
26
 Embedded Linux main components
• Cross-compilation Tool Chain: used to compile source code for the
required target hardware.
• Boot loader: used to initialize hardware and load the Linux kernel.
• Linux Kernel: the main software component of the operating system.
• System libraries: System libraries are special functions or programs used
by application programs or system utilities to access Kernel's features.
• File system with other libraries & apps.
Introduction to Embedded Linux
27
Mohamed AbdAllah
Embedded Systems Engineer
mohabdallah8@gmail.com
28

More Related Content

What's hot

RaspberryPi + IoT - Lab to switch on and off a light bulb
RaspberryPi + IoT - Lab to switch on and off a light bulbRaspberryPi + IoT - Lab to switch on and off a light bulb
RaspberryPi + IoT - Lab to switch on and off a light bulbJeff Prestes
 
A seminar report on Raspberry Pi
A seminar report on Raspberry PiA seminar report on Raspberry Pi
A seminar report on Raspberry Pinipunmaster
 
Single Board Computers & Raspberry Pi Basics
Single Board Computers & Raspberry Pi BasicsSingle Board Computers & Raspberry Pi Basics
Single Board Computers & Raspberry Pi BasicsEueung Mulyana
 
Presentation on Raspberry Pi by Sazzad H. IIUC
Presentation on Raspberry Pi by Sazzad H. IIUCPresentation on Raspberry Pi by Sazzad H. IIUC
Presentation on Raspberry Pi by Sazzad H. IIUCshssn7
 
Introduction to embedded linux device driver and firmware
Introduction to embedded linux device driver and firmwareIntroduction to embedded linux device driver and firmware
Introduction to embedded linux device driver and firmwaredefinecareer
 
Introduction to raspberry pi
Introduction to raspberry piIntroduction to raspberry pi
Introduction to raspberry pipraveen_23
 
Raspberrypi best ppt
Raspberrypi best ppt Raspberrypi best ppt
Raspberrypi best ppt SOMRAJ GAUTAM
 
Getting Started with Raspberry Pi v1.2
Getting Started with Raspberry Pi v1.2Getting Started with Raspberry Pi v1.2
Getting Started with Raspberry Pi v1.2macrutan
 
Difference between soc and single board computer ppt1
Difference between soc and single board computer ppt1Difference between soc and single board computer ppt1
Difference between soc and single board computer ppt1Edgefxkits & Solutions
 
Low Cost HD Surveillance Camera using Raspberry PI
Low Cost HD Surveillance Camera using Raspberry PILow Cost HD Surveillance Camera using Raspberry PI
Low Cost HD Surveillance Camera using Raspberry PIVarun A M
 
Raspberry Pi presentation for Computer Architecture class
Raspberry Pi presentation for Computer Architecture classRaspberry Pi presentation for Computer Architecture class
Raspberry Pi presentation for Computer Architecture classMichael Gordon
 
SEMINAR REPORT OF RASPBERRY PI
SEMINAR REPORT OF RASPBERRY PI SEMINAR REPORT OF RASPBERRY PI
SEMINAR REPORT OF RASPBERRY PI GANESH GOVIND BHOR
 
Raspberry pi technology
Raspberry pi technologyRaspberry pi technology
Raspberry pi technologyZeeshan Aslam
 
Introduction To The Beagleboard
Introduction To The BeagleboardIntroduction To The Beagleboard
Introduction To The BeagleboardNeHal VeRma
 

What's hot (20)

RaspberryPi + IoT - Lab to switch on and off a light bulb
RaspberryPi + IoT - Lab to switch on and off a light bulbRaspberryPi + IoT - Lab to switch on and off a light bulb
RaspberryPi + IoT - Lab to switch on and off a light bulb
 
Raspberry Pi
Raspberry PiRaspberry Pi
Raspberry Pi
 
A seminar report on Raspberry Pi
A seminar report on Raspberry PiA seminar report on Raspberry Pi
A seminar report on Raspberry Pi
 
Single Board Computers & Raspberry Pi Basics
Single Board Computers & Raspberry Pi BasicsSingle Board Computers & Raspberry Pi Basics
Single Board Computers & Raspberry Pi Basics
 
Raspberry Pi
 Raspberry Pi  Raspberry Pi
Raspberry Pi
 
Presentation on Raspberry Pi by Sazzad H. IIUC
Presentation on Raspberry Pi by Sazzad H. IIUCPresentation on Raspberry Pi by Sazzad H. IIUC
Presentation on Raspberry Pi by Sazzad H. IIUC
 
Introduction to embedded linux device driver and firmware
Introduction to embedded linux device driver and firmwareIntroduction to embedded linux device driver and firmware
Introduction to embedded linux device driver and firmware
 
Raspberry Pi
Raspberry PiRaspberry Pi
Raspberry Pi
 
Introduction to raspberry pi
Introduction to raspberry piIntroduction to raspberry pi
Introduction to raspberry pi
 
Raspberrypi best ppt
Raspberrypi best ppt Raspberrypi best ppt
Raspberrypi best ppt
 
Getting Started with Raspberry Pi v1.2
Getting Started with Raspberry Pi v1.2Getting Started with Raspberry Pi v1.2
Getting Started with Raspberry Pi v1.2
 
Difference between soc and single board computer ppt1
Difference between soc and single board computer ppt1Difference between soc and single board computer ppt1
Difference between soc and single board computer ppt1
 
Raspberrypi
RaspberrypiRaspberrypi
Raspberrypi
 
Low Cost HD Surveillance Camera using Raspberry PI
Low Cost HD Surveillance Camera using Raspberry PILow Cost HD Surveillance Camera using Raspberry PI
Low Cost HD Surveillance Camera using Raspberry PI
 
Raspberry Pi presentation for Computer Architecture class
Raspberry Pi presentation for Computer Architecture classRaspberry Pi presentation for Computer Architecture class
Raspberry Pi presentation for Computer Architecture class
 
Raspberry pi
Raspberry pi Raspberry pi
Raspberry pi
 
Raspberry pi complete setup
Raspberry pi complete setupRaspberry pi complete setup
Raspberry pi complete setup
 
SEMINAR REPORT OF RASPBERRY PI
SEMINAR REPORT OF RASPBERRY PI SEMINAR REPORT OF RASPBERRY PI
SEMINAR REPORT OF RASPBERRY PI
 
Raspberry pi technology
Raspberry pi technologyRaspberry pi technology
Raspberry pi technology
 
Introduction To The Beagleboard
Introduction To The BeagleboardIntroduction To The Beagleboard
Introduction To The Beagleboard
 

Viewers also liked

Raspberry Pi - Lecture 3 Embedded Communication Protocols
Raspberry Pi - Lecture 3 Embedded Communication ProtocolsRaspberry Pi - Lecture 3 Embedded Communication Protocols
Raspberry Pi - Lecture 3 Embedded Communication ProtocolsMohamed Abdallah
 
Raspberry Pi - Lecture 2 Linux OS
Raspberry Pi - Lecture 2 Linux OSRaspberry Pi - Lecture 2 Linux OS
Raspberry Pi - Lecture 2 Linux OSMohamed Abdallah
 
Raspberry Pi - Lecture 4 Hardware Interfacing Special Cases
Raspberry Pi - Lecture 4 Hardware Interfacing Special CasesRaspberry Pi - Lecture 4 Hardware Interfacing Special Cases
Raspberry Pi - Lecture 4 Hardware Interfacing Special CasesMohamed Abdallah
 
Raspberry Pi - Lecture 5 Python for Raspberry Pi
Raspberry Pi - Lecture 5 Python for Raspberry PiRaspberry Pi - Lecture 5 Python for Raspberry Pi
Raspberry Pi - Lecture 5 Python for Raspberry PiMohamed Abdallah
 
Hardware interfacing basics using AVR
Hardware interfacing basics using AVRHardware interfacing basics using AVR
Hardware interfacing basics using AVRMohamed Abdallah
 
Raspberry pi : an introduction
Raspberry pi : an introductionRaspberry pi : an introduction
Raspberry pi : an introductionLTG Oxford
 
Embedded C programming based on 8051 microcontroller
Embedded C programming based on 8051 microcontrollerEmbedded C programming based on 8051 microcontroller
Embedded C programming based on 8051 microcontrollerGaurav Verma
 
Raspberry Pi and Amateur Radio
Raspberry Pi and Amateur RadioRaspberry Pi and Amateur Radio
Raspberry Pi and Amateur RadioKevin Hooke
 
Embedded c & working with avr studio
Embedded c & working with avr studioEmbedded c & working with avr studio
Embedded c & working with avr studioNitesh Singh
 
Interfacing rs232
Interfacing rs232Interfacing rs232
Interfacing rs232PRADEEP
 
Advance Microcontroller AVR
Advance Microcontroller AVRAdvance Microcontroller AVR
Advance Microcontroller AVRDaksh Raj Chopra
 

Viewers also liked (20)

Raspberry Pi - Lecture 3 Embedded Communication Protocols
Raspberry Pi - Lecture 3 Embedded Communication ProtocolsRaspberry Pi - Lecture 3 Embedded Communication Protocols
Raspberry Pi - Lecture 3 Embedded Communication Protocols
 
Raspberry Pi - Lecture 2 Linux OS
Raspberry Pi - Lecture 2 Linux OSRaspberry Pi - Lecture 2 Linux OS
Raspberry Pi - Lecture 2 Linux OS
 
Raspberry Pi - Lecture 4 Hardware Interfacing Special Cases
Raspberry Pi - Lecture 4 Hardware Interfacing Special CasesRaspberry Pi - Lecture 4 Hardware Interfacing Special Cases
Raspberry Pi - Lecture 4 Hardware Interfacing Special Cases
 
Raspberry Pi - Lecture 5 Python for Raspberry Pi
Raspberry Pi - Lecture 5 Python for Raspberry PiRaspberry Pi - Lecture 5 Python for Raspberry Pi
Raspberry Pi - Lecture 5 Python for Raspberry Pi
 
Hardware interfacing basics using AVR
Hardware interfacing basics using AVRHardware interfacing basics using AVR
Hardware interfacing basics using AVR
 
Embedded C - Lecture 4
Embedded C - Lecture 4Embedded C - Lecture 4
Embedded C - Lecture 4
 
Embedded C - Lecture 3
Embedded C - Lecture 3Embedded C - Lecture 3
Embedded C - Lecture 3
 
Embedded C - Lecture 2
Embedded C - Lecture 2Embedded C - Lecture 2
Embedded C - Lecture 2
 
Embedded C - Lecture 1
Embedded C - Lecture 1Embedded C - Lecture 1
Embedded C - Lecture 1
 
Raspberry pi : an introduction
Raspberry pi : an introductionRaspberry pi : an introduction
Raspberry pi : an introduction
 
Raspberry pi
Raspberry pi Raspberry pi
Raspberry pi
 
Embedded C programming based on 8051 microcontroller
Embedded C programming based on 8051 microcontrollerEmbedded C programming based on 8051 microcontroller
Embedded C programming based on 8051 microcontroller
 
Plc dasar
Plc dasarPlc dasar
Plc dasar
 
Raspberry Pi and Amateur Radio
Raspberry Pi and Amateur RadioRaspberry Pi and Amateur Radio
Raspberry Pi and Amateur Radio
 
Embedded c & working with avr studio
Embedded c & working with avr studioEmbedded c & working with avr studio
Embedded c & working with avr studio
 
Emertxe : Linux training portfolio
Emertxe : Linux training portfolioEmertxe : Linux training portfolio
Emertxe : Linux training portfolio
 
Emertxe : Training portfolio
Emertxe : Training portfolioEmertxe : Training portfolio
Emertxe : Training portfolio
 
Interfacing rs232
Interfacing rs232Interfacing rs232
Interfacing rs232
 
Resume Preparation - Workshop
Resume Preparation - WorkshopResume Preparation - Workshop
Resume Preparation - Workshop
 
Advance Microcontroller AVR
Advance Microcontroller AVRAdvance Microcontroller AVR
Advance Microcontroller AVR
 

Similar to Raspberry Pi - Lecture 1 Introduction

Similar to Raspberry Pi - Lecture 1 Introduction (20)

Linux for embedded_systems
Linux for embedded_systemsLinux for embedded_systems
Linux for embedded_systems
 
Building Embedded Linux Systems Introduction
Building Embedded Linux Systems IntroductionBuilding Embedded Linux Systems Introduction
Building Embedded Linux Systems Introduction
 
EOS
EOSEOS
EOS
 
UNIT 3 HISTORY OF EMBEDDED LINUXEMBEDDED LINUX.pptx
UNIT 3 HISTORY OF EMBEDDED LINUXEMBEDDED LINUX.pptxUNIT 3 HISTORY OF EMBEDDED LINUXEMBEDDED LINUX.pptx
UNIT 3 HISTORY OF EMBEDDED LINUXEMBEDDED LINUX.pptx
 
Nguyen lyhedieuhanh 14-15_hedieuhanhlinux
Nguyen lyhedieuhanh 14-15_hedieuhanhlinuxNguyen lyhedieuhanh 14-15_hedieuhanhlinux
Nguyen lyhedieuhanh 14-15_hedieuhanhlinux
 
운영체제론 Ch21
운영체제론 Ch21운영체제론 Ch21
운영체제론 Ch21
 
Linux Operating System. UOG MARGHAZAR Campus
 Linux Operating System. UOG MARGHAZAR Campus Linux Operating System. UOG MARGHAZAR Campus
Linux Operating System. UOG MARGHAZAR Campus
 
Linux OS presentation
Linux OS presentationLinux OS presentation
Linux OS presentation
 
Licão 01 introduction
Licão 01 introductionLicão 01 introduction
Licão 01 introduction
 
Linux
LinuxLinux
Linux
 
Linux operating system ppt
Linux operating system pptLinux operating system ppt
Linux operating system ppt
 
The linux system
The linux systemThe linux system
The linux system
 
Introduction to Linux basic
Introduction to Linux basicIntroduction to Linux basic
Introduction to Linux basic
 
Intro to linux
Intro to linux Intro to linux
Intro to linux
 
Introduction to linux ppt
Introduction to linux pptIntroduction to linux ppt
Introduction to linux ppt
 
The Linux System
The Linux SystemThe Linux System
The Linux System
 
history_of_linux lec 7.pptx
history_of_linux lec 7.pptxhistory_of_linux lec 7.pptx
history_of_linux lec 7.pptx
 
Unik Slides
Unik SlidesUnik Slides
Unik Slides
 
Linux Environment- Linux vs Unix
Linux Environment- Linux vs UnixLinux Environment- Linux vs Unix
Linux Environment- Linux vs Unix
 
introduction.pdf
introduction.pdfintroduction.pdf
introduction.pdf
 

Recently uploaded

TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor CatchersTechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catcherssdickerson1
 
System Simulation and Modelling with types and Event Scheduling
System Simulation and Modelling with types and Event SchedulingSystem Simulation and Modelling with types and Event Scheduling
System Simulation and Modelling with types and Event SchedulingBootNeck1
 
DM Pillar Training Manual.ppt will be useful in deploying TPM in project
DM Pillar Training Manual.ppt will be useful in deploying TPM in projectDM Pillar Training Manual.ppt will be useful in deploying TPM in project
DM Pillar Training Manual.ppt will be useful in deploying TPM in projectssuserb6619e
 
THE SENDAI FRAMEWORK FOR DISASTER RISK REDUCTION
THE SENDAI FRAMEWORK FOR DISASTER RISK REDUCTIONTHE SENDAI FRAMEWORK FOR DISASTER RISK REDUCTION
THE SENDAI FRAMEWORK FOR DISASTER RISK REDUCTIONjhunlian
 
Instrumentation, measurement and control of bio process parameters ( Temperat...
Instrumentation, measurement and control of bio process parameters ( Temperat...Instrumentation, measurement and control of bio process parameters ( Temperat...
Instrumentation, measurement and control of bio process parameters ( Temperat...121011101441
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024Mark Billinghurst
 
Input Output Management in Operating System
Input Output Management in Operating SystemInput Output Management in Operating System
Input Output Management in Operating SystemRashmi Bhat
 
Crushers to screens in aggregate production
Crushers to screens in aggregate productionCrushers to screens in aggregate production
Crushers to screens in aggregate productionChinnuNinan
 
US Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of ActionUS Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of ActionMebane Rash
 
"Exploring the Essential Functions and Design Considerations of Spillways in ...
"Exploring the Essential Functions and Design Considerations of Spillways in ..."Exploring the Essential Functions and Design Considerations of Spillways in ...
"Exploring the Essential Functions and Design Considerations of Spillways in ...Erbil Polytechnic University
 
Earthing details of Electrical Substation
Earthing details of Electrical SubstationEarthing details of Electrical Substation
Earthing details of Electrical Substationstephanwindworld
 
Katarzyna Lipka-Sidor - BIM School Course
Katarzyna Lipka-Sidor - BIM School CourseKatarzyna Lipka-Sidor - BIM School Course
Katarzyna Lipka-Sidor - BIM School Coursebim.edu.pl
 
Class 1 | NFPA 72 | Overview Fire Alarm System
Class 1 | NFPA 72 | Overview Fire Alarm SystemClass 1 | NFPA 72 | Overview Fire Alarm System
Class 1 | NFPA 72 | Overview Fire Alarm Systemirfanmechengr
 
BSNL Internship Training presentation.pptx
BSNL Internship Training presentation.pptxBSNL Internship Training presentation.pptx
BSNL Internship Training presentation.pptxNiranjanYadav41
 
Internet of things -Arshdeep Bahga .pptx
Internet of things -Arshdeep Bahga .pptxInternet of things -Arshdeep Bahga .pptx
Internet of things -Arshdeep Bahga .pptxVelmuruganTECE
 
National Level Hackathon Participation Certificate.pdf
National Level Hackathon Participation Certificate.pdfNational Level Hackathon Participation Certificate.pdf
National Level Hackathon Participation Certificate.pdfRajuKanojiya4
 
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionSachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionDr.Costas Sachpazis
 
Main Memory Management in Operating System
Main Memory Management in Operating SystemMain Memory Management in Operating System
Main Memory Management in Operating SystemRashmi Bhat
 
Comparative study of High-rise Building Using ETABS,SAP200 and SAFE., SAFE an...
Comparative study of High-rise Building Using ETABS,SAP200 and SAFE., SAFE an...Comparative study of High-rise Building Using ETABS,SAP200 and SAFE., SAFE an...
Comparative study of High-rise Building Using ETABS,SAP200 and SAFE., SAFE an...Erbil Polytechnic University
 

Recently uploaded (20)

TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor CatchersTechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
 
System Simulation and Modelling with types and Event Scheduling
System Simulation and Modelling with types and Event SchedulingSystem Simulation and Modelling with types and Event Scheduling
System Simulation and Modelling with types and Event Scheduling
 
DM Pillar Training Manual.ppt will be useful in deploying TPM in project
DM Pillar Training Manual.ppt will be useful in deploying TPM in projectDM Pillar Training Manual.ppt will be useful in deploying TPM in project
DM Pillar Training Manual.ppt will be useful in deploying TPM in project
 
THE SENDAI FRAMEWORK FOR DISASTER RISK REDUCTION
THE SENDAI FRAMEWORK FOR DISASTER RISK REDUCTIONTHE SENDAI FRAMEWORK FOR DISASTER RISK REDUCTION
THE SENDAI FRAMEWORK FOR DISASTER RISK REDUCTION
 
Instrumentation, measurement and control of bio process parameters ( Temperat...
Instrumentation, measurement and control of bio process parameters ( Temperat...Instrumentation, measurement and control of bio process parameters ( Temperat...
Instrumentation, measurement and control of bio process parameters ( Temperat...
 
IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024IVE Industry Focused Event - Defence Sector 2024
IVE Industry Focused Event - Defence Sector 2024
 
Input Output Management in Operating System
Input Output Management in Operating SystemInput Output Management in Operating System
Input Output Management in Operating System
 
Crushers to screens in aggregate production
Crushers to screens in aggregate productionCrushers to screens in aggregate production
Crushers to screens in aggregate production
 
US Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of ActionUS Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of Action
 
"Exploring the Essential Functions and Design Considerations of Spillways in ...
"Exploring the Essential Functions and Design Considerations of Spillways in ..."Exploring the Essential Functions and Design Considerations of Spillways in ...
"Exploring the Essential Functions and Design Considerations of Spillways in ...
 
Earthing details of Electrical Substation
Earthing details of Electrical SubstationEarthing details of Electrical Substation
Earthing details of Electrical Substation
 
young call girls in Green Park🔝 9953056974 🔝 escort Service
young call girls in Green Park🔝 9953056974 🔝 escort Serviceyoung call girls in Green Park🔝 9953056974 🔝 escort Service
young call girls in Green Park🔝 9953056974 🔝 escort Service
 
Katarzyna Lipka-Sidor - BIM School Course
Katarzyna Lipka-Sidor - BIM School CourseKatarzyna Lipka-Sidor - BIM School Course
Katarzyna Lipka-Sidor - BIM School Course
 
Class 1 | NFPA 72 | Overview Fire Alarm System
Class 1 | NFPA 72 | Overview Fire Alarm SystemClass 1 | NFPA 72 | Overview Fire Alarm System
Class 1 | NFPA 72 | Overview Fire Alarm System
 
BSNL Internship Training presentation.pptx
BSNL Internship Training presentation.pptxBSNL Internship Training presentation.pptx
BSNL Internship Training presentation.pptx
 
Internet of things -Arshdeep Bahga .pptx
Internet of things -Arshdeep Bahga .pptxInternet of things -Arshdeep Bahga .pptx
Internet of things -Arshdeep Bahga .pptx
 
National Level Hackathon Participation Certificate.pdf
National Level Hackathon Participation Certificate.pdfNational Level Hackathon Participation Certificate.pdf
National Level Hackathon Participation Certificate.pdf
 
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionSachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
 
Main Memory Management in Operating System
Main Memory Management in Operating SystemMain Memory Management in Operating System
Main Memory Management in Operating System
 
Comparative study of High-rise Building Using ETABS,SAP200 and SAFE., SAFE an...
Comparative study of High-rise Building Using ETABS,SAP200 and SAFE., SAFE an...Comparative study of High-rise Building Using ETABS,SAP200 and SAFE., SAFE an...
Comparative study of High-rise Building Using ETABS,SAP200 and SAFE., SAFE an...
 

Raspberry Pi - Lecture 1 Introduction

  • 1. Prepared by: Mohamed AbdAllah Raspberry pi interfacing Lecture 1: Introduction 1
  • 2. Course content  Introduction • Introduction to Embedded Systems. • Introduction to Linux operating system. • Introduction to Embedded Linux.  Linux operating system • Linux file system hierarchy. • Linux commands. • Files permissions. • Input-Output redirection. • Environment variables. • Process management. • Linux shell scripting. 2
  • 3. Course content  Embedded Systems Communication Protocols • UART protocol. • I2C protocol. • SPI protocol.  Hardware interfacing special cases • Analog to Digital Converter (ADC). • Pulse Width Modulation (PWM). • Polling V.S Interrupt based interfacing. 3
  • 4. Course content  Raspberry Pi – Hardware interfacing • Hardware interfacing using Python language. • Installing Linux on the Pi. • Setting a static IP address and local host name for the Pi. • Configuring the Wi-Fi dongle. • Working with Pi GPIO. • Working with Pi UART. • Working with Pi PWM. 4
  • 5. Introduction Agenda  Introduction to Embedded Systems. • What is an embedded system ? • Embedded systems in our life. • Embedded systems characteristics. • Hardware, Software Co-Design. • Micro-Controller concepts. • Embedded systems market in Egypt.  Introduction to Linux operating system. • What is an operating system ? • Why to use an operating system ? • What is Linux operating system ? • Linux OS main components. • Linux features.  Introduction to Embedded Linux. • What is an embedded Linux ? • Why to use embedded Linux ? • Embedded Linux main components. 5
  • 6. Introduction Agenda Introduction to Embedded Systems Introduction to Linux operating system Introduction to Embedded Linux 6
  • 7. Introduction to Embedded Systems Introduction to Embedded Systems Introduction to Linux operating system Introduction to Embedded Linux 7
  • 8. Introduction to Embedded Systems  What is an embedded system ? An embedded system is a computer system with a dedicated function within a larger mechanical or electrical system, sometimes with real-time computing constraints. It is embedded as part of a complete device often including hardware and mechanical parts. 8
  • 9. Introduction to Embedded Systems  Embedded systems in our life 9
  • 10. Introduction to Embedded Systems  Embedded systems characteristics • Cost of hardware and software. • Memory. • Power consumption. • Operator interface. • Reliability. • Maintainability. • Security. • Safety. • Real time critical. • Interface to environment through sensors and actuators. 10
  • 11. Introduction to Embedded Systems  Hardware, Software Co-Design • Break system into subsystems. • Identify concurrency and dependencies in over all system. • Allocate system components between hardware and software. • Trade off between hardware and software. • Break software into layers. • Design user interface system. 11
  • 12. Introduction to Embedded Systems  Micro-Controller concepts 12
  • 13. Introduction to Embedded Systems  Micro-Controller concepts 0010011000 ADD R16,R10 SUB R7,R3 Z = x + y ; If (y==3) return 0 ; file1.c Compiler file1.asm Assembler file1.oLinker file2.o file3.o prog.hex 13
  • 14. Introduction to Embedded Systems  Embedded systems market in Egypt 14
  • 15. Introduction to Linux operating system Introduction to Embedded Systems Introduction to Linux operating system Introduction to Embedded Linux 15
  • 16. Introduction to Linux operating system  What is an operating system ? • An operating system acts as an intermediary between the user of a computer and the computer hardware. The purpose of an operating system is to provide an environment in which a user can execute programs in a convenient and efficient manner. • An operating system is software that manages the computer hardware. The hardware must provide appropriate mechanisms to ensure the correct operation of the computer system and to prevent user programs from interfering with the proper operation of the system. 16
  • 17. Introduction to Linux operating system  Why to use an operating system ? • Memory management. • Storage management. • Process management. • Protection and security. • Abstraction layer for every resource. 17
  • 18.  What is Linux operating system ? • In 1983, Richard Stallman, founder of the Free Software Foundation, set forth plans of a complete Unix-like operating system, called GNU, composed entirely of free software. • By 1991 the lower level (kernel, device drivers, system-level utilities and daemons) was still mostly lacking. • In 1991, Linus Torvalds released the first version of the Linux kernel. Early Linux developers ported GNU code, including the GNU C Compiler, to the kernel. The free software community adopted the use of the Linux kernel as the missing kernel for the GNU operating system. Introduction to Linux operating system 18
  • 19.  Linux OS main components Introduction to Linux operating system 19
  • 20.  Linux features • Open Source: Linux source code is freely available and it is community based development project. Multiple teams works in collaboration to enhance the capability of Linux operating system and it is continuously evolving. • Multi-User: Linux is a multiuser system means multiple users can access system resources like memory, ram, application programs at same time. • Multiprogramming: Linux is a multiprogramming system means multiple applications can run at same time. • Hierarchical File System: Linux provides a standard file structure in which system files, user files are arranged. Introduction to Linux operating system 20
  • 21.  Linux features • Shell: Linux provides a special interpreter program which can be used to execute commands of the operating system. It can be used to do various types of operations, call application programs etc. • Security: Linux provides user security using authentication features like password protection, controlled access to specific files, encryption of data. Introduction to Linux operating system 21
  • 22. Introduction to Linux operating system 22
  • 23. Introduction to Embedded Linux Introduction to Embedded Systems Introduction to Linux operating system Introduction to Embedded Linux 23
  • 24.  What is an embedded Linux ? • Operating systems based on the Linux kernel are used in embedded systems such as consumer electronics (i.e. set-top boxes, smart TVs, in-vehicle infotainment (IVI), networking equipment (such as wireless routers), machine control, industrial automation, navigation equipment, spacecraft flight software, and medical instruments in general). • Thanks to their versatility, operating systems based on the Linux kernel can be also found in mobile devices that are actually touchscreen-based embedded devices, such as smartphones and tablets, together with personal digital assistants (PDAs) and portable media players that also include a touchscreen. Introduction to Embedded Linux 24
  • 25.  Why to use embedded Linux ? • Linux kernel supports wide range of architectures like:  X86 and x64 in PC and multimedia.  ARM.  PowerPC mainly in real time applications.  And much more architectures. • A very basic Linux system can work on 8 MB of RAM and 4 MB of storage. • Linux kernel has support for many communication busses like:  USB.  SPI.  CAN. Introduction to Embedded Linux 25
  • 26.  Why to use embedded Linux ? • Linux kernel has support for many networking stacks like:  Ethernet.  Wi-Fi.  Bluetooth.  IPv4, IPv6, TCP, UDB.  Firewall and advanced routing. Introduction to Embedded Linux 26
  • 27.  Embedded Linux main components • Cross-compilation Tool Chain: used to compile source code for the required target hardware. • Boot loader: used to initialize hardware and load the Linux kernel. • Linux Kernel: the main software component of the operating system. • System libraries: System libraries are special functions or programs used by application programs or system utilities to access Kernel's features. • File system with other libraries & apps. Introduction to Embedded Linux 27
  • 28. Mohamed AbdAllah Embedded Systems Engineer mohabdallah8@gmail.com 28