Difference between revisions of "RaspberryPi:Overview"

From UCT EE Wiki
Jump to navigation Jump to search
Line 39: Line 39:
  
 
The latest versions of Raspbian can be downloaded directly from the [https://www.raspberrypi.org/downloads/raspbian/ Raspberry Pi Website]
 
The latest versions of Raspbian can be downloaded directly from the [https://www.raspberrypi.org/downloads/raspbian/ Raspberry Pi Website]
 +
 +
= Other Useful Links =
 +
; [[RaspberryPi:Installation]] : A guide to get going with your Raspberry Pi
 +
; [[RaspberryPi:Programming]] : A brief introduction to programming on the Pi
 +
; [[RaspberryPi:ProgrammingInC]] : A quick guide on programming in C or C++ on the Pi
 +
; [[RaspberryPi:ProgrammingInPython]] : A quick guide on programming in Python on the Pi
 +
; [[RaspberryPi:Networking]] : A brief overview of how to network with the Pi
 +
; [[RaspberryPi:AdvancedConnectivity]] : More complex but reliable ways of connecting to your Pi
 +
; [[RaspberryPi:DebuggingConnectivity]] : Hints for debugging network connectivity
 +
; [[RaspberryPi:RTC]] : How to install an RTC on the Pi

Revision as of 18:26, 6 February 2020


The RaspberryPi is a single board computer.

Boards

Raspberry Pi Zero and Zero W

Raspberry Pi 3b +

GPIO Pins

The pinout for the RaspberryPi is shown below. Note that some pins have special uses. This pins may not be able to be used as GPIO. Note that the header has a notch to indicate pin 1. It’s also important to note the difference board numbering and BCM numbering. Board numbering is the pin count on the headers, i.e. the number shown in the circle in the image. BCM stands for Broadcom SOC channel - and refers to the GPIO number in the descriptions next to number in the circle. For example, board number 3 is GPIO 2, and board number 33 is GPIO number 13. Some pins have special functions.

GPIO Header of the B+ (source)

Board Modes

The Raspberry Pi has a number of “board modes” depending on which library you use for development. You can only use one board numbering system (BOARD or GPIO) per project, and you usually need to configure this using a method made available in the library. Some of these modes include:

  • BCM Mode

This is the pin numbering that is tied to the Broadcom chip that powers the Raspberry Pi.

  • GPIO/Physical Mode

This is the pin numbering that matches the physical pin numbering of the header.

  • WiringPi numbering

WiringPi is a library for writing C/C++ applications on the Raspberry Pi. It has it’s own unique pin numbering. It includes a useful function for viewing all the pinouts, numbering, and what their current state is. A screenshot of this function is shown in Figure [fig:gpio-readall].

A screenshot of running “gpio readall”

Operating Systems

For details on installing and configuring the operating system, see RaspberryPi:Installation

Raspbian

Raspian is the default operating system from the Raspberry Pi Foundation. There are three versions available:

Raspbian with desktop and recommended software 
This is a large image, containing packages for a desktop environment and other (often not useful) packages
Raspbian with desktop 
Contains a desktop environment and useful packages
Raspbian Lite 
A simple OS without desktop environment (just a command line interface)

The latest versions of Raspbian can be downloaded directly from the Raspberry Pi Website

Other Useful Links

RaspberryPi:Installation 
A guide to get going with your Raspberry Pi
RaspberryPi:Programming 
A brief introduction to programming on the Pi
RaspberryPi:ProgrammingInC 
A quick guide on programming in C or C++ on the Pi
RaspberryPi:ProgrammingInPython 
A quick guide on programming in Python on the Pi
RaspberryPi:Networking 
A brief overview of how to network with the Pi
RaspberryPi:AdvancedConnectivity 
More complex but reliable ways of connecting to your Pi
RaspberryPi:DebuggingConnectivity 
Hints for debugging network connectivity
RaspberryPi:RTC 
How to install an RTC on the Pi