Multisim and Ultiboard

cancel
Showing results for 
Search instead for 
Did you mean: 

Parallel to serial convertor using the 74166 in multisim

Solved!
Go to solution

Hello

 

I teach at a local junior college and am trying to create a multisim circuit to convert 8 bit parallel data into serial data using a 74166.  I have a circuit attached but I am not getting the correct data out.  I have an analog input connected to a A /D convertor and that part of the circuit is working.  However I am having trouble getting the Parallel to serial part to work..  I think I need a trailing edge one shot to toggle the shift/load function on the 74166. But I am looking for help to get the serial line to provide a serial representation of the parallel input.  Any help would be appreciated.  I have attached my work so far.

 

Scott

0 Kudos
Message 1 of 12
(2,852 Views)

 

Hi Scott,

 


I don't have Multisim (Desktop) application, I am only a user of Multisim Live (Free Subscription) so I can't open the circuit that you attached. I hope you can post an image (preferably .PNG format) of your circuit, either generated/converted from Multisim or a screenshot. Other users who don't have Multisim (Desktop) application might be able to help you too if they can see the schematic diagram.

 

 

 

Best regards,

G. Goodwin

 

0 Kudos
Message 2 of 12
(2,794 Views)

here you go...  The scope signals are shown as well.  I am looking for a serial NRZ output on Scope 2

Message 3 of 12
(2,767 Views)

 

Hi Scott,

 


I don't have much free time right now so I just hastily analyze the circuit and I'll just describe my quick recommendations.

 

  • Modify the timing parameters of V1, the Start Of Conversion (SOC) generator, from 5 ms / 10 ms to 25 ms / 50 ms.
  • Insert an inverter between V4, the shift clock generator, and clock (CLK) input of D Flip-flop U9. This should not affect the connection between V4 and CLK input of U5 (74166), they should still be directly connected.
  • Reroute (transfer the connection of) the Shift/Load (SH/~LD) input of U5 (74166) from the Q output to ~Q output of D Flip-flop U9.
  • Reroute (transfer the connection of) the D input of D Flip-flop U9 from its ~Q to the active-low End Of Conversion (~EOC) output of U1 (ADC).
  • It is preferable to connect the SET and RESET input terminals of D Flip-flop U9 to ground or to a valid logic 0 source (you may just connect them to U6 or U8 which are connected to the INH and SER input terminals of 74166).

 

 

Best regards,

 

G. Goodwin

 

0 Kudos
Message 4 of 12
(2,751 Views)

Thanks, but I am still not getting any output, and the not Q output of U9 is 5 volts all the time, I looked closely at the not EOC pulse coming out of the ADC and it is only 2 us wide I think if I can put a one shot on it with a long enough pulse to trigger U9 it will work.here is a screen shot of what you recommended.  As I said the NOT EOC pulse is only 2 us wide.  I think I need a one shot so U9 will detect it.

Message 5 of 12
(2,730 Views)

 


Sorry for the delay. I tried to reply yesterday but due to indifference of some other individual the draft that I was writing got obliterated.


In my previous reply I first thought of asking you about some basic information on how U1's (the Analog-to-Digital Converter) control and status signals work because I don't have access to its specifications (I don't have Multisim application as I mentioned earlier). On the other hand, I deemed it will only cause additional delay in finding the solution to your problem. The Analog-To-Digital Converter in your circuit appeared fictitious with no real-world part number, only a generic name ADC. Initially, I thought of similarity of operation with National Semiconductor's (now part of Texas Instruments) ADC0800 except for the complemented logic state of the End Of Conversion status signal. The absence of clock input, however, discouraged me from closely relating the ADC in your circuit to the popular ADC0800. I then proceeded to assume that the active-low End Of Conversion (~EOC) signal goes low at the end of a conversion cycle and stays low until the succeeding rising edge of Start Of Conversion (SOC).

 

 

Thanks, but I am still not getting any output, and the not Q output of U9 is 5 volts all the time,


If my assumptions about the initial states of the circuit and ~EOC were correct, the circuit could have just performed one shifting cycle. This is because I mentioned that the SET input of D Flip-flop U9 should be connected to ground or to a valid logic 0 source. My assumptions were wrong.

 

 

I looked closely at the not EOC pulse coming out of the ADC and it is only 2 us wide I think if I can put a one shot on it with a long enough pulse to trigger U9 it will work.


The notion of using a monostable multivibrator is fine, it can solve the problem but let us try if we can find better alternative.

 

 

As I said the NOT EOC pulse is only 2 us wide.

This parameter reveals how the ADC operates and hopefully we can find an elegant scheme to make your circuit work. This width of ~EOC is narrow enough to be used as a one-shot trigger but I perceive this width as wide enough to be used as asynchronous SET or RESET input signal(s) to a flip-flop.

 


Here are my new recommendations, let us use the first image that you attached (ADC_Serial.PNG) because my modifications in the second image can introduce confusion.

 

  • Modify the timing parameters of V1, the Start Of Conversion (SOC) generator, from 5 ms / 10 ms to 25 ms / 50 ms (this is just to make the circuit work, these can be adjusted later to more efficient values).
  • Replace D Flip-flop U9 with another D Flip-flop but with active-low set and reset (~SET, ~RESET) type. This "new" Flip-flop is just for convenience, inverter(s) can be inserted in the original circuit as an alternative. For reference, the D Flip-flop in your original circuit is Type 1 and the replacement I recommend is Type 2 in this Multisim Live Help page. Based on this Help page, the Flip-flop need not actually be deleted and replaced, the original may just be configured.
  • Connect the Q output of the D Flip-flop to the Shift/Load (SH/~LD) input of U5 (74166). This connection is thus similar to the original circuit.
  • Connect the D input of the D Flip-flop to ground or to a valid logic 0 source (you may just connect them to U6 or U8 which are connected to the INH and SER input terminals of 74166).
  • Disconnect the clock (CLK) input of the D Flip-flop from V4 and CLK input of U5 (74166). This should not affect the connection between V4 and CLK input of U5 (74166), they should still be directly connected.
  • Connect the clock (CLK) input of the D Flip-flop to V1 (which is also connected to SOC input of ADC U1).
  • Connect the active-low set (~SET) input of the D Flip-flop to the active-low End Of Conversion (~EOC) output of U1 (ADC).
  • It is preferable to connect the active-low reset (~RESET) input terminal of the D Flip-flop to a valid logic 1 source (you may just connect it to U7 which is connected to the ~CLR input terminal of 74166).

 

0 Kudos
Message 6 of 12
(2,702 Views)

Привет, Гудвин! 
Как всегда, интересно читать твои обстоятельные ответы! Переходи уже на стационарную версию.
" но из-за безразличия какого-то другого человека черновик, который я писал, был удален.",- это случается, когда долго пишешь ответ не только на этом сайте (заканчивается время сеанса и заносимая информация не успевает осесть на сервере, имхо...) А, из-за ненадёжной связи, -так вообще сплошное мучение отвечать...
Длинные ответы составляю в "Блокноте". Оттуда копирую на форум и добавляю остальные файлы...

0 Kudos
Message 7 of 12
(2,691 Views)
Solution
Accepted by sdgengineer

Finally got it to work, Thanks for the help all.  The attached Multisim circuit seems to work fine.  When the Blue clock line goes low the red data line outputs the result of the A/D convertor.  the LSB is on the Left hand side of the Oscope  while the MSB is on the right hand side. See picture below:  The output red is only valid when the Blue clock is low.  In this case this is a value of 85 Hex as shown in the readouts in the picture of the circuits below the scope readout.  the MS14 file is also attached.  If you run it you will see the red output will remain high after the blue goes high sometimes depending on the LSB value, but the red serial data is only valid when the blue clock line is "0".

ADC-Serial10000101_Scope Trace.PNG

ADC_to_Serial_Circuit.PNG

  .

 

Message 8 of 12
(2,642 Views)

 


Hi tipa,

 

 

I am not in need of Multisim Desktop. I just want to sporadically participate in the discussions in this forum so I can observe other people's activity and the problems they encounter with Multisim Desktop.

 

Indeed, I start constructing my answers by typing pointers in Notepad. From these pointers I then build the sections while still in Notepad. I just transfer it in this Support Forum's text editor for formatting and final checking and correction. I did not lose the draft in this Support Forum's text editor, I was alluding to person(s) manning the servers/network in the place where I was creating my reply.

 

 


Best regards,

 

G. Goodwin

 

 

0 Kudos
Message 9 of 12
(2,594 Views)
Понял Вас, что, всё-таки человеческий фактор присутствовал... Всяческих благ!
0 Kudos
Message 10 of 12
(2,590 Views)