Hello, I am trying to interface a 6 bit a2d convertor to a Mega2560 and use the result (eventually) as a better a2d for an oscilloscope input. I thought I'd set up the a2d and run it to a LCD screen with the value of the outputs from the parallel out from the a2d, running the clock for the conversion from a pro mini 5v using the external clock out pin, I assumed that this would result in conversions continually being performed, which I can then read in using digitalRead() of each pin, 6 in the case of my current a2d. I am unsure of why the result seem not to update, as if the clock is not working! Reading the data sheet http://www.digchip.com/datasheets/parts/datasheet/000/CA3306CE-pdf.php or similar for the CA3306CE a2d I have, I've connected the circuit example as shown, Can someone please help in regards to the timing of this, How to and whether I need to run initialization lines from the Mega board? I tried just flipping the Clk input twice as indicated to perform a conversion and output, however I am just getting noise 1 & 0's represented randomly when I connect to approx. 2.2 Volts, even though I tend to get all 1's when connected to 5v (also ref Voltage) and all 0's when connected to 0V. Because of the high and low readings I thought all was good, not so it seems. Any further info. would be appreciated, or a link to another topic, I couldn't find one. Cheers
Do I need to connect a resistor in between the a2d parallel output pins and the arduino input pins?
You need to know the electrical characteristics of the interface you're connecting to, and also understand how that interface is used to trigger conversion and then return the results. Do you know and understand that?
MysticDarkLord: using the external clock out pin, I assumed that this would result in conversions continually being performed, which I can then read in using digitalRead() of each pin, 6 in the case of my current a2d.
I don't know what you mean by the external clock out pin.
Your clock and your reading must be synchronized as shown in the datasheet timing diagram. One clock followed by one read (rinse and repeat). Unless you are content with a very slow data rate you can't use digitalRead() because it is too slow and you would have to do 6 of them for every sample. You need to use PINx where x is the Atmega port number. That allows you to read up to 8 bits at one time. Read about direct port manipulation.
I presume you want it to work fast or you would be using the Arduino's own ADC.