Continue to Site

Welcome to

Welcome to our site! is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

frequency meter pic led display

Not open for further replies.


Newbie level 6
Jan 23, 2003
Reaction score
Trophy points
Activity points
lc meter 16f84

This is a good LC-meter not only for hobby electronics.

The link is:
**broken link removed**

I didn't have pic16c622 and I changed the code to use pic16f877.
The pins must stay the same.

Here is my version

avr lc meter

Hello, all.

Is there any reference for C-measurement with MCU, range from 300pF to 360pF with accuracy +/-0.3pF.
I'd like to achieve the resolution of 0.2pF. Is it possible?
If possible, I prefer to use R because better accuracy than L.

Someone who is expert to L,C,R measure, pls help me.

Thanks in advance and regards.

pic lc meter

hi megamicro
this is a good job !
'The pins must stay the same' what does it mean ? to use A0..A3 and B1..B3 pins for LCD, B4 for Rly and so on ?
Could u pm the modified asm code, i'd like to use a 16F628
Ans finally did u make a nice PCB ?

lc meter

Dear Tgq,

Please inform the forum, when you modify the code!


simple lc meter

Ok pool_77
I found the original asm file
1 error removed :D
I must check each register adress because the author ignores the standard Mchip include files :?
The code can fit into a nice and cheap 16F84 which is the rough EEprom equivalent to the Eprom 16C61 :wink:

lc meter pic16f84

The code I found seems to be an old version :(
16F877 hex code is 50% longer than the 16C61 asm code I get after assembly
So please megamicro give us the original 16C622 asm code, so we can adapt it to use a 16F628
16F877 is too big and expensive for this job :wink:

lc meter atmel

tgq said:
The code I found seems to be an old version :(
16F877 hex code is 50% longer than the 16C61 asm code I get after assembly
So please megamicro give us the original 16C622 asm code, so we can adapt it to use a 16F628
16F877 is too big and expensive for this job :wink:

OK, I check all I have:

1. lcmeter_pic16c61.asm - the original asm file, but I'm not sure that
it's OK - it was from the time when this lc-meter was free and there
was a lot of bugs.

2. lcm_622.asm - the last well working version using PIC16C622.

3. lcm_877.asm - my changes of the first 16 operators for initialisation
of the registers.

2&3 are good working versions - they are big enough and cannot fit
in PIC16F84. Only the size of the program is important - there isn't
any spetial register use, adc or comparator or ...
... that means you can use any PIC with enough memory!

Regards, megamicro

lc meter 2051

tgq said:
hi megamicro
'The pins must stay the same' what does it mean ?

that means you have to use PB0...PB7 from PIC16C622 as PB0...PB7
for PIC16F877 and so and so... only change the pin numbers according
to MICROCHIP datasheets for each new micro.

It's clear for me !

lc meter based on pic16f84a

What about measuring results
Anyone tested ?


I tested some capacitors,
accurancy is better than 3% in interval up to 1uF.
The worst accurancy have C with worse D (quality).
for example: C with D=10-6 has 0,5%
and with D=10-5 has 2,5%
higher capacitors are measured with less accurancy.
I am trying some changes of tank circuit now.


lc meter pic

I have made LC meter according to cipo post. Both construction uses the same principle of measurement (LM311 oscillator with tank circuit). The only difference is tank inductance 68uH and 130uH. The capacitor has the same value practically.
I fount that error is rising with C value measured. It is about +10% at 2.2uF. It is due to the way it is measured (oscillator frequency depends on tank element losses).

lc meter pcb


there is some mistake in the upper results. Take a look at:

**broken link removed**
**broken link removed**

and you'll see what you have to have as results for this good lc-meter.

no more than 1%. The most important for this is the capacitor 1020pf.

Thay use exactly this value in the calculation and if you don't have
this or this capacitor is not stable - the error is going up.

I've made a lot meters like this one and realy the error usualy
is less than 1%!!!

delailed description is also available:

**broken link removed**

lc meter use 89c51

Dear Atmel 2000,

My experience is following:
If I change the 1020 capacitor (e.g to 1025 or 1010), I only see moving of interval of all measured values down or high but the variance (dispersion) of measured values is much higher then inaccuracy derivable from changing of 1020 cap.
I can addust e.g 0,5% error for cap. up to e.g. 1nF, and and 3% up to 1uF with percentage erros variance about 4. (I have coil with Rs=0,2ohm).
If I change Rs of coil to 1ohm, I get variance of errors about only 1,8.
I am testing plastic capacitors (MKT,MKS,polystyrene)

Which capacitors did you tested?

hex code for very accurate lc meter

In fact, as the LCM accuracy depends on the 1020 pF precision, I'm working on a combined LC-Meter with self-calibration : a separate C-meter section would measure thru another relay the 1020pF value, and then store the real capacitance in PIC memory :)
We can find 0.1% resistors, so i'm looking for a good PIC C-meter, it would ideally get the resistor precision ... We could make a LMC555-based oscillator, but I don't really know if it gives an effective excellent resolution :lol:

lc meter 89c2051

Hi, Megamicro

I compile your uploaded files but with lot of error why you did not uploaded the real one file

what the reason


lc meter pc

Hi, Fragrance

did you realy try to assemble this asm files?

There was no problem for me, that means for anyone too!!!

I'd like to help you with uploading a compete project including
the file lcm_877.asm from megamicro.

There wasn't even one error !!!

Use MPLAB and you can sleep better.

regards, atmel2000

lc meter schematics

Hi Fragrance
I use MPASM 2.30 :
- LCM_877 get out of assembly whith no error
- LCM_662 with no error
- just a little one in LCM.asm for 16C61 : comment in label RAMLOOP starting with ' instead of ;
The only thing is that LCM_662 and LCM_877 are disassembled so it is really hard to re-use these files in another project :(
And I dont know if the LCM.asm for 16C61 is bug-free ???

atmel lc meter


Last time i compile the program with mpasm 2.30 with error, ok i will test the latest upload file , by the way in my poor knowladge that if you deassemble a hex file some user define math rutine and multiplecation rutine will not desassemble is i am right?
if so how this program work fine


lc meter pic16c622

Hi, Fragrance

yes, you are right. But as megamicro said yet this project is not free now.
First original asm file is from the time when it was free but with errors.
We have the latest hex-file for one good working lc-meter. He didn't
have C61 and the hex file was disassembled only to check what
exactly must be changed in order to use F877 and that's it.
We have a lot of code&lib about lcd, math, ...
If you need something else, please you can disassemble this hex and
find what you want.

The topic was GOOD LC-METER, not lessons how to disasm hex at all.
If you need it - build one, otherwise use what we have yet and make
something different.


Not open for further replies.

Part and Inventory Search

Welcome to