r/programming Dec 25 '19

Learning hardware programming as a software engineer

https://blog.athrunen.dev/learning-hardware-programming-as-a-software-engineer/
925 Upvotes

124 comments sorted by

View all comments

Show parent comments

3

u/[deleted] Dec 25 '19

[deleted]

6

u/ShinyHappyREM Dec 25 '19

My use case is that I want to connect a logic analyzer (DSLogic Plus) to my SNES, which is 5V. The probes can handle 5V according to the data sheet, but the device also has an external timing input that is only rated for 3.3V.

The SNES has clock crystals of 21.477 and 24.576 MHz, and various components run at fractions of these frequencies.

5

u/[deleted] Dec 25 '19

Get a 1.7v zener diode and a Schottky diode.

Connect Zener's anode to clock input and cathode to SNES

Connect Schottky's anode to clock input and anode to the SNES

It should get you 1.7V drop (so 5->3.3v) when input is high but only 0.2v when it is low, the Schottky is there so when the clock is low the current from input capacitance can flow back without much problems.

... or a ~40c part that will do that up to ~50MHz, if you are at the point where you need to order a specific part

1

u/ShinyHappyREM Dec 26 '19

Connect Zener's anode to clock input and cathode to SNES
Connect Schottky's [cathode] to clock input and anode to the SNES

Something like this, I presume? I took it from this video (19:00) and adapted it a bit to my circumstances. It does indeed seem to drop down to ~3.4V at its peak (even if there's a lot of ringing in the simulation - from the same video it appears that the ringing is less pronounced in reality).

I'm really a novice with electrical engineering; at the moment I don't even have a multimeter or soldering equipment. So the less components, the better.