So I needed a DAC (digital to analog converter) to use with my pic12F675 , and for those of you who have never heard of this little fella, itās an 8 pin microcontroller from Microchip that has only 6 I/O pinsā¦
This is a very simple circuit that converts Digital data (serial input) to Analog values ranging from 0v to 5v (I used it to generate audio (adding an output capacitor to filter DC) with the 12f675 (requires amplification) )
It can also be used as a serial->parallel output multiplexer (see digital outputs)
Materials:
+(1) 74164 8bit Shift Register
+(1) 74373 8bit Latch
+(9) 10K resistors
+(7) 4.7K resistors
+āGenericā perfboard (the pcbā¦)
Step 1: The Schematics
I was thinking of using this as a generic DAC ( āplug and playā at any breadboard(plugboard) ) for most applications you wonāt need to use all inputs (but DONāT let them float)
Inputs :
tri_state :
ā1ā will put the digital outputs to tri-state (while in tri-state the digital āoutputsā can be used as parallel input to the DAC)
ā0ā Normal Usage
Latch_Enable :
ā0ā Maintains the current Register state (Maintains the current analog output)
ā1ā Copies the inputs from the shift register and stores it
Not_Shift_clear:
ā0ā Clears the Shift register
ā1ā Normal Usage
Shift_Clock:ā
__/ clocks the result of the expression (Serial_In and Serial_In2) into the shift register
Outputs:
Analog_Out: after all It is a digital to ANALOG converterā¦
Parallel_Out 0-7: but itās also a output multiplexer =D
Step 2: The Assembly As a Breadboard āPluginā
By using this cheap perfboard and adding some ā(Jumpers)-1ā³ My DAC is now a single (unusually LARGE) component ā¦
My assembly isnāt particularly elegantā¦but it does the trickā¦