| Electronics > Projects, Designs, and Technical Stuff |
| 10bit binary to 3 digit BCD (fixing an old nixie tube bench multimeter) |
| << < (3/4) > >> |
| TerminalJack505:
--- Quote from: SK_Caterpilar_SK on January 30, 2020, 11:09:59 pm ---... 10bit paralel ADC and convert the binary into 3 BCD digits. 10bit is the closest I can get to get the full 999 range of 3 digits (that is 25 less than what 10 bit limit is) This all sounds fun and easy and no....I am not using an arduino or FPGA or anything like that. I am a analog nerd fighting with audio stuff a lot and analog stuff in general, and I hav absolutely no interest in copying something from the internet that I wont understand at all. SO the real problem is conversion of 10bit binary to BCD. I have found a IC (74184 and like that) which are long obsolete and unobtanium, so I guess a built up converter it is. I just dont know how at al. If anyone could somehow point me to something expandeable or draw up somethin for me with logic gates or TTLs or CMOS I would be gratefull. And please also keep in mind that I am a total noob when dealing with digital tech. Even the basic digital tech. Thanks. --- End quote --- BBM. I appreciate the OP not wanting to hear a "just use a microcontroller/FPGA/CPLD" answer but doing this using just an ADC and discrete logic ICs isn't very practical. It is doable but would likely take 10 to 15 ICs to do. Using a microcontroller, you can likely do it with just two ICs--the MCU and a precision voltage reference IC. There is already a project on github that uses a MCU to emulate the CA3162. (I'm guessing you have already come across it.) And, no, even though that is an Arduino sketch, you wouldn't have to use an entire Arduino board to do what you need to do. You could do the early development using an Arduino and then once you are happy with the firmware you could design your own circuit using just a MCU, a voltage reference, and a handful of passives. Just to get an idea of what it would take to do this using discrete logic ICs, watch this YouTube video (for an 8-bit binary to BCD converter) and recognize that each of those C1, C2 .. Cx blocks would need to be separate discrete logic circuits. You would need even more since you are converting a 10-bit value. Note that the circuit shown is just the combinational logic part. You would still need sequential logic to buffer the output, synchronize with the the ADC, multiplex the output, etc. You could cheat a little and use EEPROMs as a look-up table for the combinational logic. This would reduce the number of required components but at that point you may as well just use a CPLD or FPGA. |
| SK_Caterpilar_SK:
--- Quote from: macboy on January 31, 2020, 08:50:25 pm ---edavid beat me to my suggestion. The TC7135, ICL7135, MAX7135, SI7135, and TC835 is a 4.5 digit converter with muxed BCD outputs. You would of course not use the outputs for the leading 1 digit, nor the least significant digit, but you might be able to find a way to make it work. The TC14433 is a 3.5 digit similar device (+-1999 count). --- End quote --- Thank you very much I did not even know about the TC14433. It woul be the most likely candidate to replace the C520D (AD2020 doesnt matter one of those bilions of ICs). The signal it would recieve would always be positive, and the polarity indication is done separately on the analog side of the board. |
| SK_Caterpilar_SK:
--- Quote from: TerminalJack505 on January 31, 2020, 09:51:39 pm ---I appreciate the OP not wanting to hear a "just use a microcontroller/FPGA/CPLD" answer but doing this using just an ADC and discrete logic ICs isn't very practical. It is doable but would likely take 10 to 15 ICs to do. Using a microcontroller, you can likely do it with just two ICs--the MCU and a precision voltage reference IC. There is already a project on github that uses a MCU to emulate the CA3162. (I'm guessing you have already come across it.) And, no, even though that is an Arduino sketch, you wouldn't have to use an entire Arduino board to do what you need to do. You could do the early development using an Arduino and then once you are happy with the firmware you could design your own circuit using just a MCU, a voltage reference, and a handful of passives. Just to get an idea of what it would take to do this using discrete logic ICs, watch this YouTube video (for an 8-bit binary to BCD converter) and recognize that each of those C1, C2 .. Cx blocks would need to be separate discrete logic circuits. You would need even more since you are converting a 10-bit value. Note that the circuit shown is just the combinational logic part. You would still need sequential logic to buffer the output, synchronize with the the ADC, multiplex the output, etc. You could cheat a little and use EEPROMs as a look-up table for the combinational logic. This would reduce the number of required components but at that point you may as well just use a CPLD or FPGA. --- End quote --- I have not seen the arduino CA3162 until now but unfortunately it does not look like it will work with this perticular meter and I dont want it to be turned into a museum piece that will be turned on once a decade. I want it the most accurate I can get it and the mod in that post has stated that there are some accuracy issues. I would happily do a 20 IC contraption no problems I would not mind at all and I would still prefer that over emulation or replacing the same IC as before. Practicality does not matter here, neither does size. I can still make it smaller because I can make 2 layer boards and compact the whole thing quite a lot. |
| TerminalJack505:
If you are wanting to go the route of using discrete logic gates then one of the first things you will probably want to do is find some software that will allow you to create and simulate digital circuits. All of the good software will automate circuit creation from Boolean functions and truth tables as well as let you draw them by hand. I don't have any particular suggestions so far as this goes since the software I have used is either 1) not free, or 2) not simple (and several GB to install.) Others here on the forum might have some suggestions. |
| free_electron:
--- Quote from: TerminalJack505 on February 03, 2020, 12:26:49 am ---If you are wanting to go the route of using discrete logic gates then one of the first things you will probably want to do is find some software that will allow you to create and simulate digital circuits. All of the good software will automate circuit creation from Boolean functions and truth tables as well as let you draw them by hand. I don't have any particular suggestions so far as this goes since the software I have used is either 1) not free, or 2) not simple (and several GB to install.) Others here on the forum might have some suggestions. --- End quote --- that's what i was proposing : get the altera software , draw schematic using the TTL library ( almost all 74xx series is in there ) , simulate it. when you get the logic working correctly : flash it in a simple CPLD and bob's your uncle. |
| Navigation |
| Message Index |
| Next page |
| Previous page |