Skip to content

pianyu/Simple-Oscilloscope

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Simple Oscilloscope

It is a simple digital oscilloscope.

Simple Oscilloscope Screenshot

Demo video: https://www.youtube.com/watch?v=dBCC96FcziM

  • 100Hz sampling rate.
  • 0 ~ +5V (According to power supply) ADC input voltage.
  • 1 ~ 6/8 ADC channels which is defined in Makefile.
    • 6-channel 10-bit ADC in ATMega328P PDIP Package.
    • 8-channel 10-bit ADC in ATMega328P TQFP and QFN/MLF package.
    • ATMega328P datasheet.

Have the project

You can have it from the GitHub: https://github.com/starnight/Simple-Oscilloscope

Or, clone the project from GitHub.

git clone https://github.com/starnight/Simple-Oscilloscope.git

Directory

  • firmware: The firmware of Simple Oscilloscope.
  • console: The program draws the signals' wave on the computer screen.
  • circuit: Ones can build the circuit according to the schematic.

Prepare the Software Environment

  • git
  • avr-gcc
  • avrdude
  • python3
  • pyserial (python library)
  • crcmod (python library)
  • matplotlib (python library)

Build Steps

  1. Have the project by downloading from web site or git cloning.
  2. Build the circuit according to the schematic in the circuit directory.
  3. Buid the firmware and flash it into MCU ATMega328.
  4. Make sure there are avr-gcc and avrdude in the build environment.
  5. Change to the firmware directory.
  6. Ones must edit the Makefile according to the development environment. For example, set AVRDUDE_PROGRAMMER in Makefile according to the ISP tool.
  7. Have the dependent library by make dep.
  8. Compile the firmware by make.
  9. Connect the programmer and program the MCU by make program.
  10. Disconnect the programmer.
  11. Connect the MCU and computer with the serial port and then power on.
  12. Excute the main.py with paython3 in console directory.
  13. Make sure the serial port is connected between MCU and computer.
  14. Check the serial port device name / path list in the system.
  15. Change to the console directory.
  16. Edit the serial port parameter going to be opened in main.py.
  17. Excute python3 main.py or ./main.py.

License

Simple Oscilloscope's code and circuit uses the BSD license, see our 'LICENSE.md' file.

About

Simple Digital Oscilloscope

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 68.7%
  • Python 16.3%
  • Makefile 11.7%
  • C++ 3.3%