毕业设计
题目LRC测量仪的系统设计
英文题目LRCmeasuring instrument
systemdesign
学生姓名:_
学号:___________
系别:_
专业:
班级:_________
指导老师:______职称:_____
二零年月 日
近几年来,电子行业的发展速度相当快,电子行业的公司企业数目也不断增多。这个现象带来的直接结果是电子行业方面的人才需求不断增多。所以,现在大多数高校都开设与电子类相关的专业及课程,为社会培养大量的电子行业的人才。做过电路设计的工作人员或者学生大多数使用万用表来测量一些元件参数或者电路中的电压电流。然而万用表有一定的局限性,它只能测量有限种类的元器件的参数,对于电容和电感等一些电抗元件就无能为力了。所以制作一种简便的电容电感测量仪显得尤为重要,方便电路设计人员或者高校电子类专业的学生测量电路中需要用到的电容及电感的具体值。
本次设计的思想是基于以上原因提出来的。该系统以STC89C52单片机为控制核心,搭配必要的外围电路对电阻、电容和电感参数进行测量。系统的基本原理是将电阻阻值、电容容值、电感感值的变化均转换成方波脉冲频率的变化,利用计数器测频后通过单片机做运算,最后计算出待测元件的各个参数并显示在LCD1602液晶屏幕上。系统使用按键选择被测元件类型,使用LCD1602液晶屏作为显示部分。测量时,只需将待测元件引脚放在测试仪的输入端,用按键操作需要测量的参数,便可以很快测出被测元器件的参数,简便易用。实验测试结果表明,本系统性能稳定,测量精度高。
关键词:STC89C52单片机;电阻测量;论文类型:应用型
电容测量;电感测量
ABSTRACT
Inrecent years, the electronic industry have been developing withamzings peed, and companies based on electronics are increasing,whichdirectly causesthe growing need of electronic people. So now mostuniversities have opened with the electronics and relatedprofessional courses for the students to nurture alarge number ofelectronics industy professionals. Done circuit design staff orstudents should be used multimeter to measure the paiameters of anumber of components in the circuit voltage or current.
Multimeterhas some limitations for capacitors and inductors and some reactancecomponents on the powerless. So a simele LRC meter basis isparticularly important to facilitate the circuit design staff oruniversity stduents to use in the specific capacitance and inductancevalues.
Thedesign idea is based on the above reasons put forward. The systemuses STC89C52 micro-controller for the conrtol of the core, with thenecessary external circuit resistance, capacitance and inductanceparameters which were measured. The basic principle of the system isconvert the value of the resistor, capacitance or inductance into thefrequency of square wave pulse, and use the conuter to do after theoperation through the microcontroller, and finally calculate thedevice under test and display various parameters in the 1602 LCDscreen. Use buttons to set the type of parameter, and use 1602 LCDscreen as the display part. When measured, simply put the componet inthe tester pin input, with the key operation parameters to bemeasured, and we can easily measure the parameters of the tesedcomponents, which is easy to use. Experimental results show that thesystem is stable and accurate.
Keywods: STC89C52Micro-controller; Measurement of Resistance; Measurement ofCapacitance; Measurement of Inductance
目录
绪论...............................................................12、系统设计........................................................22.1电阻测量方案.................................................22.2电容测量方案.................................................32.3电感测量方案.................................................32.4 频率参数计算的原理..........................................52.5系统方框图...................................................63、硬件电路设计....................................................73.1直流稳压电源电路的设计.......................................73.2电阻测量电路的设计...........................................73.3电容测量电路的设计...........................................83.4电感测量电路的设计...........................................93.5电阻、电容、电感显示电路的设计..............................104、软件设计.......................................................124.1程序流程图..................................................124.2 中断程序流程图.............................................144.3 频率计算流程图.............................................164.3定时器初始化函数............................................194.4测量显示流程图..............................................20结论..............................................................21致谢..............................................................22参考文献..........................................................23附件1:硬件电路图.................................................24附件2:元件清单...................................................25附件3:程序代码...................................................26
绪论
在现代化生产、学习、实验当中,往往需要对某个元器件的具体参数进行测量,在这之中万用表以其简单易用,功耗低等优点被大多数人所选择使用。然而万用表有一定的局限性,比如:不能够测量电感,而且容量稍大的电容也显得无能为力。所以制作一个简单易用的电抗元器件测量仪是很有必要的。
现在国内外有很多仪器设备公司都致力于低功耗手持式电抗元器件测量仪的研究与制作,而且精度越来越高,低功耗越来越低,体积小越来越小一直是他们不断努力的方向。该类仪器的基本工作原理是将电阻器阻值的变化量,电容器容值的变化量,电感器电感量的变化量通过一定的调理电路统统转换为电压的变化量或者频率的变化量等等,再通过高精度AD采集或者频率检测计算等方法来得到确定的数字量的值,进而确定相应元器件的具体参数。
2、系统设计
2.1电阻测量方案
方案一:利用串联分压原理的方案
I----------------1=1----------------------1=1-------------------111
图2-1串联分压电路图
根据串联电路的分压原理可知,串联电路上电压与电阻成正比关系。测量待测电阻Rx和已知电阻
R0上的电压,记为Ux和Uo
Rx 二Ux/Uo*Ro 2-1式
方案二:利用555构成单稳态的方案
图2-2 555定时器构成单稳态电路图
根据555定时器构成单稳态,产生脉冲波形,通过单片机读取高低电平得
出频率,通过公式换算得到电阻阻值。
F=l/Ln2(Rl+2Rx)C 2-2式
Rx=(l/(Ln2*f*C)*Rl)/2 2-3式
上述两种方案从对测量精度要求而言,方案一的测量精度极差,不易操作与数字化,相比较而言,方案二还是比较符合要求的,由于是通过单片机读取转化,精确度会明显的提高。故本设计选择了方案二。
2.2电容测量方案
方案一:利用串联分压原理的方案(原理图同图2-1)
通过电容换算的容抗跟已知电阻分压,通过测量电压值,再经过公式换算得到电容的值。原理同电阻测量的方案一。
方案二:利用555构成单稳态原理的方案
图2-3555定时器构成单稳态电路图
根据555定时器构成单稳态,产生脉冲波形,通过单片机读取高低电平得出频率,通过公式换算得到电容值。
F=1/(Ln2*(R1+2R2)*Cx) 式2-4
若R1=R2,得Cx=1/(3Ln2*f*R1) 式2-5
上述两种方案从对测量精度要求而言,方案一的测量精度极差,相比较而言,方案三还是比较符合要求的,由于是通过单片机读取转化,精确度会明显的提高。故本设计选择了方案二。
2.3电感测量方案
方案一:利用交流电桥法测量电感
图2-4用电桥法测电感
通过调节阻抗Z1、Z2使电桥平衡,这时电表读数为零。根据平衡条件以及
一些已知的电路参数就可以求出被测参数。
Z・Z | 1 n | =Z・Z | 2 x |
1 n | 2 x |
2-6式
电容三点式正弦波振荡电路图
路是指:LC回路中与发射极相连的两个电抗元件必须是同性质的,另外一个电抗元件必须为异性质的,而与发射极相连的两个电抗元件同为电容时的三点式电路,成为电容三点式电路。在这个电容三点式振荡电路中,CC分别采用lOOOpF、 4 5
2200pF的独石电容,其电容值远大于晶体管极间电容,可以把极间电容忽略。
f - | 1 | 1 | 小 | C C | ||
L - | 1 | ( C - | —5 -) | |||
2*LC | ||||||
-4“ 2 f 2C 2-8式 J | C + C | |||||
2-7式 | ||||||
4 | 5 |
用方案一测量电感,参数的值还可以通过联立方程求解,调节电阻值一般
只能手动,电桥的平衡判别亦难用简单电路实现。这样,电桥法不易实现自动测
量。相比较而言,方案二还是比较符合要求的,由于是通过单片机读取转化,精
确度会明显的提高。故本设计选择了方案二。
2.4频率参数计算的原理
本设计频率的计算采用单片机计数器TO,对外触发电路产生的脉冲频率的测量,再通过对测量数据的校正来完成。
单片机对频率测量的原理如下图4-3所示。
图2-6
说明:图2-6中t1时刻检测到咼电平开定时器1,开始计数;t2时刻等待检测低电平;t3时刻第二次检测到高电平时关定时器停止计数。
利用GATE=1,TR1=1,只有P2.5引脚输入高电平时,T1才允许计数,利用此,将外部输入脉冲经P2.5引脚上输入,等待高电平的到来,当检测到高电平时开定时器开始计数,然后检测低电平,当检测到低电平时已经测得脉冲的脉宽,但
我们测得是频率,故在程序中药继续检测等待下一个高电平的到来,此时关定时
器停止计数,用此计数值乘以机器的周期数(晶振频率已知),得出触发电路产
生的周期,然后再经过数据处理便得到输入信号的频率
2.5系统方框图
待 |
| 555振荡电 | 39C52单片 | LCD1602显示器' |
测 | 路* | |||
机4 |
电
阻4
待 555振荡电
测 | : --->路」 |
|
电
容4
键盘按键选
待 | 电容三点. |
|
| 择测量电路1 |
测 | 式 | |||
电 | : ---二振荡电路+J |
感4
图2-7系统方框图
3、硬件电路设计
3.1直流稳压电源电路的设计
本系统采用双电源供电,故应设计正、负两路直流稳压电源。
3.2电阻测量电路的设计
P1.5接一独立按键,当其按下时,NE555的3引脚输出方波,3脚与P1.2相接,可通过程序测出其频率,进而求出Rx的值,显示在1602液晶屏上。
Rx=(1000000/Ln2*0.2 *f)* 150 3-1式
3.3电容测量电路的设计
图3-2电容测量电路
P「6接一独立按键,当其按下时,NE555的3引脚输出方波,3脚与P「3相接,可通过程序测出其频率,进而求出Cx的值,显示在1602液晶屏上。测量电容的振荡电路与测量电阻的振荡电路完全一样。其电路图如图
f------1-----
2.3.1所示。若R56二R31=10K,则3(ln2)RCX
Cx=1000000/3Ln2*f*51pF
式3-2
电路是指:LC回路中与发射极相连的两个电抗元件必须是同性质的,另外一个电抗元件必须为异性质的,而与发射极相连的两个电抗元件同为电容时的三点式电路,成为电容三点式电路。 在这个电容三点式振荡电路中,CC分别采用 45
lOOOpF、2200pF的独石电容,其电容值远大于晶体管极间电容,可以把极间电容忽略。由于电容三点式震荡电路产生的信号较小,所以先加一级单管放大,在跟比较器将正弦波转化成方波。P「4接一独立按键,当其按下时,运放输出口输出方波,该口与P「3相接,可通过程序测出其频率,进而求出Lx的值,显示在1602液晶屏上。
r | 1 | C C | 5 | |
■■ | C = ----4 | |||
计算公式 | 2" LC | C4 +C5 | ||
则电感的感抗为: | Lx=1000000/3.14*3.14*0.1*f*f |
式3-3
3.5电阻、电容、电感显示电路的设计
图3-4显示电路
采用1602液晶显示,耗能低,显示数值范围较大。
1602液晶的介绍:
本设计使用的1602液晶为5V电压驱动,带背光,可显示两行,每
行16个字符,不能显示汉字,内置含128个字符的ASCII字符集字库,只有并行接口,无串行接口。
接口说明:
编号 | 符号 | 引脚说明 | 编号 | 符号 | 引脚说明 |
1 | vss | 电源地 | 9 | D2 | 数据口 |
2 | V„ | 电源正极 | 10 | D3 | 数据口 |
3 | VQ | 液晶显示对比度调节 | 11 | D4 | 数据口 |
4 | RS | 数据;命令选择端(HL) | 12 | 1)5 | 数据口 |
5 | RAV | 读写选择端〔H1) | 13 | D6 | 数据口 |
6 | E | 使能信号 | 1斗 | D7 | 数据口 |
7 | DO | 数据口 | 15 | BLA | 背光灯电源正极 |
8 | DI | 数据口 | 16 | BLK | 背光灯电源负极 |
STC89C52的介绍::
STC单片机的优点:
★加密性强,很难解密或破解
★超强抗干扰
★超低功耗
4、软件设计
4.1程序流程图
在本设计的模块中,模块是以单片机为核心,再通过按键控制测量的被测参
数在LCD1602上显示,程序主流程图如图4-1所示,单片机开始工作后,先设置LCD1602液晶初始化,并设置定时器工作方式,启动定时器,并开总中断,等待按键扫描,若有键按下则直接进入按键扫描子程,并显示测量参数的数值,若
没有按键按下,则一直等待并显示welcome。
主函数
voidmain()
{
led_init();
t_init();
Keyscan();
write_com(0x01);
while(1)
{
display_f(f);
switch(a)
{
case 1:R=(ulong)(5000000.0/0.6931472/f-150+0.5);display_R(R);breaK; case 2:C=(int)(100000000.0/153/0.6931472/f+0.5);display_C(C);breaK; case3:L=(int)(1000000000000.0/0.1/PI/PI/f/f+0.5);display_L(L);breaK;
}
}
}
图4T主程序流程图
4.2中断程序流程图
测量电阻电路的按键Key-R接P1.5引脚,测量电容电路的按键Key-C接P1.6引脚,测量电感电路的按键Key-L接P1.7引脚,程序开始后,进行按键扫描,若按下Key-R,延时10ms,再次进行判断P1.5引脚上的电位,确认按下电阻测量按键后给A赋值1,并返回,如果不是按下Key-R,判断是否按下Key-C,若P1.6上的电平为低电平时,延迟后并再次判断,确认按下Key-C后给A赋值2,并返回,同理,若不是按下Key-C键,则再判断是否按下Key-L,检测P1.7上的电平后延时并再次判断,若是按下Key-L键,则给A赋值3,并返回。
图4-2按键扫描流程图键盘检测函数(确定被测元件为电阻、电容或电感)
voidKeyscan()
{
if(
)
{
delayms(lO);
if(Key_R==0)
a=1;
}
Else
if(Key_C==0)
{
delayms(lO);
if(Key_C==0)
a=2;
}
Else
if(Key_L==O)
{
delayms(lO);
if(Key_L==0)
a=3;
}
Else
}
while(Key_R&&Key_C&&Key_L); //按键按下时退出死循环
4.3频率计算流程图
本设计频率的计算采用单片机外部中断TO,对外触发电路产生的脉冲频率 的测量,再通过对测量数据的校正来完成,利用GATE=1,TR1=1,只有P3.2引脚 输入高电平时,T1才允许计数,利用此,将外部输入脉冲经P3.2引脚上输入, 等待高电平的到来,当检测到高电平时开定时器开始计数,然后检测低电平,当 检测到低电平时已经测得脉冲的脉宽,但我们测得是频率,故在程序中药继续检 测等待下一个高电平的到来,此时关定时器停止计数,用此计数值乘以机器的周 期数(晶振频率已知),得出触发电路产生的周期,然后再经过数据处理便得到输 入信号的频率。程序流程图如图4-3所示。,
| N N N |
图4-3频率计算程序流程图
关计数器
计算频率值
结束
中断函数
voidT0_count() interrupt 1
{
switch(a)
{
casel:while(R_out);
while(!R_out);
TH0=0;
TL0=0;while(R_out); while(!R_out); thO=THO;
tlO=TLO;
TR0=0;
breaK;
case2:while(C_out);
while(!C_out);
TH0=0;
TL0=0;while(C_out); while(!C_out);
thO=THO;
tlO=TLO;
TR0=0;breaK;
case3:while(L_out); while(!L_out); TH0=0;
TL0=0;while(L_out); while(!L_out); thO=THO; tlO=TLO; TR0=0;breaK;
}
f=1000000.0/1.085069/(th0*256+tl0)+0.5;
4.3定时器初始化函数
定时器o初始化函数
开始设置定时器TM0D=0x01;设置定时器0工作方式lTH0=0;并装初值
TL0=0;EA=l;然后开总中断ET0=l;开定时器0中断,最后启动定时器0。
图4-5
定时器0初始化函数
voidt_init()
{
TM0D=0x01; | //设置定时器0工作方式1 //装初值 |
TL0=0;
EA=1; | //开总中断 |
}
4.4测量显示流程图
I
结论
毕业论文是一次非常好的将理论与实际相结合的机会,通过对电阻、电容、电感测试仪的课题设计,检查了我的知识掌握能力,增强了我解决实际问题的能力,同时也提高我查阅文献资料、设计规范以及电脑制图等其他专业能力水平。
本设计的硬件电路图简单,可降低生产成本。采用单片机可提高系统的可靠性和稳定性,缩小系统的体积,调试和维护方便,而且以STC89C-52单片机最小系统为核心的设计能够满足了整个系统的工作需求,555振荡器实现了被测电阻和被测电容参数的频率化,电容三点式振荡电路实现了被测电感参数的频率化,被测频率通过CD4052模拟开关送入单片机计数,再经过显示电路显示被测参数的测量值,软件用C语言编程,根据具体情况控制启动被测参数的相应程序,能灵活控制被测参数的档位切换。经过测试,系统各个模块都能正常共组,成功地达到了设计的硬件要求。
系统的软件部分是系统实现各种工作状态的关键。通过结合硬件电路,在Keil51的平台上,使用C语言与汇编语言混合编程编写了系统应用程序,使程序能够正常运行,实现了设计的要求。
总之,整个系统的工作正常,完成了设计任务的全部要求。
虽然本系统完成了设计设计要求,但其中仍然存在着很多需要改进的地方。作品实测中,测量电容值有一定的误差,而且C值越大时误差越大,该误差则是来源于振荡电路产生的频率和单片机程序上的误差。希望在之后的设计之中能够得到进一步解决。在人机交换方面,显示部分可以改用显示效果更好的液晶屏显示,使系统工作状态和数据显示更加清晰、更加人性化。
致谢
这次毕业设计是我这大学期间干的最有意义的事之一。从最初的选题,开题到写论文直到完成论文。其间,查找资料,老师指导,与同学交流,反复修改论文每一个过程都是对自己能力的一次检验和充实。通过这次实践,我了解了简易电阻、电容和电感测试仪的用途及工作原理,熟悉了其的设计步骤,锻炼了设计实践能力,培养了自己独立设计能力。这次毕业设计收获很多,比如学会了查找相关资料相关标准,分析数据,提高了自己的思考问题能力。这么一次锻炼可以学到书本里许多学不到的知识,坚韧、独立、思考等。但是毕业设计也暴露出自己专业基础的很多不足之处。比如缺乏综合应用专业知识的能力,对材料的不了解等等。由于能力有限,未能做到准确测量电阻、电容和电感,测量范围较小,感到有点儿遗憾。这次实践是对自己大学所学专业的一次大检阅,使我明白自己知识还很不全面。
本设计是在老师的精心指导和鼓励下完成的。在此,谨向老师和帮助我的同学表示衷心的感谢!
此外,我还要感谢在我的论文中所有被援引过的文献的作者们,他们是我的知识之源!
最后,再次向所有给予我帮助和鼓励的同学和老师致以最诚挚的谢意!
参考文献
[1]申忠如,申淼,谭亚丽.MCS-51单片机原理及系统设计.西安交通大学出版 社,2008年3月第1版
[2]申忠如,郭福田,丁晖.现代测试技术与系统设计.西安:西安交通大学出版社,2006.2.
[3]付家才.单片机控制工程实践技术[M].北京化学工业出版社,2004
[4]张毅刚.MCS-51单片机应用系统•哈尔滨工业大学出版社,1997
[5]夏继强.单片机实验与实践教程.北京航空航天大学出版社,2001
[6]肖洪兵.跟我学用单片机.北京航空航天大学出版社,2002
[7]付晓光•单片机原理与使用技术•清华大学出版社,ISBN7-81082- 169- 5TP [8] 李桂安.电子技术实验及课程设计•东南大学出版社,2008
[9]J.C.Wh it aker.Thermal Design of Elek tronic Equipme nt ,CRC PressLLC.Lond on2001
[10]W.Janke.Zjawiska t ermiznew elemen tachi.ukladach polprzewodnik owych.WNT.Warszawa.1992
附件1:硬件电路图
D
附件2:元件清单
元件 | 型号 | 数量 |
单片机 | STC89C52 | 1 |
排阻 | A103J | 1 |
晶振 | 12M | 1 |
液晶显示器 | LCD1602 | 1 |
555定时器 | NE555 | 2 |
按键 | SJ | 4 |
三极管 | S9018 | 3 |
运放 | NE5532 | 1 |
电阻 | 1K 2K 300 10K 51 40 | 若干 |
电解电容 | 50V 47uF | 2 |
瓷片电容 | 103 0.01uF 0.1uF | 若干 |
附件3程序代码
电阻、电容、电感测量值的显示//初始化
#includevreg52.h>
#defineuint unsigned int
#defineuchar unsigned char
#defineulong unsigned long
#define PI3.1415926 uchar code
table1[8]="Welcome!
uchartable2[16]="f(Hz)=";
uchartable3[16]="R(Ohm)=";
uchartable4[16]="C(pF)=";
uchartable5[16]="L(uH)=";
ucharnum,a=O,thO,tlO;
uintC,L;
ulongf,R; //液晶使能端
//液晶数据命令选择
sbit lcden=P2A4; sbit lcdrs=P2A5; sbit Key_R=P1A5; sbit Key_C=P1A6; | 端 //测量电阻按键 |
sbitKey_L=P1A7;
//测量电阻信号输
sbit R_out=P1A2; sbit C_out=P1A3; sbit L_out=P1A4; | 入 |
//声明子函数
//延时函数
voidwrite_com(uchar com); //液晶写命令函数voidwrite_data(uchar date); //液晶写数据函数voidled_init(); //液晶初始化函数
voiddelayms(uint //测量电感信号输
xms);入
voidt_init(); //定时器0初始化函数
voidKeyscan(); //键盘检测函数(确定被测元件为电阻、电容
或电感)
voiddisplay_f(ulong f); //频率显示函数
voiddisplay_R(ulong R); //电阻显示函数
voiddisplay_C(uint C); //电容显示函数
voiddisplay_L(uint L); //电感显示函数
//主函数
voidmain()
{
led_init();
t_init();
Keyscan();
write_com(0x01);
while(l)
{
display_f(f);
switch(a)
{
case1:R=(ulong)(5000000.0/0.6931472/f-150+0.5);display_R(R);breaK; case2:C=(int)(100000000.0/153/0.6931472/f+0.5);display_C(C);breaK; case3:L=(int)(1000000000000.0/0.1/PI/PI/f/f+0.5);display_L(L);breaK; }
}
}
//中断函数
voidT0_count() interrupt 1
{
switch(a)
{
case1:while(R_out);
while(!R_out);
THO=O;
TLO=O;
while(R_out);
while(!R_out);
th0=TH0;
tl0=TL0;
TR0=0;
breaK;
case2:while(C_out);
while(!C_out);
TH0=0;
TL0=0;
while(C_out);
while(!C_out);
thO=THO;
tlO=TLO;
TR0=0;
breaK;
case3:while(L_out);
while(!L_out);
TH0=0;
TL0=0;
while(L_out);while(!L_out);
thO=THO;
tlO=TLO;
TR0=0;breaK;
}f=1000000.0/1.085069/(th0*256+tl0)+0.5;
}
//延迟函数
voiddelayms(uint xms)
{
uinti,j;
for(i=xms;i>0;i--)
for(j=110;j>0;j--);
}
//液晶写命令函数
voidwrite_com(uchar com)
{
lcdrs=0;
P0=com;
delayms(5);
lcden=1;
delayms(5);
lcden=0;
}
//液晶写数据函数
voidwrite_data(uchar date)
{
lcdrs=1;
P0=date;
delayms(5);
lcden=1;
delayms(5);
lcden=0;
}
//液晶初始化函数
voidled_init()
{
lcden=0;
write_com(0x38);//设置16X2显示,5X7点阵,8位数据接口 write_com(0x0c);//设置开显示,不显示光标
write_com(0x06);//写一个字符后地址指针加1
write_com(0x01);//显示清0,数据指针清0
write_com(0x80);//显示欢迎界面
for(num=0;numv8;num++)
{
write_data(table1[num]);delayms(5);
}
}
//定时器0初始化函数
voidt_init()
{
TH0=0; | //装初值 | TM0D=0x01; | //设置定时器0工作方式1 |
TL0=0;
EA=1; | //开总中断 |
}
//键盘检测函数(确定被测元件为电阻、电容或电感)
voidKeyscan()
{
if(
)
{
delayms(10);
if(Key_R==0)
a=1;
}
Else
if(Key_C==0)
{
delayms(10);
if(Key_C==0)
a=2;
}
Else
if(Key_L==O)
{
delayms(lO);
if(Key_L==0)
a=3;
}
Else
}
while(Key_R&&Key_C&&Key_L); //按键按下时退出死循环
//频率显示函数
void display_f(ulong f)
{
uchar count=0;
ulong f0;
f0=f;
while(f)
{
f=f/10;
count++;
}
for(num=5+count;num>5;num--)
{
table2[num]=f0%10+48;
fO=fO/1O;
}
write_com(0x80);
for(num=0;numv6+count;num++)
{
write_data(table2[num]);
delayms(5);
}
}
//电阻显示函数
void display_R(ulong R)
{
ucharcount=0;
ulongR0;
R0=R;
while(R)
{
R=R/10;
count++;
}for(num=6+count;num>6;num--)
{
table3[num]=R0%10+48;
R0=R0/10;
}
write_com(0x80+0x40);
for(num=0;numv7+count;num++){
write_data(table3[num]);delayms(5);
}
}
//电容显示函数
voiddisplay_C(uint C)
{
ucharcount=0;
uintC0;
C0=C;
while(C)
{
C=C/10;
count++;
}for(num=5+count;num>5;num--)
{
table4[num]=C0%10+48;
C0=C0/10;
}
write_com(0x80+0x40);
for(num=0;numv6+count;num++)
{
write_data(table4[num]);delayms(5);
}
}
//电感显示函数
voiddisplay_L(uint L)
{
ucharcount=0;
uintL0;
L0=L;
while(L)
{
L=L/10;
count++;
}for(num=5+count;num>5;num--)
{
table5[num]=L0%10+48;
L0=L0/10;
}
write_com(0x80+0x40);
for(num=0;numv6+count;num++)
{
write_data(table5[num]);delayms(5);
}
}
因篇幅问题不能全部显示,请点此查看更多更全内容