You are on page 1of 4

26/02/2017 Osciloscópio Digital Usando Arduíno

Osciloscópio Digital Usando Arduíno


O osciloscópio é uma ferramenta muito importante na bancada, mas não faz parte do bloco de

ferramentas básicas, sendo assim, não é necessária para iniciantes, mas se ela existe pode facilitar muito
em alguns trabalhos. Neste artigo vamos mostrar um osciloscópio baseado em Arduino que é bem

simples, eficiente e tem um custo bem baixo pois pode ser feito com sucata de celular.

O projeto do site filear.com é construído usando o Arduino Pro Mini , que é fabricado a partir do

microcontrolador ATmega168, mas com pequenas modificações pode ser usado qualquer outro Arduino,

incluído o UNO. O display é de uma pequena tela  gráfica de GLCD Nokia 3310.

Osciloscópio Digital com Arduino

Osciloscópio com Arduino


O funcionamento é muito simples, e a tela LCD Nokia 3310 funciona muito bem para esse fim, o
desenvolvedor ainda acrescentou dois potenciômetros, um  faz o atraso para a amostragem  na base de

tempo e outro para reduzir as tensões, enquanto eles estão abaixo de 3 volts, que é a tensão de operação
do Arduino.

A parte ruim, ou seja os contras deste projeto é que ele só mede tensões de até 3 volts, mas se você
deseja medir tensões maiores você deve adicionar um atenuador ao circuito,ou seja, na entrada da ponta
de prova do osciloscópio. Outro problema deste osciloscópio Arduino  é que a entrada analógica mostra

apenas as tensões positivas.

Nós usamos cookies para garantir que você tenha a melhor experiência no nosso site. Se você continuar a usar este site, vamos supor que você concorda. Ok 
http://blog.novaeletronica.com.br/osciloscopio­usando­arduino/ 1/4
26/02/2017 Osciloscópio Digital Usando Arduíno

Circuito do osciloscópio com Arduino

Lista de componentes do Osciloscópio com Arduino
Arduino Mini Pro

tela LCD Nokia 3310/5510


R1-R2 Potenciômetro linear 10Kohms

Bateria 9 Volts

Abaixo o Sketch do Osciloscópio Usando Arduíno
/*
###########################################################
Title: Arduino Oscilloscope
Purpose: Use a Nokia 3310 GLCD screen with the arduino
Created by: Filear k. see Fil eark. com for more info.
Note: Please reuse, repurpose, and redistribute this code.
Note: This code uses the Adafruit PDC8544 LCD library
###########################################################
*/

#include "PCD8544.h"

// pin 3 - Serial clock out (SCLK)


// pin 4 - Serial data out (DIN)
// pin 5 - Data/Command select (D/C)
// pin 7 - LCD chip select (CS)
// pin 6 - LCD reset (RST)
PCD8544 nokia = PCD8544(3, 4, 5, 7, 6);

// a bitmap of a 16x16 fruit icon


static unsigned char __attribute__ ((progmem)) logo16_glcd_bmp[]={
0x06, 0x0D, 0x29, 0x22, 0x66, 0x24, 0x00, 0x01, 0x87, 0x00, 0x27, 0x6C, 0x20, 0x23, 0x06, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, };
#define LOGO16_GLCD_HEIGHT 16
#define LOGO16_GLCD_WIDTH 16

int channelAI = A0; // select the input pin for the Oscilioscope
int scaleYAI = A1; // select the input pin for the Y (horizontal) potentiometer
int scaleXAI = A2; // select the input pin for the X (Vertical) potentiometer

int delayVariable = 0; // define a variable for the Y scale / delay


int xVariable = 0; // define a variable for the x scale
int yCtr = 0; // define a variable for the y counter used to collect y position into array
int posy = 0; // define a variable for the y position of the dot
int myArray[85]; // define an array to hold the data coming in

Nós usamos cookies para garantir que você tenha a melhor experiência no nosso site. Se você continuar a usar este site, vamos supor que você concorda. Ok 
void setup(void)

http://blog.novaeletronica.com.br/osciloscopio­usando­arduino/ 2/4
26/02/2017 Osciloscópio Digital Usando Arduíno
{

nokia.init();

// turn all the pixels on (a handy test)


nokia.command(PCD8544_DISPLAYCONTROL | PCD8544_DISPLAYALLON);
delay(500);
// back to normal
nokia.command(PCD8544_DISPLAYCONTROL | PCD8544_DISPLAYNORMAL);

// show splashscreen
nokia.display();
delay(500);
nokia.clear();
}

void loop()
{
delayVariable = analogRead(scaleYAI);
delayVariable = (delayVariable/50);
xVariable = analogRead(scaleXAI);
xVariable = (xVariable/22);

for(yCtr = 0; yCtr < 85; yCtr += 1) // the for loop runs from 0 and < 85, it fills the array with 84 records
{
posy = analogRead(channelAI); // read the value from the sensor:
myArray[yCtr] = (posy/xVariable); // scale the value based on the x scale potentiometer
delay (delayVariable); // scale the y collection of data using the delay from the y potentiometer
}

yCtr == 0; // set the counter to zero so we can use it again


nokia.clear(); // clear the LCD screen so we can draw new pixels

for(yCtr = 0; yCtr < 85; yCtr += 1) // for loop runs 84 times


{
nokia.setPixel(yCtr, myArray[yCtr], BLACK); // draw the 84 pixels on the screen
}

nokia.display(); // show the changes to the buffer


yCtr == 0; // set the counter to zero so we can use it again

Vídeo do Osciloscópio Arduino em funcionamento
DIY Arduino Oscilloscope with the Nokia 3310 GLCD screen

Uma dica é blindar o osciloscópio com uma caixa para evitar interferências indesejadas. Se preferir faça o
download da documentação Sketch e biblioteca ou verifique o projeto na fonte.
Nós usamos cookies para garantir que você tenha a melhor experiência no nosso site. Se você continuar a usar este site, vamos supor que você concorda. Ok 
http://blog.novaeletronica.com.br/osciloscopio­usando­arduino/ 3/4
26/02/2017 Osciloscópio Digital Usando Arduíno

Arduino & Como Usar seu PC SIM900 quadri- Osciloscópio On-


Raspberry Pi como um... bande conseil de... Line - Simulador
€17,87
Anúncio Cayenne novaeletronica.com.br Anúncio Banggood.com novaeletronica.com.br

Brushless DC Lxardoscope o Ponta de Prova de Como Captar a


Motor - Low... Osciloscópio -... RF para... Energia do...
Anúncio en.hengdrive.com novaeletronica.com.br novaeletronica.com.br novaeletronica.com.br

Importante: Para perguntas, dúvidas, críticas ou sugestões utilize a página de contato .


[ Clique Aqui! ]

Nós usamos cookies para garantir que você tenha a melhor experiência no nosso site. Se você continuar a usar este site, vamos supor que você concorda. Ok 
http://blog.novaeletronica.com.br/osciloscopio­usando­arduino/ 4/4