毕业设计(论文)-基于单片机的工频电压(电流)表的设计_第1页
毕业设计(论文)-基于单片机的工频电压(电流)表的设计_第2页
毕业设计(论文)-基于单片机的工频电压(电流)表的设计_第3页
毕业设计(论文)-基于单片机的工频电压(电流)表的设计_第4页
毕业设计(论文)-基于单片机的工频电压(电流)表的设计_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

检测系统实习报告题目: 基于单片机的工频电压(电流)表的设计 姓 名: 院(系): 专业: 指导教师: 职称: 评 阅 人: 职称: 年 月摘 要在实际中,有效值是应用最广泛的参数,电压表的读数除特殊情况外,几乎都是按正弦波有效值进行定度的。有效值获得广泛应用的原因,一方面是由于它直接反映出交流信号能量的大小,这对于研究功率、噪声、失真度、频谱纯度、能量转换等是十分重要的;另一方面,它具有十分简单的叠加性质,计算起来极为方便。本文详细介绍了一个数字工频电压、电流表设计,以AT89S52单片机为控制核心,由电压、电流传感器模块,真有效值测量模块,信号调理模块,AD采集模块及控制、显示模块等构成。系统采用电压、电流互感器对输入信号进行降压处理,经AD736转换得到原信号的真有效值,由TLC549转换为数字量后送入单片机内进行简要的数据处理并将结果通过LCD实时显示,达到了较好的性能指标。关键词:工频数字电压(电流)表 真有效值 AD736 TLC549 AT89S52AbstractIn practice, RMS is the most widely used parameters. Except in special circumstances,voltage meter readings almost all carried out by the RMS of sine wave . The reasons of RMS is widely available, on the one hand, because it directly reflects the size of the exchange of signal energy, which the study of power, noise, distortion, spectrum purity, energy conversion, such as it is very important; On the other hand, it has a very simple superposition of the nature of the calculation will be extremely convenient. The design of single-chip Atmel Corporation AT89S52 as control core, by the current sensor module, True RMS measurement modules, signal conditioning modules, AD acquisition and control module, display module. System uses a current sensor circuit for step-down of the input signal processing, has been converted by the original AD736 True RMS signal by the TLC549 convert into single-chip digital conducted after the brief and the results of data processing in real time through the LCD display, achieve a better performance.Keyword: Digital voltage(current) meter True RMS AD736 TLC549 AT89S5226目 录第一章 绪论11.1 选题背景及意义11.2 系统设计任务1第二章 系统总体设计22.1 方案论证与比较22.1.1 电压、电流变换部分22.1.2 有效值测量部分22.2 系统总体设计2第三章 硬件设计43.1 传感器电路设计43.1.1 电压互感器43.1.2 电流互感器43.2 真有效值转换电路设计53.2.1 电压、电流切换电路53.2.2 真有效值测量电路63.3 信号调理电路设计73.4 A/D转换电路设计73.5 单片机及显示电路设计9第四章 软件设计104.1 LCD1602液晶显示程序104.2 A/D转换程序104.3 主程序设计12第五章 系统调试及误差分析135.1 系统调试及测试结果135.1.1 AD736测试结果135.1.2 OP07测试结果135.1.3 TLC549测试结果135.1.4 工频电压测量精度145.1.5 工频电流测量精度145.2 误差分析145.3 改进方法15结束语16致 谢17参考文献18附录19附录一 完整电路图19附录二 程序清单20第一章 绪论1.1 选题背景及意义 在日常的生产、生活和科研中,工频电无处不在,所谓工频就是电力供电系统交流电的频率,我国国家规定工频为50赫兹,即周期为0.02秒,英、美等国规定的工频为60赫兹。因此,对工频电的测量也是一个应用广泛的实际问题。传统的测量仪器在使用时需要预先估计待测值的测量范围,多数情况下都要从较大量程档位逐次向小量程档位切换,增加了操作的复杂性,且易发生误操作损坏仪器。 近年来随着计算机在社会领域的渗透,单片机的应用正在不断地走向深入,同时带动传统控制日新月异更新。在实时监测和自动控制的单片机应用系统中,单片机往往作为一个核心部件来使用。电子计算机的飞跃进步,单片机的普及与推广,为数字多用表智能化做出了贡献。作为重要的测量工具,工频有效值多用表的发展可以说见证了现代工业的发展和科技进步。从传统的模拟多用表,到现在精确度和灵敏度越来越高的数字仪表,多用表的发展可谓是日新月异。目前的工频有效值多用表的设计大概可以分为以下几类: (1)基于单片机的数字工频有效值多用表,这类仪表中,最有代表性的是89C52系列的。由于8位机在价格和性能方面的优点,这类仪表可以说是越来越成熟,并且能根据不同的场合选用不同的核心芯片来满足实际的要求。 (2)将传统测量方法和现代数字化测量方法有机结合起来,能适用于工频交流电特征,同时也能适用于非工频电参数测量,以提高通用性。在这类系统中,由单片机实现测量控制、数据分析处理、显示和量程自动转化等功能;由CPLD器件和高速A/D芯片组成双通道高速同步数据采集电路,由锁相倍频电路实现工频周期内均匀等样间隔。1.2 系统设计任务题目:基于单片机的工频电压(电流)表的设计1. 设计任务:(1)基本任务(必做):了解工频电压有效值的检测原理,设计及制作电路,实现对50Hz,220V交流电压有效值的检测及显示;(2)扩展部分(选做):实现对50Hz,220V交流电流有效值的检测及显示。2. 性能指标:误差:5%第二章 系统总体设计2.1 方案论证与比较2.1.1 电压、电流变换部分由于系统测量的是220V交流电有效值以及05A工频电流有效值,需将大电压、大电流变换为小电压、电流后才能进行测量。变换电路有以下两种方案:方案一:采用串联电阻分压,该方法精度不高,输入输出无隔离,电阻损耗的功率较大。方案二:采用电压互感器,电压互感器利用的是电磁感应的原理,转换精度高,输入输出处于隔离状态,控制电压比容易。经上述比较,方案二明显优于方案一,故本文选用方案二,采用电压互感器作为电压变换电路。2.1.2 有效值测量部分测量有效值有三种方案:方案一:采用二极管整流电路,再通过峰值检波电路测得峰值,然后根据波形因数求得相应的有效值。方案二:利用单片机控制A/D对一个周期内的信号进行连续多点采样,然后在软件中根据有效值计算公式,利用傅里叶变换等算法积分求平均得到有效值。方案三:采用专用有效值检测芯片如AD736直接将交流信号转换直流有效值信号。方案一硬件电路较复杂,且能测得的波形有限,对不同的波形还需根据其波形因数采取不同的换算关系。方案二软件算法过于复杂,编程难度较大,而方案三软硬件都较简单,故设计中选用方案三。2.2 系统总体设计系统利用电压/电流互感器和I/V 变换电路将工频电压/电流转换为弱电压。由模拟开关选择电压或者电流通道,由此得到的仍然是交流信号,然后进行有效值转换,即可得直流信号。由于信号幅值偏小,经过放大电路后,进行A/D转换,所得数字信号送入单片机进行数据处理,然后显示。系统总体框图如图2-1所示。单片机信号调理显示有效值转换模拟开关电压互感器电压互感器按键图2-1 系统总框图第三章 硬件设计3.1 传感器电路设计3.1.1 电压互感器电压传感器电路如图3-1所示,图中T1为电流型电压互感器TV19。TV19匝数比为1000:1000,输入电流0-5mA,非线性度0.1%。电压互感器工作原理为:不同的输入电压通过限流电阻,使一次侧流过不同的电流,二次侧得到一个与一次相同的电流。经运放或电阻直接取样,得到不同的输出电压,采用运放取样精度更高。图中运算放大器与电阻构成 I-U 转换电路,由于运算放大器的输入阻抗非常高,可以认为二次电流I2全部流入反馈电阻R2。同时运算放大器的增益很高,因此,根据U = IR得电流传感器电路的输出端电压为U0 = I2*R2。D1、D2为限幅二极管,在过载的情况下可以有效的保护后级运放不被损坏。C为相位补偿电容,可以抑制高频域的突起现象。图3-1 电压互感器电路运放输出电压和互感器输入电压关系为:U0 = (Ui/R1*R2)。由于输入电流5mA,选择输入限流电阻R1 = 47K,当输入电压为220V时,电流I = 220/47K = 4.68mA,由此求得的电阻功率P = U*I = 1.03W,故R1选择功率为2W的碳膜电阻。考虑到后级AD736输入电压有效值200mV,故选择取样电阻R2 = 40。由于电压互感器次级有线圈,运放选用高输入阻抗运放TL082。3.1.2 电流互感器电流传感器电路如图3-2所示,图中T2为电流互感器TA12-200。TA12-200性能参数如下:变比2000:1,输入电流0 5A,输出电流0 2.5mA,非线性度 0.2%,相移 5。其工作原理为:次级电流将初级电流衰减了2000倍,得到0 2.5mA的小电流,再通过电阻或运放取样得到电压信号。运放工作原理同电压互感器,输出电压U0 = I*R3。图3-2 电流互感器电路考虑到后级AD736的输入电压 200mV,选择取样电阻R3 = 100,可求得能够测量的初级电流为0 4A。3.2 真有效值转换电路设计3.2.1 电压、电流切换电路由于系统要求同时对电压、电流进行测量,故需对电压互感器和电流互感器的信号进行通道选择和切换。本设计采用模拟开关CD4053实现通道切换,即在电压、电流互感器后设置一CD4053,通过单片机输出控制信号来控制通道切换,选择某路信号进行有效值转换,应用电路如图3-3所示。CD4053是三路二选一模拟开关,可由三位控制位分别选择三路输出,其真值表如表3-1所示。本设计中只用了一路,单片机P0.3口与A相连,由控制位A选择输出。表3-1 CD4053真值表Input StatesOn ChannelsENABC0000X0,Y0,Z00001X0,Y0,Z10010X0,Y1,Z00011X0,Y1,Z10100X1,Y0,Z00101X1,Y0,Z10110X1,Y1,Z00111X1,Y1,Z11*NONE图3-3 模拟开关与真有效值转换电路3.2.2 真有效值测量电路系统的核心是测量交流电压、电流的有效值,因此有效值测量的精度将直接影响系统最终的精度。有效值测量集成电路视其测量范围和精度有多种规格可选,较通用的有Analog公司的AD536、AD636、AD736及AD737等。考虑到成本等因素,系统选用的是AD736,应用电路如图3-3所示。该器件是按有效值隐含运算而设计,能计算任意复杂波形的高精度真有效值-直流转换器件,其精度优于0.3%,波峰因素 5,相对稳定时间快,是当前集成真有效值转换器性能较好的一种。AD736有效值测量原理如下:一个交变信号的有效值定义为 (1)这里,为信号的有效值,T为测量时间,是一个时间的函数,但不一定是周期性的。对等式两边进行平方得: (2)右边的积分项可以用一个平均来近似 (3)这样式(2)可以简化为: (4)等式两边除以得: (5)这个表达式就是测量一个信号真实有效值的基础。AD736也是采用的这一原理。图中CC为低阻抗输入端耦合电容一般取值为1020uF;CF为输出端滤波电容一般取10uF;CAV为平均电容,它是AD736的关键外围元件,用于进行平均值运算。其大小将直接影响到有效值的测量精度,尤其在低频时更为重要。多数情况下可选33uF。3.3 信号调理电路设计前级AD736的输出信号最大幅值为200mV,后级TLC549的分辨率为5V/256即19.5mV,且具有0.5LSB的误差,所以要想达到题目要求的测量误差5%,就需要把AD736的输出信号放大到400mV以上才行。由于AD的输入电压越大,转换精度越高,考虑到TLC549参考电压为+5V,且输入工频电压具有15%的误差,采用同相放大电路,放大倍数设置为21倍。应用电路如图3-4所示,由OP07、R1、R2组成同向放大器,放大倍数A = 1 + R2/R1 = 21,对输入信号进行21倍的同向放大以保证系统的测量精度要求。图3-4 信号调理电路3.4 A/D转换电路设计TLC549是美国德州仪器公司生产的8位串行A/D转换器芯片,可与通用微处理器、控制器通过CLK、CS、DATA OUT三条口线进行串行接口。具有4MHz片内系统时钟和软、硬件控制电路,转换时间最长17s, TLC549为40 000次/S。总失调误差最大为0.5LSB,典型功耗值为6mW。采用差分参考电压高阻输入,抗干扰,可按比例量程校准转换范围,VREF-接地,VREF+VREF- 1V,可用于较小信号的采样。其应用电路如图3-5所示,CS、DO、CLK分别与AT89S52单片机的P0.0、P0.1、P0.2口相接。图3-5 A/D转换电路 TLC549均有片内系统时钟,该时钟与I/O CLOCK是独立工作的,无须特殊的速度或相位匹配。其工作时序如图3-6所示。图3-6 TLC549操作时序一组通常的控制时序为: (1)将CS置低。内部电路在测得CS下降沿后,再等待两个内部时钟上升沿和一个下降沿后,然后确认这一变化,最后自动将前一次转换结果的最高位(D7)位输出到DATA OUT端上。(2)前四个I/O CLOCK周期的下降沿依次移出第2、3、4和第5个位(D6、D5、D4、D3),片上采样保持电路在第4个I/O CLOCK下降沿开始采样模拟输入。(3)接下来的3个I/O CLOCK周期的下降沿移出第6、7、8(D2、D1、D0)个转换位。 (4)最后,片上采样保持电路在第8个I/O CLOCK周期的下降沿将移出第6、7、8(D2、D1、D0)个转换位。保持功能将持续4个内部时钟周期,然后开始进行32个内部时钟周期的A/D转换。第8个I/O CLOCK后,CS必须为高,或I/O CLOCK保持低电平,这种状态需要维持36个内部系统时钟周期以等待保持和转换工作的完成。如果CS为低时I/O CLOCK上出现一个有效干扰脉冲,则微处理器/控制器将与器件的I/O时序失去同步;若CS为高时出现一次有效低电平,则将使引脚重新初始化,从而脱离原转换过程。3.5 单片机及显示电路设计系统采用AT89S52单片机作为主控制器,LCD1602液晶显示电压和电流有效值。AT89S52具有功能强、体积小、成本低、功耗小等特点,它可单独地完成现代工业控制所要求的智能化控制功能,能在软件的控制下准确、迅速、高效地完成程序设计者事先规定的任务。系统显示采用常用的字16字X2行的字符型液晶模块,其微功耗、体积小、显示内容丰富、超薄轻巧等诸多优点,使得在各类仪表和低功耗系统中得到广泛的应用。与数码管相比该模块还有位数多、显示内容丰富、程序简单等优势。应用接口电路如图3-7所示,包括单片机、复位电路、晶振电路、LCD1602。单片机P2.0P2.2口作为LCD的控制口,P1口为LCD的并行数据口,AT89S52对TLC549转换后的数据进行运算处理后通过LCD实时显示出来。图3-7 单片机与显示电路第四章 软件设计4.1 LCD1602液晶显示程序LCD1602是一种用点阵图形来显示字符的液晶显示器,其最多可以显示2行,每行16个字符。模块内部自带字符发生存储器(CGROM),字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是(41H),显示时模块把代码41H发给液晶模块,我们就能在液晶上看到字母“A”1602液晶模块内部的控制器共有11条控制指令,丰富的指令可以完成液晶的时序控制、工作方式式设置和数据显示等。向LCD写指令时,将RS端选中为指令寄存器,R/W选中为写模式,P2.2脚发出高低电平的跳变,即可将指令码通过P1口送给LCD。写数据时,只需将RS端改为数据寄存器即可。其操作时序如图4-1所示。图4-1 LCD1602操作时序4.2 A/D转换程序TLC549是8位串行AD,与单片机只有三个接口:CS、CLK、DO。CS是片选信号,CLK是数据操作时钟,DO是串行数据输出口。程序流程图如图4-2所示。NY结束选中TLC549,CS置低CS置高是第8位?初始化,CS为高,CLK为低,移位计数位01.4us后,置CLK为高读DO,置CLK为低图4-2 AD转换流程图A/D转换,TLC549操作子程序如下所示:unsigned char TLC549_ADC()uchar i;uchar ad_data;CS=1;CLK=0;CS=0;_nop_();_nop_();for(i=0;i8;i+)ad_data0;i-) _nop_();return(ad_data);4.3 主程序设计系统上电复位后,从主程序开始执行。主程序需将A/D转换得到的数据进行运算处理,转换位十进制数,并送到LCD显示。程序中为提高测量精度,对A/D采样得到的数据采取均值滤波的算法,即求多次采样数据的平均值。程序中,还应根据实际测量结果的误差,在软件中进行补偿。主程序流程图如图4-3所示。开始显示电压求平均值求平均值AD转换AD转换电流档电压档SEL=0?初始化YN图4-3 主程序流程图第五章 系统调试及误差分析5.1 系统调试及测试结果在系统整体调试时,若调试不成功,由于整体焊接已经完成,很难检查到底哪部分有错误。为此,我们采用了边焊接边调试的方法,即将系统分成若干模块,每个模块完成后就进行测试验证,最后再进行系统联调。调试过程中,用到的仪器设备如下:直流稳压电源、函数信号发生器、示波器、万用表等。5.1.1 AD736测试结果在本设计中真有效值转换芯片AD736是系统的核心,其精度将直接影响系统整体测量精度。为验证其精度,对AD736模块进行实验测试,测试结果如表5-1所示。表 5-1 AD736测试结果输入电压有效值(mV)103050100120150180200输出电压有效值(mV)9.8130.0550.09100.50120.94150.01180.98201.3平均误差0.59%5.1.2 OP07测试结果OP07构成了后级同相放大电路,其理论设计放大倍数为 A = 21。实际测试结果如表5-2所示。表5-2 OP07测试结果输入直流电压(mV)5080100130150180200输出直流电压(V)1.051.672.092.723.153.774.18平均放大倍数20.935.1.3 TLC549测试结果A/D转换精度关系到测得电压值精度,TLC549是8位串行A/D,参考电压为+5V,其分辨率F = 5/256 = 19mV。测试结果如表5-3所示。表5-3 TLC549测试结果输入直流电压(V)0.000.401.662.563.154.104.574.90测得电压值(V)0.010.411.642.543.134.094.594.93平均误差1.2%5.1.4 工频电压测量精度系统所有模块焊接完成后,就可以进行联调,由于工频电网电压存在15%的误差,在不同时间段测试结果如表5-4所示。 采用3位半万用表测得值作为标准值。表5-4 电压测量结果万用表测得值(V)215217219221216217系统测得值(V)216218218223217219平均误差0.46%5.1.5 工频电流测量精度电流测量时,选用功率为300W左右的电热杯作负载,FLUKE钳形电流表测得值作为标准值。测试结果如表5-5所示。表5-5 电流测量结果钳形表测得值(A)1.501.551.541.561.571.53系统测得值(A)1.491.531.541.551.561.54平均误差0.44%5.2 误差分析从测试结果可知,电压测量误差为,电流测量误差为,小于题目要求的5%,分析误差来源,主要有以下原因:1. 电压互感器、电流互感器存在非线性误差。2. 电压互感器输入限流电阻R1工作时功率达到1W,发热量较大,致使其温度升高电阻变小,而运放采样输出电压Uv = (Ui/R1)*R2,从而是输出电压变高,测得电压有效值变大。3. AD736转换误差及OP07放大电路误差。4. TLC549参考电压波动会引起AD转换误差,以及分辨率有限和0.5LSB误差。5. 电路板为手工焊接,电磁兼容性考虑不周和外界的电磁干扰。5.3 改进方法本设计虽然完成了题目要求的功能与性能指标,但仍有许多地方可以改进。例如:输入的工频电压中存在丰富的高频谐波分量,为达到更高的精度可考虑在电压互感器后设置一低通滤波器,保留50HZ基频信号,滤除高频谐波分量;由于电流测量范围为05A,当负载电流较小时,为保证较高的测量精度,可在电流互感器后设置一程控放大电路以切换量程,提高小电流的测量精度。结束语经过20天得团结协作,我们圆满完成了此次实习任务,作品达到了题目要求的各项性能指标。本次实习是为毕业设计做好准备、打好基础,通过这次实习,我们熟悉了一个课题或项目的完成过程,从查找资料,确定方案,设计电路,软件编写,焊接电路,系统调试到最后的报告撰写,每一个过程我们都学到了很多,收获了很多,理论设计和动手实践能力得到了很大提升。在实习过程我们小组分工明确,既有自己独立完成的模块又紧密配合,因此 得以顺利完成课题。实习成果不是单一知识的结晶,实习遇到了好多难题,学过的一些知识点有 所遗忘,我们完成课题的同时也巩固了理论知识。通过实习理论联系实际,以前一些不甚理解的理论也变得容易理解了。与此同时我们也学到了一些宝贵的经验教训,例如:这次实习的课题是工频电压表的设计,由于事前对220V电压重视不够,在电路测试阶段不小心将工频电压用表笔短接,导致电路板部分模块烧坏,不得不重新焊接;再有,学电磁兼容课时布线的要求都很了解,但在本次实习时却没有用上,电路走线不够规范,以致模块之间相互干扰,最后不得以把电路分在两块板上。这些让我们明白了手工焊接硬件电路最后的效果可能会理论设计有较大区别,需要细致调试。我们想有了这些教训,以后我们小组都不会再犯类似错误。这次做实习的经验也会使我们终身受益,我们感受到做论文是要真真正正用心去做的一件事情,是真正的自己研习和研究的过程。希望这次的经验能让我们在往后学习中驱策我们继续前进。 致 谢时光匆匆如流水,转眼二十天的暑期实习即将结束,实习论文的的完成也随之进入了尾声。从开始进入设计到论文的顺利完成,一直都离不开老师、同学给我们小组热情的帮助,在这里请接受我们诚挚的谢意!在本次实习设计过程中,XXX教授对本次实习课题从构思、资料收集到最后报告撰写的各个环节给予细心指引与教导,使我们对工频电压表的设计有了深刻的认识,在此表示衷心感谢。X老师严谨的治学态度、丰富渊博的知识、 积极进取的科研精神以及诲人不倦的师者风范是我们终生学习的楷模。此外,要向带国赛小组仍要在百忙之中抽时间对本次实习进行检查、评审的XXX老师表示感谢!同时,也要感谢XXX、XXX老师,他们在本次实习的硬件调试阶段给出了许多宝贵意见和建议。老师们高深精湛的造诣与严谨求实的治学精神将永远激励着我们。最后感谢XX学院给我们提供充足的实习经费和这么好的硬件实习环境,使得本次实习得以顺利结束,并极大提高了我们的理论和动手能力,为以后的毕业论文设计打下了坚实的基础。参考文献1 刘春生,真有效值AC/DC转换器AD736及其在RMS仪表电路中的应用,国外电子元器件,2001,9。2 熊光宇,真RMS-DC变换器AD736/AD737,1995,6。3 雷葆华,梁金海,刘俊,数字式自动量程工频有效值多用表,应用科技,2000,1。4 梁琴,AD637高精度真有效值数字电压表的设计,应用研究,2008,11。5 杨米侠,万建军,基于TLC549的数据采集系统设计,电子元器件应用,2009,9。5 赵新民,王祁,智能仪器设计基础,哈尔滨:哈尔滨工业大学出版社,1999。6 杨代华等,单片机原理及应用,武汉:中国地质大学出版社,2000。7 张永瑞等,电子测量技术基础,西安:西安电子科技大学出版社,1994。8 费业泰,误差理论与数据处理(第五版),北京:机械工业出版社,2004,6。9 Low Cost,Low Power,True RMS-to-DC Converter AD736 Corp,Analog Device,USA,1995附 录附录一 完整电路图附录二 程序清单#include #include #include #include #include sbit LCD_RS = P20; /定义P2.0口为LCD的RS脚sbit LCD_RW = P21; /定义P2.1口为LCD的RW脚sbit LCD_EN = P22; /定义P2.2口为LCD的EN脚sbit CS = P00;sbit DO = P01;sbit CLK = P02;sbit MUXO = P03;sbit MUXI = P04;#define LCD_DATA P1 /定义P4口为LCD的数据线#define uint unsigned int#define uchar unsigned charuint Volt=0;uint Curt=0;uchar Voltage6;uchar Current6;void Delay(uint t);void LCD1602_Init();void LCD1602_Write(uchar dat,uchar cd);void LCD1602_SetPos(uchar x,uchar y);/*向LCD屏幕上输出一串字符函数*/void LCD1602_Print( uchar x,uchar y,unsigned char *pszFormat, . )uchar str17;/定义数组str,记录要显示的字符,字符串以0结尾uchar n,i;/*以下4行所用函数定义于stdarg.h中实现的功能是将pszFormat指向的内容给str*/va_list va;va_start(va, pszFormat);vsprintf(str,pszFormat,va);va_end(va); LCD1602_SetPos(x,y); /设置LCD的行列地址n = strlen(str); /记录str长度for( i=0;in;i+ )LCD1602_Write(stri,1);/向LCD写入要显示的字符/*延时函数*/void delay(uint k) uint i,j; for(i=0;ik;i+

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论