My Project, I need Help!!!!!!

Discussion in 'Homework Help' started by mnunez021, Feb 28, 2009.

  1. mnunez021

    Thread Starter Member

    Feb 27, 2009
    I need some help with a project. The project wants me to create a 7-Segment display using standard logic gates, AND, OR, NOT, NAND, NOR, XOR, and XNOR. Any suggestions? The last 6 inputs on the table will be a period as the output. Help please!!!
  2. thingmaker3

    Retired Moderator

    May 16, 2005
    If this project were assigned to me, I would begin by creating a truth table.
  3. SgtWookie


    Jul 17, 2007
    Since this is an assignment, we can't do it for you - but we can offer suggestions.

    Thingmaker3's suggestion to develop a truth table is an excellent one.

    It may help you to examine a datasheet for an existing commercial device that performs a similar, though not exactly the same function.

    A TTL 74x47 IC is a 7-segment display driver. Here is a link to Texas Instruments' datasheet for that device:

    As you can see, these types of devices are not exactly simple; however with enough thought your goal is achieveable. Just don't panic. :)

    Note that for your non-BCD values (1010 thru 1111), you can test for input D being high AND (C or B) high - then outputs a thru g should be high (display off) but the decimal point lit.
  4. SgtWookie


    Jul 17, 2007
    OK - so the decimal point isn't lighting at all?

    That bottom OR gate sure has a lot of inputs. Isn't that the input for the decimal point?

    Your MSB is I3, right?

    Remember what I was suggesting earlier about detecting invalid BCD input?

    In this case, if I3 is high, AND (I2 OR I1) are high, the decimal point should light up.

    I'm also seeing a lot of "floating" inputs (ie: not connected to anything). This can cause big problems in real-world circuits, particularly with CMOS devices. I even see a 3-input AND gate with only one wired input!
    Last edited: Feb 28, 2009
  5. SgtWookie


    Jul 17, 2007
    This question doesn't make any sense. :confused:

    Make up a truth table showing all of the possible input conditions, and what the state of the decimal point should be.
  6. SgtWookie


    Jul 17, 2007
    That still doesn't make sense.

    Take another look at the possible inputs
    Bin Dec
    0000 0
    0001 1
    0010 2
    0011 3
    0100 4
    0101 5
    0110 6
    0111 7
    1000 8
    1001 9
    1010 10
    1011 11
    1100 12
    1101 13
    1110 14
    1111 15
    All of the decimal numbers from 0 to 9 can be displayed in a single digit.
    But, 10 thru 15 require two digits - so the decimal point should then be lit.
    Notice in the table that it doesn't matter what the LSB is; only if the MSB (I3) is '1', and either of I2 or I1 are also '1' should the decimal point be lit.
  7. SgtWookie


    Jul 17, 2007
    I'd never used Logisim before, but it seems like a good tool for teaching logic.

    Here's a tip: instead of using the "input pins" labeled I0, I1, I2, I3...
    Use the Clock component in the Base library.
    For I0, use 1 tick low, 1 tick high.
    For I1, use 2 ticks low, 2 ticks high
    For I2, use 4 ticks low, 4 ticks high
    For I3, use 8 ticks low, 8 ticks high.
    Use Ctrl+T to tick your way through the simulation.
  8. mik3

    Senior Member

    Feb 4, 2008
    Why are you using NOT gates on the inputs of some gates and connect them to the inverting line of the input signal?

    You could connect the inputs of those gates directly to the non inverting line of the input signal.
  9. mik3

    Senior Member

    Feb 4, 2008
    First make a truth table with all inputs and outputs. Note all the possible combination for the input signals and then put what value you want each output to have for each combination. Then use sum of products or product of sums to derive the boolean equation for each output and then build your circuit. If you know how to simplify it have a go as to minimize the hardware size.
  10. SgtWookie


    Jul 17, 2007
    OK, so if the input is 1010 through 1111, the decimal point should be ON (input high), and everything else should be OFF (all other inputs to the 7-segment display low).

    You already have a truth table as far as all of the inputs, and what should be displayed.

    Now you need to work up what inputs to the 7-segment display should be lit for each input.

    For each 7-segment "bar", if the I3-I0 input is less than 1010, then SOMEthing should be lit up. You say you already have that part working.

    Except when the decimal point is supposed to turn on. Then everything else is supposed to be off.

    Why don't you try to implement the function:
    DecimalPoint = I3 AND (I2 OR I1)
    and go from there?
  11. thatoneguy

    AAC Fanatic!

    Feb 19, 2009