avrCCD is an Interface to TSL1401 128×1 Linear Sensor Array with Hold.
The TSL 1401 linear sensor array consists of a 128×1 array of photodiodes. The pixel measures 63.5um (H) by 55.5 um (W) with 63.5 um center to center spacing. The Interface: The interface is very simple, not as complicated as interfacing “bigger” CCD Linear Sensors.
All you need is to generate two Signals (Clk & Si):
The Source Code: The CLK signal is generated within a loop that counts for every pixel. The ADC then samples each output before the next clock edge is generated. The data are then transmitted to the PC via the AVR’s UART.
The analog output signal A0 is amplified to near the ADC’s reference voltage to use the complete conversation range. I’ve used a rail-to-rail amplifier (CA3130) for this.
The PC Interface – Viewing the data with VB.NET:
To dispaly the data I’ve written a small VB.net application that allows you to modify the integration time, measure distances in mm or mil. The red line is the mean value. The 50 next to the OFF-Buton means that the data are updated every 50ms.