I want to share with you the performance of hours on IV-9 lamps in a block from the TU-154 aircraft. On the case there is an inscription ITV-4, apparently this unit is called so! In their native place, they were watches made on rigid logic. The person who ordered the rework from me wanted to use them as a desktop accessory that would show the time and temperature, depending on the mode. In this case, it was necessary to maintain the function of adjusting the brightness of the lamps. And one more condition was the energy independence, I mean, by this keeping the time account, after turning off the main power.Management Board (mount camping on “native” places):
Now about the management of lamps. The customer insisted on a static indication, therefore, we will have a “bunch” of control signals (7 outputs * 4 lamps). To increase the number of pins, I used four shift registers 74HC595, the pins of which are connected to four ULN2003 microcircuits. The ULN2003 chip is a set of seven transistor switches. Each transistor switch has a limiting resistor in the base, so you can safely hook up the outputs from the shift register directly to the control inputs uln-ki.Device diagram:This is the first part of the work, on which there is no adjustment of the brightness of the lamps - they burn to "full". All power devices - 5V. In this version, the watch can be powered even from the USB port! The diagram also does not display the lamps, to connect them you need to connect their anodes to the power plus, and to connect the segment leads through current-limiting resistors (the segment current should not exceed 19mA) to the leads L (1) _1 .... L (4) _7. When adjusting the brightness, the anodes of the lamps and the pins number 9 of the ULN2003 chips are not connected to the power supply, but to the output of the power control circuit. Brightness control circuit:On input (INPUT +; INPUT-) we supply a constant voltage of 7-9V.Linear stabilizer 7805 stabilizes the voltage to 5V, which is used to power the microcontroller, real time clock, shift registers and temperature sensor. Linear regulator LM317 - used to realize brightness adjustment. At ratings R1-3.9 kΩ, and RS_1, RS-2, a variable resistor at 10 kΩ voltage of 5V_ADJ_OUT will vary depending on the resistance of the variable resistor from 2.5 to 4.9V. On the LM317 you need to put a small heatsink, I literally in 10 minutes made such as in the photo, which is quite cool with cooling. The material is a small part of the CD case:The photo shows the temperature sensor output and the battery compartment for the DS1307 real-time clock. Now the execution. Body:I extended the conclusions from the lamps and rolled them into pigtails and returned them to their original place:
Lamps.But here it is necessary to say, lucky! I used to come across only gas-discharge indicators, for the power supply of which, take out and put 180V! Everything is very convenient here, you can use 5V power supply (strictly speaking no more than 4.5V, but more on that later), i.e. the same line that is used to operate the main microcircuits. A lamp is a flask with a vacuum, in which there are eight filaments of incandescence. Thus, IV-9 has a common conclusion, and eight segment ones.To output any information, it is necessary to "supply" the general and relevant segment outputs. The polarity of the connection does not matter. In my case, I connected output 1 to the power supply (supply voltage, in my circuit, changes to adjust the brightness of the lamps) and connect the segment outputs to the ground.
Circuit.The main workhorse is mega8. Her job is to poll either the temperature sensor — the DS18B20 or the real-time clock DS1307 — and output information to the lamps by writing the required array to the shift registers. Also, when one of the four buttons is triggered, the corresponding digit in hours or minutes changes.Seconds when changing hours or minutes are reset. When simultaneously pressing the first and fourth buttons, the device switches to the temperature display mode. Details can be viewed on the video. All four buttons “sit” on one interruption, after triggering which, it is determined which button is pressed, here is an example of such an implementation:
Caution! You are not authorized to view hidden text.