I have a new version of my PCGU1000Ctl.exe application, the source and executable are here.
Notable changes are the ability to save configurations, the addition of a library function filter on/off checkbox, and keyboard shortcuts allowing the [Enter] key to load the entered parameter value as Frequency 1, and using the “S”, “Q”, and “T” keys to respectively set "S"ine, s"Q"uare, and "T"riangle waveforms.
The configuration files are .ini file like, here’s the contents of the TestLibrary.cfg file:
[color=#408080];last saved: 11/19/2008 @ 18.43.04
;TestLIbrary.cfg[/color]
[color=#0040BF]fguWave=2
fguFreq1=2500
fguFreq2=5000
fguAmplitude=7.5
fguOffset=-0
fguInterval=10
fguLibrary=lecroy002.lib
fguOutputON=True
fguSweepON=False
fguLibraryON=True
fguAttenON=False
fguAttenX=1
fguFilterON=False
fgu50OhmVals=1[/color]
Like .ini files any line beginning with a semi-colon is a comment, blank lines are ignored. The fgu50OhmVals parameter is not active and must be set to 1. All parameters shown must be included or the file will be loaded.
Also added is a “Reset All” button that resets things to the same, and very well chosen, defaults as FGU.exe.
All set parameters are saved to the registry on exit, including the currently loaded configuration file – it will be reloaded on startup.
Here’s what it looks like now:
I know there are bugs, don’t be embarrassed to let me know of them—I am too old to be offended by much of anything!
-cliff-
In case anyone is interested the lecroy002.lib library loaded in the above screenshot was created from a CSV capture of a 5 us pulse from a 20 or more year old logic pulse injector. I captured the trace with the Lecroy 322 Wavejet and used Excel to scale it to values -1 to 1, that saved it to a “*.lib” text file.
Here’s a comparison of the original trace captured from the logic injector, and the PCGU1000’s recreation of same from the manipulated .lib file.
There’s a bit of added low level HF noise, however overall it looks great–to the extent that I created a Perl script to take the Lecroy waveform dumps and blow 'em out as PCGU1000 library file. I am have a blast playing with this and can’t stop thinking up new ways to exploit it.
Speaking of which, a logarithmic sweep would be neat…(hint)