Você está na página 1de 16

29/07/2019 Raspberry Pi B+: Introdução a Porta GPIO - Fazedores

      Participe do Cadastro Maker Fazedores!

LOJA GARAGEM FÓRUM COLABORADORES


  

CADASTRO MAKER SOBRE CONTATO RSS

Raspberry Pi B+: Introdução


a Porta GPIO
Início / Fazedores / Raspberry Pi B+: Introdução a…

Nas ultimas semanas, começamos um tutorial sobre a Raspberry Pi. Neste post,
mostramos toda parte parte introdutória, desde o conhecimento dos componentes da
placa até instalação e con guração do sistema operacional. Tiramos a conclusão neste
post que  “Tamanho não é documento!”, e no caso da Raspberry não é mesmo. Então,
 para incrementar essa primeira parte e entusiasmar nossos leitores, zemos outro post
com 5 projetos legais com Raspberry Pi, onde juntamos na web alguns protótipos muito
bacanas de fazedores como nós. 
https://blog.fazedores.com/raspberry-pi-b-introducao-porta-gpio/ 1/16
29/07/2019 Raspberry Pi B+: Introdução a Porta GPIO - Fazedores

Hoje vamos continuar a brincadeira! O nosso tema da segunda parte dessa série é:
 Introdução a Porta GPIO da Raspberry Pi B+. Neste tutorial, mostraremos quem é o
conjunto de portas GPIO, quais são as suas características e funções, e por m um
exemplo bem simples de como usar essa porta. Está a m de conhece-la? Então chega
mais!!

O que é a Porta GPIO ?


 Aqui começa a melhor parte da brincadeira! Pois essa é a porta responsável por ajudar
a desenvolver protótipos muito legais que envolvem a Raspberry, desde acender um LED
até fazer robôs extremamente expertos. Bem, e como fazer isso? Primeiro precisamos
conhecer esse conjunto de pinos, entendendo o seu funcionamento.

O GPIO (General Purpose Input/Output), é basicamente um conjunto de pinos


responsável por fazer a comunicação de entrada e saída de sinais digitais. Ele é
composto por 26 pinos no Raspberry Pi B, e 40 pinos no Raspberry Pi B+. Com estes
pinos é possível acionar LEDs, Motores, Relês, fazer leitura de sensores e botões, entre
outros. Para entendermos melhor as características desses pinos, vamos mostrar mais
à frente no texto um mapa dos pinos. Mas antes, veja o nosso próximo tópico, pois ele é
de extrema importância.

Cuidados a se tomar!
Fazer projetos com a Raspberry é muito legal, pois ela oferece um leque grande de
possibilidades para isso. Porem é preciso tomar alguns cuidados com os pinos GPIO,
pois eles não possuem um sistema de proteção, como no Arduino. O Raspberry não usa
o sistema de lógica digital padrão chamado de TTL, onde o nível alto lógico é 5v (o
mesmo do Arduino). Isso merece um certo cuidado, pois  a Pi utiliza um sistema próprio,
onde  nível alto lógico é de 3.3V, logo se aplicar uma tensão maior em uma das portas
poderá dani car a mesma, e se a sorte falhar, você poderá queimar a placa toda. Vale
lembrar também que, devido a Raspberry não ter este sistema de proteção, deve-se
tomar muito cuidado para que não aconteça curto entre os pino, uma vez que eles estão
muito próximos um dos outros. O que precisa ter é atenção e muito cuidado, pois não
queremos que nossa plaquinha seja dani cada.

Mapa dos Pinos


Podemos observar que, a Raspberry não possui uma identi cação dos pinos impressa
na placa. Por isso é preciso estudar um pouco esse mapa dos pinos, antes de começar
a fazer as ligações de um projeto. Neste tutorial, montamos uma tabela que vai mostrar

https://blog.fazedores.com/raspberry-pi-b-introducao-porta-gpio/ 2/16
29/07/2019 Raspberry Pi B+: Introdução a Porta GPIO - Fazedores

a identi ção de cada um desses. Lembrando que estamos usando em nosso explicativo,
a Raspberry Pi B+.

3.3v 1 2 5V

GPIO 2 3 4 5V

GPIO 3 5 6 GND

GPIO4 7 8 GPIO 14

GND 9 10 GPIO 15

GPIO 17 11 12 GPIO 18

GPIO 27 13 14 GND

GPIO 22 15 16 GPIO 23

3.3V 17 18 GPIO 24

GPIO 10 19 20 GND

GPIO 09 21 22 GPIO 25

GPIO11 23 24 GPIO 8

GND 25 26 GPIO 7

ID_SD 27 28 ID_SC

GPIO 5 29 30 GND

GPIO 6 31 32 GPIO 12

GPIO13 33 34 GND

GPIO 19 35 36 GPIO 16

GPIO 26 37 38 GPIO 20

GND 39 40 GPIO 21

Para que possamos entender nosso diagrama de forma mais clara, separamos eles em
8 cores diferentes, e aqui vai as características de cada uma:

1. Vermelho: Esta é uma saída para alimentação, e possui uma tensão de 5V. Deve-se
manter atento com ela, pois como já foi dito, ela não pode entrar em contato de
maneira alguma com as outras portas.
2. Laranja: Esta também é uma saída para alimentação, porém com uma tensão de
3.3V. Com essa, é possível comunicar com outras portas, mas é preciso usar um

https://blog.fazedores.com/raspberry-pi-b-introducao-porta-gpio/ 3/16
29/07/2019 Raspberry Pi B+: Introdução a Porta GPIO - Fazedores

resistor como limitador de corrente para fazer isso.


3. Preto: Estas são simplesmente as portas Terra (GROUND), e não existe tensão na
mesma.
4. Azul: Essas duas portas podem ser programadas para interface I2C (Circuito Inter-
integrado). Para quem não conhece, este é um protocolo criado pela Philips em 2006,
para fazer conexões entre periféricos de baixa velocidade. No caso da Raspberry,
utiliza-se um barramento entre dois o, sendo um de dados e outro de clock, para
comunicação serial entre circuitos integrados montados em uma mesma placa.
5. Amarelo: Estas são as portas seriais,  que utilizam o protocolo RS-232 para o envio e
recebimento de sinal digital.
6. Verde: Aqui estão os pinos GPIO que falamos anteriormente. Eles servem para fazer
envio e recebimento de dados digitais.
7. Rosa: Estes pinos são também para entrada e saída de dados digitais. Porém, eles
possuem uma característica a mais. Com estes pinos é possível fazer uma
comunicação serial Full Duplex síncrono, que permite o processador do Raspberry
comunicar com algum periférico externo de forma bidirecional. Mas essa
comunicação só acontece, se e somente se o protocolo for implementado.
8. Cinza: Essas são as portas do ID EEPROM  (Electrically-Erasable Programmable
Read-Only Memory). Este é um tipo de memória que pode ser programado e apagado
várias vezes, através de uma tensão elétrica interna ou externa.

Exemplo Básico
 Para nalizar nosso tutorial, vamos mostrar aqui um exemplo bem básico que envolve
saída e entrada de dados. O que vamos fazer é simplesmente desligar um LED através
de um pushbutton, usando as portas GPIO. Então vamos lá, é hora de botar a mão na
massa!

O primeiro passo que devemos dar, é identi car se já existe a biblioteca GPIO pré-
instalada, e se sua versão é superior a 0.5.4. Para descobrir isso, abra o terminal e digite
os seguintes códigos:

1 sudo python
2  
3 import RPi.GPIO as GPIO
4  
5 GPIO.VERSION

Feito essa veri cação, é hora de começar a montar o circuito. E para isso, vamos
precisar dos seguintes componentes:

Um LED
Dois Resistores de 1K

https://blog.fazedores.com/raspberry-pi-b-introducao-porta-gpio/ 4/16
29/07/2019 Raspberry Pi B+: Introdução a Porta GPIO - Fazedores

Jumpers
Uma Protoboard
Um PushButton

Com todos estes componentes em mãos, agora é só montar o circuito conforme ilustra
nosso esquemático abaixo:

Esquemático_raspberry_ GPIO

Se o circuito já estiver montado e conferido, então é hora de começar a programar. A


linguagem que vamos utilizar é o Python, pois ela é fácil de usar e já vem instalada no
Raspbian. Para começar, abra o software IDLE 3 que ca localizado na área de trabalho.
Em seguida, vá em “File” e selecione a opção “New Window”, para que possamos
começar um novo projeto. Com tudo isso pronto, é só introduzir os seguintes códigos:

Python
1 #Definindo da biblioteca GPIO
2 import RPi.GPIO as GPIO
3   
4 #Aqui definimos que vamos usar o numero de ordem do pino, e não o numero que refere
https://blog.fazedores.com/raspberry-pi-b-introducao-porta-gpio/ 5/16
29/07/2019 Raspberry Pi B+: Introdução a Porta GPIO - Fazedores
5 #Para usar o numero da porta, é preciso trocar a definição "GPIO.BOARD (ex. Pino 12
6 GPIO.setmode(GPIO.BOARD)
7 # Setando as portas de entrada e saída
8 GPIO.setup(12, GPIO.OUT)
9 GPIO.setup(16, GPIO.IN)
10 #Loop principal (Laço indefinido)
11 While(True):
12     if GPIO.input == False:
13          GPIO.output(12,1)
14     if GPIO.output == True:
15          GPIO.output(12,0)

O nosso código é bastante simples e auto-explicativo, ele basicamente inicia


importando a biblioteca GPIO, em seguida de ne as portas de saída e entrada de sinais
digitais. Após isso, iniciamos um laço que será executado inde nidamente para veri car
o status do botão.E então,se o valor recebido pelo pushbutton for “True” (nível lógico
máximo) o LED será desligado. Caso contrário, o mesmo irá permanecer aceso. Para
executar o código e ver todo circuito funcionar, basta apertar o botão F5 do teclado.

Esse exemplo é apenas um estimulo para quem está iniciando com Raspberry, de forma
que essas pessoas comecem a se habituar com ambiente de desenvolvimento da
plataforma. E ai? gostou do nosso tutorial? Já pensou no que fazer com Raspberry?
Qualquer dúvida é só acessar nosso fórum.

Onde comprar?
Compre Arduino, componentes eletrônicos e ferramentas na FilipeFlop. Os preços são
ótimos, a agilidade é matadora e as entregas são feitas para todo o Brasil. O
Fazedores e a FilipeFlop estão juntos para fomentar a cultura maker no Brasil.

Categories: Fazedores, Tecnologia, Tutoriais Por Thayron Araújo 24 de outubro de 2014


18 Comentários

Marcações:  GPIO raspberry pi raspberry pi b+

Compartilhe!

    

Autor: Thayron Araújo
http://blog.fazedores.com/staff/thayron-araujo/ 
https://blog.fazedores.com/raspberry-pi-b-introducao-porta-gpio/ 6/16
29/07/2019 Raspberry Pi B+: Introdução a Porta GPIO - Fazedores

Meu nome é Thayron Araújo, sou estudante de engenharia da


computação na PUC-RIO e sou um dos membros da equipe do
Fazedores. Escolhi essa área como carreira, pois sou um amante da
tecnologia. Adoro entender sobre o funcionamento das coisas e me
lembro que desmontava todos meus brinquedos para entendê-los e
depois criava outros. Participei de vários projetos acadêmicos como:
automação residencial usando Arduino, automação industrial, fontes de
energia renováveis e robótica. Fui um dos alunos propulsores da
extensão de um capitulo estudantil do IEEE (Institute of Electrical and
Electronics Engineers) para a PUC-RIO. Sou mineiro natural de Araguari, e
tenho amor pelo que faço.

ANTERIOR PRÓXIMO

4 projetos DIY em LEGO 4 projetos para


 que vão te deixar de comemorar o Halloween 
queixo caído! no estilo DIY

Posts relacionados

Impressoras 3D. Por O produto brasileiro


onde começar? que já ultrapassou
19 de junho de 2019 R$900.000 no
Kickstarter
6 de junho de 2019

Conheça o Kit Maker Como usar PWM com


Arduino Iniciante Arduino para controle
5 de fevereiro de 2019 de um LED
22 de janeiro de 2019

Faça um player de Como usar Servo


música com Motor com Arduino

https://blog.fazedores.com/raspberry-pi-b-introducao-porta-gpio/ 7/16
29/07/2019 Raspberry Pi B+: Introdução a Porta GPIO - Fazedores
Raspberry Pi Zero 30 de novembro de 2018

10 de dezembro de 2018

18 Comentários

Reginaldo
 17 de novembro de 2017 em 18:01

Boa Tarde
Estou iniciando um projeto e preciso de uma placa que possa comunicar
pela rede ou ate mesmo internet
com esta placa eu consigo fazer isso ?

Obrigado

 Responder

Fernando
 29 de junho de 2017 em 19:54

quando executo o codigo direto no terminal (via putty), o rasp ca com o


processamento em 100% e o led nao acende. Alguem sabe o que pode estar
errado?

 Responder

Fernando
 25 de junho de 2017 em 16:32

Quando executo esse programa o processamento do rasp vai a 100% e o led


nao acende. Alguem tem idéia do que pode ser?

 Responder

https://blog.fazedores.com/raspberry-pi-b-introducao-porta-gpio/ 8/16
29/07/2019 Raspberry Pi B+: Introdução a Porta GPIO - Fazedores

THIAGO
 11 de maio de 2017 em 13:59

Boa tarde amigos, preciso de uma ajuda.


Quero montar um acionador de sirene com o Raspberry Pi, ele precisa
apenas pegar o horário do computador e acionar a sirene nos horários
programados. Tem como eu fazer isso com essa interface ? Obrigado.

 Responder

Marcelo mosczynski
 21 de abril de 2017 em 10:17

Amigo, desculpe mas os pinos do GPio são serial TTL e não RS-232

 Responder

Alexandre
 18 de março de 2017 em 17:57

Boa Tarde
Estou precisando de uma ajuda como usar raspberry pi 3 para receber sinas
de um (DVR ou Gravador de Vídeo) Sinas Como perda de AC Perda de Sinal
de vídeo de uma Câmera.

 Responder

Pingback: Porta GPIO – Saiba para que serve e como usar | Tudo Sobre RaspBerry

Flavio
 14 de março de 2017 em 23:20

Olá, gostaria apenas de programar alguma das portas vizinhas aos grounds
para ter 5V para ligar o cooler apenas enquanto os sistemas operacionais
estiverem rodando sendo desligada a porta após o shutdown do SO. 
Grato
https://blog.fazedores.com/raspberry-pi-b-introducao-porta-gpio/ 9/16
29/07/2019 Raspberry Pi B+: Introdução a Porta GPIO - Fazedores
Grato.

 Responder

André
 12 de maio de 2016 em 10:34

Bom dia!!! Qual linguagem de desenvolvimento utiliza-se pra desenvolver um


software para que eu possa trabalhar com RASPBERRY ?

 Responder

Alexandre
 6 de outubro de 2015 em 10:32

Olá equipe do Fazedores.


Sou estudante de Engenharia Elétrica e estou cursando a disciplina de
Circuitos Eletrônicos I. O professor solicitou como trabalho nal da disciplina
o desenvolvimento de uma placa com condicionamento de sinais para
utilizar a GPIO do Raspberry. Conversando com um amigo meu, nos
deparamos com um problema que poderia ser solucionado utilizando o
Raspberry Pi, juntamente com a placa que irei desenvolver ao longo do
semestre. Porém, comecei a pesquisar faz pouco tempo sobre o módulo. O
projeto é bem complexo. Necessita de comunicação e envio de dados para
fora. Gostaria de saber como posso entrar em contato com a equipe para
tirar dúvidas e alguma ideias sobre desenvolvimento.
Desde já agradeço a atenção de todos, e pelos ótimos posts criados por
vocês. Muito bem explicado as funções propostas.

 Responder

Victor Lima
 24 de julho de 2015 em 21:16

Muito bom!. Só uma dúvida. Como você faz aquelas imagens de simulação
do circuito ? Aquela que tem a placa do raspberry e a protoboard. VLW!


 Responder
https://blog.fazedores.com/raspberry-pi-b-introducao-porta-gpio/ 10/16
29/07/2019 Raspberry Pi B+: Introdução a Porta GPIO - Fazedores

Carlos Roberto
 13 de julho de 2015 em 00:42

Ola, gostaria de parabenizá-los pelo site, simplesmente perfeito.Gostaria de


saber se vcs conseguem me ajudar.Tenho um Raspberry pi 2 e quero montar
um retrogame, mas colocando o raspberry dentro de uma carcaça de mega
drive 1 japones.O problema é que não sei fazer o raspberry utilizar os botoes
existentes na carcaça do mega drive como liga e desliga o reset o fone de
ouvido e fazer o led car aceso ao ligar. Não entendo nada de eletronica, sou
apenas um fuçador de posts e videos no you tube, mas ja z algumas coisas
como meu próprio case arcade como das antigas.Por Favor se puderem me
ajudar será de muita ajuda.Obrigado Att: Carlos

 Responder

Manoel Lemos
15 de julho de 2015 em 13:34

Olá Carlos, legal seu projeto. O ideal é você usar nosso fórum
para este tipo de pedido de ajuda. Lá tem muita gente que
trabalha com Raspberry Pi e que já montaram projetos
semelhantes. O endereço é: http://forum.fazedores.com

Boa Sorte!

 Responder

Cleverson Bukalowski
 17 de junho de 2015 em 14:09

Olá a todos! Agradeço pelo tutorial e iniciativa à introdução deste


conhecimento. Quero ajudar, complementando informações sobre esse
projeto. Vamos lá: Na linha 11, o comando “While” só funcionará com letras
minúsculas, ou seja, “while”. Poderá ser complementado no nal da linha de 
comando o seguinte: GPIO cleanup ()
https://blog.fazedores.com/raspberry-pi-b-introducao-porta-gpio/ 11/16
29/07/2019 Raspberry Pi B+: Introdução a Porta GPIO - Fazedores
comando o seguinte: GPIO.cleanup ()
com isso, não aparecerá mensagens de erros no nal da execução.

 Responder

Emerson
 8 de maio de 2015 em 12:03

*Bruno
Você informa que o site está cheio de erros, e usa o “mais” no lugar do
“mas”…rsrs
Um cara que não sabe a diferença entre “mais” e “mas”, não deveria apontar
erros…rsrs
#Ficaadica

 Responder

bruno
 12 de abril de 2015 em 06:09

seu site esta cheio de erros kkk mais esta show :)

 Responder

Manoel Lemos
14 de abril de 2015 em 10:23

Olá Bruno, mande os erros para que possamos corrigir!!! E


valeu pelo toque!

 Responder

Wagner Sterquino
 27 de janeiro de 2015 em 18:03

Amigo Preciso de uma ajuda no rpi Estou tentando comunicar um display
https://blog.fazedores.com/raspberry-pi-b-introducao-porta-gpio/ 12/16
29/07/2019 Raspberry Pi B+: Introdução a Porta GPIO - Fazedores
Amigo. Preciso de uma ajuda no rpi. Estou tentando comunicar um display
16×2 no rpi via i2c. Teria como me ajudar?

 Responder

Deixe uma resposta

Seu endereço de e-mail não será publicado. Campos obrigatórios estão marcados *

Comentário

Nome*

E-mail*

Website

Save my name, email, and website in this browser for the next time I comment.

Postar Comentário

Assine nossa newsletter!

E que por dentro de tudo que rola no Fazedores.

Email Address*

First Name

Last Name

* = campo obrigatório

https://blog.fazedores.com/raspberry-pi-b-introducao-porta-gpio/ 13/16
29/07/2019 Raspberry Pi B+: Introdução a Porta GPIO - Fazedores

Assinar

Artigos Recentes

Guia Fazedores: Resistores


26 de junho de 2019

Impressoras 3D. Por onde começar?


19 de junho de 2019

O produto brasileiro que já ultrapassou R$900.000 no Kickstarter


6 de junho de 2019

5 melhores sites com modelos 3D gratuitos


 2 de abril de 2019

Vulcon II, a nova impressora 3D da ICON que promete revolucionar o mercado da


construção civil
21 de março de 2019

Conheça o Kit Maker Arduino Iniciante


5 de fevereiro de 2019

Cadastro Maker Fazedores

Gean Viana Rodrigues


João Almeida
Alzis Technology
JOSE GUSTAVO ABREU MURTA
Colégio Carlos Drummond de Andrade
Gean Viana


https://blog.fazedores.com/raspberry-pi-b-introducao-porta-gpio/ 14/16
29/07/2019 Raspberry Pi B+: Introdução a Porta GPIO - Fazedores

Fazedores
16 mil curtidas

Curtir Página

Seja o primeiro de seus amigos a


curtir isso.

Tags Siga a gente Termos de


no Twitter! Direto do Uso
arduino Fórum
arduino day Meus Tuítes Utilizando este site
Fazedores
campus party você está

Nema 17 + TB6600 aceitando nossos


crowdfunding
+ Controlar motor termos de uso.
cultura maker
de passo sem
curiosidades diy Licença de
biblioteca
educação Uso
26 de julho de 2019
eletrônica
@Joao_Andrade
fazedores João Andrade
ferramentas Oportunidade O trabalho
lipe op fórum trabalho arduino - rj Fazedores de
genuino idéias 25 de julho de 2019 Manoel Lemos está
Impressora 3D @Renato_Albuquerque licenciado com

impressoras 3D Renato uma Licença


Albuquerque Creative Commons
impressão
Projeto vale a - Atribuição-
3D
pena? CompartilhaIgual
inspiração intel
25 de julho de 2019 4.0 Internacional.
internet das coisas
@skullcrusher777
IoT Kickstarter
vinicius
kit arduino maker Identi cador de
maker crachá
movement 23 de julho de 2019
makers @Hiago Hiago
makerspaces Bomba fake airsoft

marcenaria 23 de julho de 2019 


@esroque emerson
https://blog.fazedores.com/raspberry-pi-b-introducao-porta-gpio/ 15/16
29/07/2019 Raspberry Pi B+: Introdução a Porta GPIO - Fazedores
minipcs @esroque emerson
roque
movimento
Copia de peça na
maker
impressão 3D
News
22 de julho de 2019
open hardware
@danielprivitera
pesquisa plataformas
Daniel Privitera
programação Lista de
projeto componentes

projetos eletrônicos

raspberry pi 21 de julho de 2019

robótica @ianfoss
Energia solar -
Segurança sensores
como ligar led na
sorteio
plaquinha solar e
tecnologia
bateria
vídeo
21 de julho de 2019
@Lucas_Rodrigues
Lucas Rodrigues

Fazedores by Manoel Lemos Always ghting for the user!


https://blog.fazedores.com/raspberry-pi-b-introducao-porta-gpio/ 16/16

Você também pode gostar