Chapter A - The Raspberry Pi Computer

Slides:



Advertisements
Similar presentations
Introduction to Raspberry Pi
Advertisements

Raspberry Pi Hardware en OS Stijn Van Caekenberghe Raspberry Jam Mechelen – 13 november 2014.
Lab7: Introduction to Arduino
IO Controller Module Arbitrates IO from the CCP Physically separable from CCP –Can be used as independent data logger or used in future projects. Implemented.
{ Physical Computing Arduino, Raspberry Pi, Sensors, Controls…
{ Physical Computing Arduino, Raspberry Pi, Sensors, Controls…
Basic Circuits – Lab 2 Arduino and Sensors Xmedia Spring 2011.
Engineering 1040: Mechanisms & Electric Circuits Fall 2011 Introduction to Embedded Systems.
Raspberry Pi2 Specification – CPU Broadcom BCM2836 Cortex A7 4 Cores 900Mhz (ARM11  Cortex A7) – Memory 1GB LPDDR2 – 4 port USB 2.0 – 10/100 Mbps – 40.
RaspberryPi Ira Goldstein Siena College. What is a Raspberry Pi? University of Cambridge’s Computer Laboratory – Decline in skill level – Designed for.
SINGLE BOARD COMPUTERS -KEVIN JOSE. WHY DO WE USE THEM? Good performance at low price GPIO capability to interact with the outside world Small form factor,
Raspberry Pi GPIO Pin naming conventions Using sysfs
Juan Miguel Valverde Martínez.  What is a Home Media Center?  Raspberry Pi  Idea  Interface  Potential.
Arduino. What is it? A open-source software suite and single-board microcontroller. Allows easy and affordable prototyping of microcontroller applications.
Introduction to the Arduino
Alex Wanamaker.  2 astable 555 timer circuits  Blinking rate: ~1.1 seconds  Q1 and Q2 used to provide additional current for the circuit beyond.
ChibiOS/RT Demo A free embedded RTOS
Rasberry pi 2 model B. Selve computeren i rasberry pi’en.
Raspberry Pi Project Control Your Home Lights with a Raspberry Pi.
Introducing the Raspberry Pi Nauru ICT Department April 2016.
Farhin Al Masud What is Raspberry PI? o Low cost, credit card sized computer o SOC (System on a chip) o Founded by Raspberry PI foundation.
Raspberry PI 2 Installation & Demo App By Wayne Keadle.
Robotics Grant Agreement No LLP UK-LEONARDO-LMP Project acronym: CLEM Project title: Cloud services for E-Learning in Mechatronics Technology.
An introduction to the Raspberry Pi. What is a Raspberry Pi?  University of Cambridge’s Computer Laboratory  Decline in skill level  Designed for education.
Get Started with Raspberry Pi- Single Board Computer.
SAURABH GINGADE 12311A0480. The Raspberry Pi is a credit-card sized computer.
RaspberryPi.
Application Case Study Christmas Lights Controller
Arduino.
Engineering Innovation Center
Building Raspberry Pi Controllers with Python
Computer System Laboratory
Ira Goldstein Siena College
RASPBERRY PI WORKSHOP.
Fundamentals of Computer Engineering
Computer System Laboratory
Single board computers in the ham shack
Morse code lab Pseudo code: Start code; define variables
By: Brian Johnson, AB6UI 20 Sept 2017
Prepared by: Raghad J Foqha Supervisor: Dr. Saed Tarapiah
Computer Hardware – System Unit
From Things to the Internet: Teaching Kids to Code Java on the Raspberry Pi Ian Utting & Fabio Hedayioglu.
UTA010 : Engineering Design – II
Remote Sensor Interface for IoT
A microcontroller Raspberry Pi 2 Model B V1.1 RPi
Arduino Part 1 Topics: Microcontrollers Programming Basics
Chapter D – Serial Connections to the RPi and Analog-to-Digital Converters
Alþingi's Digital Signage System
Programming with Arduinos and Rapsberry Pi
Lighting LEDs with a RASPBERRY PI
INTRODUCTION TO THE RASPBERRY PI Darrell Davis KT4WX
PRESENTED BY Bitware Technologies
An introduction to the Raspberry Pi
ARDUINO     What is an Arduino? Features 14 Digital I/O pins 6 Analogue inputs 6 PWM pins USB serial 16MHz Clock speed 32KB Flash memory 2KB SRAM.
Raspberry Pi. Introduction to Raspberry Pi Python Electronics Linux Outline.
using the Arduino to make LEDs flash
Journey: Introduction to Embedded Systems
CSCI1600: Embedded and Real Time Software
CSCI1600: Embedded and Real Time Software
Workshop GPIO I2C SPI Panic1 woensdag 10 april 2019.
Beginning Raspberry Pi
Single Board Computers and Dev Boards
Introduction to Single Board Computer
CPU TI AM4376 JTAG Expansion Board Connectors Samtec TFC F-D-A
Introduction to Arduino
Emphasis: Get it working and do stuff!
What is “Control System” or “Framework”?
I/O Experiments Assignment 1.
Raspberry Pi Hardware By: Mike Kwiatkowski.
Edge TPU Coral Dev Board: A tutorial
Presentation transcript:

Chapter A - The Raspberry Pi Computer Credit Card-size computer introduced in 2012 LINUX operating system Large number of reconfigurable General Purpose Input/Output digital pins (GPIO) Communication via SPI, I2C, and UART interfaces Two hardware Pulse-Width Modulation PWM channels No analog inputs-- we use an MCP3008, an 8-channel, 10 bit A/D converter for analog data

Specifications https://www. raspberrypi SoC: Broadcom BCM2837 CPU: 4× ARM Cortex-A53, 1.2GHz GPU: Broadcom VideoCore IV RAM: 1GB LPDDR2 (900 MHz) Networking: 10/100 Ethernet, 2.4GHz 802.11n wireless Bluetooth: Bluetooth 4.1 Classic, Bluetooth Low Energy Storage: microSD GPIO: 40-pin header, populated Ports: HDMI, 3.5mm analogue audio-video jack, 4× USB 2.0, Ethernet, Camera Serial Interface (CSI), Display Serial Interface (DSI)

The Raspberrry Pi

Another Rpi view

GPIO Pinout for the RPi 3

GPIO Pinout for the RPi 3 Several communication protocols available: 40 unbuffered pins An incorrect connection may destroy RPi Two 5V & two 3.3V. High current applications require external source Eight Grounds 13 digital I/O pins Several communication protocols available: One I2C Two SPI One UART Two PWM

Accessing the GPIO Requires a special library Will be included on your SD card Requires a directive for your code: #include <bcm2835.h> Requires a change to the build command: gcc program.c -o program -lbcm2835 Requires a change to your execution: sudo program (“sudo” stands for “super user do” )

Sample code – the blink.c program // Example program for bcm2835 library // Blinks a pin on an off every 0.5 secs // Author: Mike McCauley Copyright (C) 2011 Mike McCauley // #include <bcm2835.h> // Blinks on RPi Plug P1 pin 13(which is GPIO pin 27) #define PIN RPI_BPLUS_GPIO_J8_13 int main(int argc, char **argv) { if (!bcm2835_init()) return 1; //start using GPIO; indicate if error // Set the pin to be an output bcm2835_gpio_fsel(PIN, BCM2835_GPIO_FSEL_OUTP);

The blink.c program continued // Blink forever while (1) { bcm2835_gpio_write(PIN, HIGH); // Turn pin/LED on bcm2835_delay(500); // wait ½ second bcm2835_gpio_write(PIN, LOW); // turn pin/LED off } bcm2835_close(); // signals end to use of GPIO return 0;

Changes to compilation and execution First, library must be installed (this is already on your SD cards!) For build (need to link library): gcc -o blink blink.c -l bcm2835 For execute (need more authority to access GPIO): sudo ./blink (sudo - execute a command as another user)

Testing the code

Analyzing the circuit

Common errors Connecting to any other pin Putting the diode in backwards No harm done – simply doesn’t light up Forgetting the resistor Very bright diode, then diode death Connecting to wrong GPIO pin or Connecting to 5V instead of ground Connecting to any other pin ????

Laboratory Assignment #2 This lab lasts two weeks!!! Generate and run the program “blink.” Generate and run a program that allows you to type in an integer k (0 to quit) and then have the led blink k times. Generate and run a program that allows you to type in a sentence and then have the led blink that word in Morse code (no input loop).

International Morse Code table