ARDUINO: help driving nixie tubes with HV5530 - Page 1
Forum section: electronics / general

author: jordan_me160
author_rank: Contributor
timestamp: June 29, 2020, 12:53:40 am
content: hello, i'm building a project (a divergence meter from steins;gate to be exact) and i'm currently driving only 3 of the 7 tubes with 1 HV5530 chip (only have 3 on my breadboard with 1 chip because t took me around 5 hours to solder all the outputs of the plcc to pin strip and i don't feel like doing a second one to test all 7) the reason i only need 2 of these to drive 7 nixes is because the first digit only needs to display a 0 or a 1 and the second tube will be the only one with the decimal on permanently and not controlled by the code thus only requiring a total of 62 outputs witch is exactly 2 of the HV5530's with their 32 hv outputs each. i decided to go this route because this will be a part of a cosplay and will need to be compact (its going to be powered from 4 3.7v lithium batteries and a 12v regulator to power everything). now for my problem....with all my searching around i cant seem to find any code that seems to even count properly, i currently have the usual 595 shift register demo code uploaded to my Arduino but it doesn't seem to light up anything in order like its supposed to and all the filaments turn on and off randomly. if i could get some help at least understanding how the shift out function of the Arduino works because everywhere ive seen it used and tutorials dont seem to go much further than "put this code in and hook up a 595 register with some leds and thats how it works" but it doesnt tell me how the code actualy functions so i can expand it from the 8 bit of the 595 to the 62 im going to need.

author: greenpossum
author_rank: Frequent Contributor
timestamp: June 29, 2020, 01:02:19 am
content: Post your schematic.

author: WattsThat
author_rank: Frequent Contributor
timestamp: June 29, 2020, 01:20:07 am
content: The only good thing about Arduino is the rather extensive code base on the web. Unfortunately, most of it is pretty crappy code but most times it’s enough to figure how things works. Case in point, here’s an existing program using two HV5530’s to drive a nixie clock.https://gist.github.com/Grippy98/8c267734c1a2bc05fc5375faf8a00850Sure, if you want to use shiftOut(), have fun calling it 64 times. Or you can use the SPI functionality built in the atMega and save yourself some coding pain as demo’ed in the clock code above. If you insist on doing it the hard way, the function is explained in the Arduino reference.https://www.arduino.cc/reference/en/language/functions/advanced-io/shiftout/BTW, yes you can think of the HV5530’s as four ‘595’s from a code point of view. There are a ton of tutorials on the web on how serial I/O works. No one needs to explain it here until you can ask a question that isn’t already explained a thousand time on the web.For those interested:http://ww1.microchip.com/downloads/en/DeviceDoc/20005851A.pdf

author: jordan_me160
author_rank: Contributor
timestamp: June 29, 2020, 02:03:36 am
content: first off, thanks for the quick rely.i had searched quite a bit for anyone else using the HV5530 and hadn't found any code for any of them, so thanks for sharing that one.now that you say id have to call shiftOut() 64 times, it makes sense now that its only sending 1 bit and pushing the previously sent one to the next latch. ill look into using the spi function now because it does look like itd be less work to get working. i guess ill keep plugging away at this to figure it out. thank you for the help