可能的准确。电路组装好以后,首先要保证振荡器工作正常,可以用示波器看一下,正常后再调试程序,以免走弯路。我就是因为振荡器工作不正常浪费了不少时间,本来我也是用89C2051做的,但是那块试验版的振荡器工作不正常让我最终放弃了它。标准电容器的接入和断开是由单片机控制继电器完成的。2×2开关S1用来切换电容/电感测试模式,其中的一个空闲触点接到单片机的PB2端口用来指示当前的测试模式是电感还是电容,这里该触点接地是测试电感。单片机现在用的是Atmega16L,其它单片机也可以。液晶显示器是LC1602,接成4线数据方式,省几根数据线。РlР程序Р程序主要包括测频率和计算两部分。测频率我这里是用定时器T0定时250毫秒,振荡器输出接至计数器T1端口,在T0溢出中断中记录计数值,将四次溢出中断的计数值加在一起就是振荡频率。主程序按以下顺序工作:Р1.Р测量由L1C1组成的振荡器的频率F1Р2.Р控制继电器将标准电容器与C1并联,测出由L1和C1+C2组成的振荡器的频率F2Р3.Р计算L1和C1的值Р4.Р断开C2,检测AVR的PB2脚:РPB2为1则为测电容,并联Cx测量F2,由公式Cx=( F1^2 /F2^2-1)*C1求出CxРPB2为0则为测电感,串联Lx测量F2,由公式Lx=( F1^2 /F2^2-1)*L1求出LxР附录:国外网站的链接Рeter.htmРhttp://my..au/purdic/lc-meter-project.htmРstrc/lc_metr/lc_metr_2051.htmРlР5a719aee-f9b8-47ba-9e0f-ae3e304c50b8.jpg (37.44 KB)Р2007-7-26 11:05Р1860dfd3-6015-48fd-a659-8da9bc869a74.jpg (690.65 KB)Р2007-7-26 11:05