Introduction: 1 ChaOs(c); a Very Primitive $10 1 Channel Oscilloscope
I always wanted to have a simple oscilloscope, but like many colleague hackers the budget did not allow for it.
Finally (at Banggood) I found a 1.8" TFT display, and with an Arduino Pro Mini, 5 * 1kOhm resistors, some simple switches and some Arduino programming I now have a very, very basic 1 channel oscilloscope (hence 1 ChaOs(c)) for less than $10! I have to admit, it is very basic, but I hope with the help of others, a more expanded version can be made.
At present it will only show signals ranging from 0 Volt up to Vcc. The software is based upon Henningkarlsen's great UTFT library which I slightly optimised for the use of just this display. I renamed it to TFTLib in order to avoid terrible things happening to my computer....
Please forgive my amateuristic programming style, it is one of my first projects with Arduino!
This is also my first instructable....
Step 1: Connect the Arduino Pro Mini to the TFT
In the UTFT library (renamed to TFTLib for this purpose) we can select the digital output pins that will be used to drive the display.
In order to make things simple to construct I used digital outputs as follows:
Arduino Pro Mini The TFT module
Digital pin 2 Input 1 (RST) connect with 1kOhm
Digital pin 3 Input 2 (CS) connect with 1kOhm
Digital pin 4 Input 3 (D/C) connect with 1kOhm
Digital pin 5 Input 4 (DIN) connect with 1kOhm
Digital pin 6 Input 5 (CLK) connect with 1kOhm
VCC Input 6 (VCC)
VCC Input 7 (BL)
GND Input 8 (GND)
A0 is the analog input that will be digitized and shown on the display....
Also Digital pin 7, 8 and 9 are in use in te program (not shown on the pictures!!)
pin 7 connected to Gnd increases the interval between the samples by 10 microseconds; connecting pin 8 to GND decreases the sample interval by 10 microseconds.
The sampling will start as soon as pin 9 is connected to GND (shortly, <500 milliseconds). It will then only scan once, 160 samples. Connecting pin 9 longer than 500 milliseconds the unit will scan continuously.
Step 2: The Program...
Put the HW_AVR*.* and TFTLib*.* files in the TFTLib library and open _1chaosctest.ino in the Arduino IDE; compile and upload and you are done!
As I did not want to have to solder many pins to my contraption I used https://www.tindie.com/products/BBTech/5-pin-pin-h...
This makes life easy!