Go Down

Topic: Fade optie voor NCS314 Arduino Shield Nixie Tube Clock (Read 510 times) previous topic - next topic

jvs68

In je orginele firmware zit die LEPin call in je setup() (main file). Zonder dat doet hij het zeker niet :-).

Ik kijk nog eens even maar toch even een domme vraag:  je hebt wel je 12v supply aangesloten toch?

Edit:

Ik zie nog iets wat misschien in de richting gaat, in de originele firmware zie ik volgende bovenin de comments staan:



//driver for NCS314 HW3.x (registers HV57708)

//driver version 1.1

//1.1 SPI mode changed to MODE3

//0 on register's input will turn on a digit (when pol=high)



mn. die laatste zin. Ik kan het me bijna niet voorstellen maar misschien moet je bij jouw chip eerst LEPin hoog zetten en aan het eind laag. Je zou kunnen proberen die 2 calls om te draaien, dus eerst



digitalWrite(LEpin, HIGH);



dan je transfers()



en dan



digitalWrite(LEpin, LOW);

Die chip van jouw is net even anders. Het moet hier ergens in zitten, in de code zie ik verder geen reden waarom je helemaal niks zou krijgen.

jvs68

Brutus,

Ben ik weer. Heb nog wat gevonden waarvan ik vermoed dat dat je probleeem gaat oplossen.

Als ik in jouw originele firmware graaf zie ik nog iets in mainfile wat ik niet heb in mijn firmware, namenlijk (verspreid door de file):


Code: [Select]
#define pinSHDN 5

en verderop:

Code: [Select]
pinMode(pinSHDN, OUTPUT);
digitalWrite(pinSHDN, HIGH);



Als ik dan het schema van jouw hardware erbij pak (https://gra-afch.com/content/uploads/2020/12/Scheme-Shield-NCS314-4-v3.0-B1.jpg) zie ik dat die SHDN pin iets aanstuurt op jouw chip. Even googlen leert dat dat soort pins meestal je chip aan/uit zetten. Dus ik vermoed dat je chip uitstaat. Zie de datasheet van je chip, deze extra code stuurt de 'blanking' pin, oftwel controleert overall of er spanning op je HV registers wordt gezet of niet.

Dus kortom vergeet alles wat ik hierboven zei en probeer dit eens.

Bovenin de code (bv net na het definieren van LEPin):


Code: [Select]
const byte pinSHDN = 5;


en dan in je setup, na pinMode(LEPin, OUTPUT);

Code: [Select]
pinMode(pinSHDN, OUTPUT);
digitalWrite(pinSHDN, HIGH);


En dan nog eens proberen. I feel magic in the air :-).

Johan


MAS3

Een naam als "pinSHDN" doet mij denken aan een pin voor SHutDowN.
Dit soort pins zijn meestal active LOW, maar het is geen goed idee om de naam dan !SHDN of /SHDN te noemen in je code (want dat zal niet werken).

Een ! of / voor een naam (of een streep er overheen) betekent dat je dat moet lezen als NOT, en dat is ook wat je je code vertelt als je daar een ! in zet.
Deze tekens hebben een andere betekenis in code, het zijn wiskundige operators.
Daarom zal dat niet begrepen worden en moet je dat dus niet gebruiken in een naam.
Have a look at "blink without delay".
Did you connect the grounds ?
Je kunt hier ook in het Nederlands terecht: http://arduino.cc/forum/index.php/board,77.0.html

jvs68

Mas3,

Eens, de naamgeving is bagger. De firmware komt uit Ukraine en slecht/niet gedocumenteerd, eea uitvogelen is een opgave. Achter, voor Brutus, is ditdenk ik wel de reden waarom hij geen resultaat kreeg. Ben benieuwd en daarna kunnen we de code opschonen.

J.


Go Up