View Single Post
  #13   Report Post  
Posted to rec.crafts.metalworking
David Billington[_2_] David Billington[_2_] is offline
external usenet poster
 
Posts: 311
Default Bayite DC v-A-w meter (Jim Wilkins)

On 16/01/2021 15:25, Jim Wilkins wrote:
"David Billington"Â* wrote in message ...
.....
OK, I didn't know it was the segment pattern that was output, I just
looked and found some code to decode it and it didn't explain the reason
it was in that format. Maybe I'm spoiled as my Sylac digital DTI has
RS232 output in human readable format.

----------------------------

What do you use to write hardware control programs?

I got into it when the engineers tasked me to create applications
boards and programs for new ICs, that would run on a customer's
unmodified lab computer. At the time the best solution seemed to be to
use the printer port bits for the interface. In order to have full
unhindered read and write access to the the port's I/O registers,
which Windows and VB don't allow, we used QBasic under DOS, which has
only the brief clock interrupt, otherwise my program had full control
of everything except USB. QB provided a nice Integrated Development
Environment with interpreted or compiled execution of the relatively
small stand-alone applications programs that I was writing. The final
DOS version of QBasic has the structured syntax of Pascal and C's
pointers, great improvements on the original Basic.

The PIC was the preferred uC for small jobs so I've only played
briefly with an Arduino. The choice for important tasks was the TMS320
DSP family. I've never had a chance to program one though I did design
a DRAM controller IC for it.

However printer ports went away and USB replaced RS232, and my old
laptop's batteries are dying, so I'd like to find an IDE with hardware
register access capabilities to replace QBasic. The main reason for
laptops is remote datalogging, I couldn't very well strap a desktop
onto a prototype electric motorcycle or use one in a Cessna. At home I
could be datalogging beside the basement water heater or out at the
manually aimed solar panels.

The degreed technical staff kept the pure hardware design or
programming tasks for themselves, but I was assigned the ones that
required some competence in both, plus circuit board design and
mechanical packaging which is critical at microwave frequencies like GPS.

Lab computers are former office computers, and AFAIK always ran
Windows. I acquired some UNIX experience in the lab, though I'm far
from fluent in it. Mitre used Macs, with LabVIEW for hardware control
if the NuBus interface boards were available or I could build one.

I'm only programming stuff for myself these days as I retired from
Windows programming back in mid 2011 after 20 years doing it. My
favourite language would be C followed by C++, I have also done 68000
assembler which I quite like and understand but hate Intel assembler. I
have some Arduinos to play with and that is basically C from what I've
seen so far so get along with that well and having written code for
16bit Windows and Blackberry keeping state information I'm used to. I've
only briefly used PICs for some smartcard coding and some serial comms.
I'm back now to my origins in mechanical engineering.

Having started in Windows 3 the access to hardware was unrestricted so
have made the obligatory parallel port A2D. I've been using Linux for my
personal computing since about 1999 but haven't needed to do any low
level access but the ioctl function is provided for that and can be used
with the parallel port, the equivalent in Windows would be
DeviceIoControl , I've not used it but it's provided in Win32 SDK. I can
remember the days back in the 1990s when it was necessary to thumb
through the Win16 API book to find a function to do something, might
only have taken an hour or 2 but quite useful as I remembered a lot of
functions which were useful later.

The first software company I was employed at had 3 guys that had
electrical and electronic engineering degrees but when something needed
doing I got asked to look at it as I had the most practical digital and
analogue electronic experience and I was a MechEng. One of them summed
it up saying that he could design a transistor from scratch but didn't
know what to do with it. Regarding limited IO on PCs I got asked once to
make a watchdog for a PC based telemetry system using Windows 3.11 which
locked up occasionally, not really a surprise, and ended up using the
speaker drive as an output to reset the watchdog, it only needed a
single MessageBeep () added to the source code and recompiling the sytem
in those days took only about 10-15 minutes.