The code is done! Woot!!
Well, enough of the code is done :)
I've published the code here - https://github.com/ibuildrockets/NixieTemperatureDisplay on my Github page.
As it stands, the code works but I want to add a 'slots' mode to reduce cathode poisoning.
With nixie tubes, one thing that can degrade their performance over a period of time is splatter - where material is ejected from the active cathode and splatters onto those surrounding it that are inactive. It won't happen overnight, but it will happen :( There's a good article on cathode poisoning here - http://www.tube-tester.com/sites/nixie/different/cathode%20poisoning/cathode-poisoning.htm
What 'slots' does is to cycle through each cathode every so often - and this can reduce the build-up of material and lengthen the life of the tubes. And that's something you're going to want to do!
The nixie clock I built in 2006 is still going today and looks like the day I turned it on - it cycles the digits every 60 seconds - as the minute rolls over, the numbers all cycle for a few seconds. Looks cool and keeps my tubes in top condition.
I'll work on this next :)
Ok! Back to the code!
The code is a bit messy - but what code isn't?
How this all works -
The OneWire DS18B20 is first declared and set to reside on Pin 19 (this is A1 on the Pro Micro)
OneWire ds(19);
Next is the declaration of the three digits for the display:
int digOne = 0, digTwo = 0, digThree = 0;
//digOne - Tens, digTwo - Ones, digThree - Decimal
And finally, the 3 BCD outputs are set as follows://Tens
const int tenA=2;
const int tenD=3;
const int tenB=4;
const int tenC=5;
//Ones
const int oneA=15;
const int oneD=14;
const int oneB=16;
const int oneC=10;
//Decimal
const int decA=6;
const int decD=7;
const int decB=8;
const int decC=9;
This layout is to suit the inputs on the К155ИД1 BDC chip
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.