• All
  • 8840a
  • Commodore64
  • Projects
  • Projects
  • Tutorials
  • Default
  • Title
  • Date
  • Random
load more hold SHIFT key to load all load all

RR - Fluke 8840a Display

8840a Repair Project

User Rating: 5 / 5

Star ActiveStar ActiveStar ActiveStar ActiveStar Active
 

Previously, I stated that I did research on what type of DMM is best and the best value. I knew the 8840a was going to be the cheapest and it is widely common with hobbyists. But in my search, I noticed there wasn't many documented cases where someone had replaced the VFD with an aftermarket display. I did find one forum post where a user had implemented some LED 7 segment displays and a few LED bar modules. But he had a Fluke 45 and not a 8840/8842 where I could have just used his research. But not all is lost. The 45 has a VFD and basically is the same except for the display driver IC, D7527ACU. The 8840a uses the TMP82C79P IC and a couple of NE594D, which is a VFD driver IC.

  At this time, I know that my VFD is dead and I have checked all voltages and they are spot on, so I am now planning on hacking in some 7 segment displays in the place of the VFD.  I do have a 4 digit 1.58" Common Anode display and 3x 14mm x 40mm Common Anode displays to start playing with.  In other hackers documentation, they are using common cathode displays.  So I may order some CC displays just to make my life easier.

//zoomkat servo button toggle test 4-28-2012

#include <Servo.h>
int button = 5; //button pin, connect to ground to move servo
int press = 0;
Servo servo;
boolean toggle = true;

void setup()
{
  pinMode(button, INPUT); //arduino monitor pin state
  servo.attach(10); //pin for servo control signal
  servo.write(155);
  digitalWrite(5, HIGH); //enable pullups to make pin high
}

void loop()
{
  press = digitalRead(button);
  if (press == LOW)
  {
    if(toggle)
    {
      for(int angle = 0; angle < 155; angle += 1)
      {
       servo.write(angle);
       delay(10);
      }
      toggle = !toggle;
    }
    else
    {
      for(int angle = 180; angle >= 10; angle -= 1)
      {
       servo.write(angle);
       delay(10);
      }
      toggle = !toggle;
    }
  }
  delay(200);  //delay for debounce
}