The Early Microcontroller : 80C39 is a CMOS Version of 8048 the one that preceded 8031-8051. MCS48 is the set for that, MCS51 is the current set.

Here is an example project for 80C39-8748-8749 microcontroller. This code was written by me, and it works. But the documentation is not complete or may have errors.

80C39 and MCS48 based Process Controller

Process Controller code here 80C39 Code for MCS48 (editable spreadsheet online)

The circuit for these are on this page along with other circuits. This may be difficult to put together now. But the code and hardware is near compatible to 8051 uC. Now there are may types of ADC and uC.

This was supposed to have Analog in and Analog out. Some parts of the circuit may be in the 80C51 page. This has ramp-up and ramp-down settings for the Increment and Decrement buttons. This helps setting setpoint quickly. There is also debouncing for the pushbutton.

This is a a circuit from my  Power Supplies Section.  There may be some documentation errors in my circuits. If you are used to building and troubleshooting circuits then it is ok.

This circuit is derived from an application note of L296, It is a Power Switching Regulator from ST Micro. U1A is wired as a differential amplifier and U1B a High Gain Comparator. C4 and C5 are parallel for lower ESR. Equivalent series resistanc Fast switching diode used is BYW80.

Switching Battery Charger with L296

L296 is a switch mode power controller here. In this NTE327 or 2N5038 is used to boost the current output. This transistor is both high current and fast switching. U1A, LM358 measures the load current by reading the voltage across shunt R6 and compared to a current limit setting at R14 using U1B to give a load current control. R7-R8 give a voltage feedback for voltage limit.

Use MFR 1% for all Resistors, 33E means 33 ohms, 22K means 22 kilo ohms, 1M is 1 megohm. 10T tp means ten turn trimpot. “Analog Ground” and “Digital Ground” must be linked at power supply only, avoid loops, let grounds radiate from a ground plane. Unused inputs of logic and opamps pull up or down to avoid oscillations and noise.

This is an incomplete version of the power supply used for the Alertness Monitor with hourly LED Display. This circuit used a Dual Color LED. Green meant Alert and Red meant No Alert or acknowledge press.

Power Supply with Battery Backup

I can write here only in “Electronic English”. Focus on the tech not grimmer. It may be like Pascal with a touch of Acronyms, codes and circuit axioms.

The top part is a 5V regulator with 0.7 Diode boost, means 5.7 V DC. The battery was floating on this point above the zener Z4, that connection comes from outside. A protection fuse maybe needed in case Zener draws more current. The Zeners were test selected to get above 6V along with the diode.

The second supply is to drive the LED array and Relay. This second battery supply was needed to prevent the RAM from losing data and also the CMOS logic getting reset, when the relay solenoid operates. Even when the Display Now switch is pushed, the current is large and the pulse could reset digital circuit.

The battery was used very less, it worked during the power failures for short duration between mains and generator switching. This circuit is not meant for in situations when battery drains are high.

This is related to the earlier post. This was done to save battery power. The output of some equipment may be in the form of LED Annunciators In the Security Guard Monitor, an Array of 24 LEDs would show the Status of alertness along with the day, this was scrollable.

Display On Timer with 555

When the “Display Now” is pressed it triggers the Monostable Multivibrator made of a 555. The output “EN” goes high for the time duration defined by C27 and R71.

The 555 output as you know can drive more than 200mA for quite some time without much heating up. Many LEDs can be driven with the current limit resistors. I used CMOS chips to drive the LEDs, this circuit was used for the Logic only.
.
This circuit was a part of the user interface like the previous one. You could use it for voltmeters or even backlight for LCD.

Example – When you press the switch the Time of a clock can be seen in darkness for a few seconds.

This circuit is an User Interface part of a Security Alertness Monitor that i designed decades ago. The circuits are here – Digital Circuits – Part 1 The RAM and RTC part is missing, i will add later. It is without uC or Software. Only CMOS Logic.

Audio Visual User Interface with Ack

Every Hour “+V UR” Goes High for 120 Seconds. The Buzzer Sounds and a Red LED turns on. The Guard has to respond by Pushing the Switch. The Green Light Flashes and the external Flip-Flop logic brings “+V UR” Low, The Buzzer Sound Stops and Red Light Goes off..

If not pressed the Sound Stops after 120 Seconds and even the Red light goes off then. This records a Non-Alert Hour in the RAM for that Day. The Ram Stores 9 Days alertness status.

You could try porting this project into a 89C2051 for learning product and interface design.

Using this circuit on Printer Port, one could drive 256 Relays or 16K LEDs as Dot Matrix display. It can be used to drive a Large size multiplexed LED dot matrix display or Latched Relay-Solenoid-Motor-Lamp Array Drivers.

This circuit can be modified for a Static drive output or a fast changing output like a Waveform Generator. You can also make it a 16 Bit waveform generator. The frequency limited to the speed of the port or a fraction of it, depending on 8bit, 16bit or 32bit.

Now I have Some Explaining to do. Latch the U7 with a 8 Bit Data to address the device you want to talk to. So one among the 32 Output Devices can be Selected by a combination of G1-G2 of U5-U8 and U7 8 Bits, Split into Two Nibbles for Upper and Lower 16 Devices. That means 16 * 2 = 32 Devices of 1 Byte each,. 32 * 8 = 256 if my calculations are correct. Please verify.

One of the decoders U5 or U8 decode their respective nibble and output a Low on Selected device to Latch Data on the Chosen one (74HCT373). Why HCT ? Speed is good, low power and CMOS ! and works with TTL too. It Interfaced well for me on a Card with Both TTL and CMOS levels, with a Fast uC.

The 74HCT373 outputs are current amplified and isolated by darlingtons and optoisolators. Both source and sink examples shown. This circuit was not tested and documented properly. So there may be things missing. It is just a Concept design..

Printer Port 256 Relays 16K Dot Matrix – del20021

Printer Port 256 Relays 16K Dot Matrix

I will just explain part of this circuit. D9 and D10 provide a low cost -1.4 from -5 V. This is needed to reach near 0.00 for LM317 Min. setting. An LED also can be used with proper bias. Note that there is a Temperature Coefficient in ppm, see The Unusual Diode FAQ. but it may not matter upto 8 bits accuracy.

TIP2955, TIP3055 (NPN), TIP2955 (PNP) Complementary Silicon Power Transistors. It is a Darlington, that means good current gain. See Darlington transistor – Wikipedia. When current in R1 10E goes more than 50mA a voltage of 50mA X 10E = 500mV is applied across Emmiter-Base junction. So lower than 500mV no bias the tap is turned off, 500mV-700mV the tap starts turning on depending on type of transistor. The transistor is like a water Tap. So TIP2955 carries the major current burden thru the load allowing LM317 to do the decision making when to turn-on or off. It is analog control, it is not On-Off but linear-proportional. The LM317 is very cool as the burden is passed off to TIP2955 who will need a heatsink to keep going and deliver the power you want.

WorkBench Dual Power SupplyPut the filter caps appropriately. The Hum-Noise will be filtered. The cap after the regulator should be a small guy. The main filter cap after the Bridge can be as big as your cabinet or budget.

If you build it and wire it without designing a PCB, then make all wiring and connection very sound. The test of this ability you can know easily, If your project stops working after the last screw of the cabinet is tightened, Then we need to improve.

With these circuits you can make an insulation tester going upto two tera ohm, hence currents will be in pico amps, great care required in design. The rotary switches for voltages and ganged interlocked range switches must not be phenolic but industrial epoxy based molded switches.

The parts list which is not in the circuit, is listed below, the circuit is 15 years old. but you may get some idea on high resistance measurement. Use 1% MFR for all Resistors and low leakage plastic caps for low values. These instruments i used to calibrate with Victoreen Resitors and a Electrometer from Princeton Research, I faintly remember.

Theory of Operation.

The Device Under Test DUT say a transformer is placed in a Metal tray connected to the Guard SK3 terminal. The metal tray has a 3mm glass sheet on which DUT is kept. For 2 Tera ohm make sure that Humidity and Dust do not affect measurements.

Now 1000V is applied on a DUT terminal from the high voltage supply, ( in reference to Guard SK3 at earth and 0V). Then the point where the leakage is to be measured is connected to SK4 via a BNC short, scope, shielded cable. The current goes thru a shunt selected by S5 and voltage across the shunt is measured by ICL7650 a Chopper stabilized amplifier, with ultra low offset and bias. The amplified output is fed to Vref of ICL7107 which displays the Insulation Resistance. The full range is not valid in this circuit and for low values, change to a range where the reading is more number of counts. The above circuit does not include some upgrades and changes i did later using ICL7135 etc.. If i find it i will add it later.

Read More