This is a thing that detects light over time and displays it on a graph, similar to what an oscilloscope does with voltage. It runs on my PIC18F4XK20 starter kit board, which means it has a PIC18F46K20 as its processor, a 128*64 pixel OLED display, and 4 buttons for input. The light detector is a simple photo resistor.

Here's what the board looks like:


And here's the interface:

This is what it looks like when you first turn it on. The line for the graph is shown in the top part of the screen. The bottom of the screen shows (from left to right) : the state of the RUN/HOLD feature (details below), the amount of light currently being detected (0% is completely dark, 100% is as high as the A-to-D converter can go), and a setting that can be changed. When first started up, that setting is the kind of light to detect. Right now it can only detect visible light.


Here's me poking the sensor:


One of the settings that can be changed is zoom amount. Because the screen height is small, the graph has to be squished. The zoom function can 'zoom in' on the lower portion of the graph, giving greater detail. Zoom 0 is the least detail, zoom 2 is the best.



Another setting is delay. This adds time in-between screen refreshes and A-to-D conversions.


Yet another setting is refresh rate. This changes how often the screen refreshes. Refresh rate 1 refreshes every time the A-to-D converter is polled, Refresh rate 2 refreshes every other time, and so on.


The last setting isn't actually a setting, it just shows the number coming from the A-to-D converter.


This is the RUN/HOLD function. When it's activated, the graph updating will pause. A cursor can be moved, and the amount of light at that point on the graph where the cursor is, is displayed at the bottom of the screen.
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 1
» All times are GMT - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement