News:

SMF for DIYStompboxes.com!

Main Menu

Give me a sine

Started by Kevin Mitchell, May 12, 2020, 12:20:38 PM

Previous topic - Next topic

DrAlx

#20
+1 ElectricDruid. That's exactly what I meant.
I think you can do the whole thing in software. The only other chip needed is a CD4049 to convert the Arduino outputs level to the Vdd used by the BBD.  Use the CD4049 to boost the clock signals, and also the test input signal (which is a simple low that gets switched to high).
ElectricDruid is right that maybe something weird could happen if input goes from 0 to Vdd, but I doubt it. I think it will just clip. Try it and see.  MN3207 datasheet does not specify maximum allowed input voltage.

Use the Arduino to read a (scaled down) voltage from the BBD output. The difference between clipped BBD output levels should easily be more than a few 100mV. So just count how many clock ticks it takes to see output voltage change by more than that.

When generating clock signals, make sure they are not both high at the same time. So code should always switch off one pulse before switching on the other...
Tick:
Clock1 Lo
Clock2 Hi
Tock:
Clock2 Lo
Clock1 Hi


Kevin Mitchell

!
#21
Okay! Thanks for clearing things up, guys. And thanks for further suggestions.

I'm already using a CD4049 to raise the clock voltages. I was thinking of ways to raise the input level as I was limited to the micro's V+. I could just use another.
Already ahead of you making sure the clock signals are never high at the same time. However I do need to improve this as right right it's set up to click twice before checking the trigger - a lazy workaround.

I was having trouble getting consistent results when swapping between devices. I was banging my head because one night I'll have a breakthrough and try to improve on it, the next day results are different and I can't get back to where I was. I thought it was an input bias temperament with the MN300X devices but clearly something else was going on. This was before and after I refined the clock. The devices would either have no change on the output or the change was barely enough to observe.

I'll be back soon - probably in the original thread.
I appreciate you all  ;D
-KM
  • SUPPORTER