Skip to content

Spina02/arduino-oscilloscope

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Arduino Oscilloscope

This project is going to implement a simple oscilloscope using an Arduino Mega 2560. The oscilloscope samples up to 8 ADC channels and streams the data to a PC for visualization.

Features

  • Timed sampling of up to 8 channels on the ADC
  • Configurable sampling frequency
  • Continuous sampling mode
  • Buffered sampling mode with trigger conditions
  • Asynchronous serial communication using UART interrupts

Components

  • Arduino Mega 2560
  • Whatever sensor to test the oscilloscope (simple wires are also ok)

Project Structure

  • Arduino/: Contains the Arduino code for the oscilloscope.
  • Linux/: Contains the PC client code for controlling the oscilloscope and visualizing the data.

Prerequisites

  • linux

    sudo apt-get install arduino gnuplot make
  • arch

    sudo pacman -S arduino gnuplot make

Compilation

The following command works both in main directory (arduino_oscilloscope) to compile both Arduino and Linux, and in the single directories (Linux or Arduino) to compile the single part of the project.

  • Compilation only

    make build
  • Clean only

    make clean
  • Clean + Build + Run

    make

Running the code

  • Run with default attributes:

    make run

    or just:

    make // clean + build + run

    Default attributes are:

    • device: /dev/ttyUSB0
    • baudrate: 9600
    • blocking: true
  • Run with specific attributes:

    make run <device> <baudrate> [blocking]

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published