Shop OBEX P1 Docs P2 Docs Learn Events
74hc595 seven segment. — Parallax Forums

74hc595 seven segment.

I picked up some 7 segment modules off ebay. https://ebay.com/itm/74HC595-static-drive-2-3-4-segment-digital-display-module-0-5-inches-2-3-4-way/332337987430?ssPageName=STRK%3AMEBIDX%3AIT&_trksid=p2057872.m2749.l2649

They use the sm74hc595d chip.

Any data sheets I found were not in English. Not sure if they can do 3.3v logic.

Has anyone worked with these?

Comments

  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2018-01-26 23:51
    According to specs, 74HC logic is pretty marginal with 3.3V signal levels [edit]when powered from 5V[/edit]. 74HCT logic is preferred. Still, I'd still give the modules you ordered a 99% chance of working at 3.3V -- but maybe not under all temperature extremes.

    -Phil
  • mikeologistmikeologist Posts: 337
    edited 2018-01-26 21:34
    You typed sm, it's sn
  • Looks like a M to me

    ZT91CQ.jpg

    These are how they labeled the pins.

    PdMTYs.jpg

    If i had all the segments on. Some of the segments would turn on when testing. Not sure what I'm doing wrong.

    I don't have any level shifters around. Might have to order some.
  • "SN" is just a prefix for Texas Instruments products. Other manufacturers have different prefixes. "SM" is the prefix for KeySemi. Neither is part of the generic part number.

    -Phil
  • Can you show your code? Clocking all "ones" into the shift register (SDI/SCLK) followed by a positive edge on LOAD ought to light up all segments of one digit.
  • This is what I've been testing with.
    CON
      _clkmode = xtal1 + pll16x             'Standard clock mode * crystal frequency = 80 MHz
      _xinfreq = 5_000_000
    
    '------Shift Register Pins------
      Latch_Pin         = 19
      Clock_Pin         = 17
      Data_Pin          = 15
      Chip_Num          = 2
    
    OBJ
    
      data        : "74HC595_Regular"
          
    PUB Main 
      
      data.Start(Clock_Pin, Latch_Pin, Data_Pin, Chip_Num)
      
      data.Out(%11111111, 0)
      data.Out(%11111111, 1)
      waitcnt(clkfreq*2+cnt)
      data.Out(%00000000, 0)
      data.Out(%00000000, 1)
      
    
    
  • Phil Pilgrim (PhiPi)Phil Pilgrim (PhiPi) Posts: 23,514
    edited 2018-01-26 23:55
    Can you also post the code for 74HC595_Regular.spin? 'Just wanna see what it's doing with your calls.

    -Phil
  • It came from the obex or forums some where.

    IT's to big to post here so I'll attach it.
  • Maybe put a delay after the data.start to be sure the PASM cog is running. Otherwise:

    Looking at your code, you are doing everything exactly right.
    Also, the really good documentation in 74HC595_Regular makes me think it was probably tested and likely works.

    I would try to decide whether it is a hardware (wiring) vs software issue.
    I would write a really simple (trivial) spin program to shift out a few bits, followed by a low-to-high transition on Latch_Pin.
    If something lights up, you got a software issue.
  • Thanks for taking a look.

    I had a flip module show up. So set that up a new bread board with some solid jumper wire.

    Working as expected now. Must have been my previous wonky set up.
  • Glad you're up and running.
Sign In or Register to comment.