多功能电子表毕业设计.docx

上传人:豆**** 文档编号:29908394 上传时间:2022-08-02 格式:DOCX 页数:36 大小:1.48MB
返回 下载 相关 举报
多功能电子表毕业设计.docx_第1页
第1页 / 共36页
多功能电子表毕业设计.docx_第2页
第2页 / 共36页
点击查看更多>>
资源描述

《多功能电子表毕业设计.docx》由会员分享,可在线阅读,更多相关《多功能电子表毕业设计.docx(36页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、毕设多功能电子表指导教师: 班级:电子S10-2学生: 学号: 日期:2012年2月24日目录第一章 元器件2第一节 电阻2第二节 电容3第三节 三极管4第二章 最小系统6第三章 自我设计7第一节 1602液晶的应用7第二节 时钟芯片DS1302的应用9第三节 DS18B20温度传感器的应用10第四节 超声波模块的应用11第五节 语音模块应用12参考文献13第一章 元器件第一节 电阻1.定义 色环电阻,是在电阻封装上(即电阻表面)涂上一定颜色的色环,来代表这个电阻的阻值。色环电阻识别方法黑,棕,红,橙,黄,绿,蓝,紫,灰,白 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 倒数第二环

2、,表示零的个数。2.电阻检测: A将两表笔(不分正负)分别与电阻的两端引脚相接即可测出实际电阻值。为了提高测量精度,应根据被测电阻标称值的大小来选择量程。由于欧姆挡刻度的非线性关系,它的中间一段分度较为精细,因此应使指针指示值尽可能落到刻度的中段位置,即全刻度起始的2080弧度范围内,以使测量更准确。根据电阻误差等级不同。读数与标称阻值之间分别允许有5、10或20的误差。如不相符,超出误差范围,则说明该电阻值变值了。B注意:测试时,特别是在测几十k以上阻值的电阻时,手不要触及表笔和电阻的导电部分;被检测的电阻从电路中焊下来,至少要焊开一个头,以免电路中的其他元件对测试产生影响,造成测量误差;色

3、环电阻的阻值虽然能以色环标志来确定,但在使用时最好还是用万用表测试一下其实际阻值。 第二节 电容电容(或电容量, Capacitance)指的是在给定电位差下的电荷储藏量;记为C,国际单位是法拉(F)。一般来说,电荷在电场中会受力而移动,当导体之间有了介质,则阻碍了电荷移动而使得电荷累积在导体上;造成电荷的累积储存,最常见的例子就是两片平行金属板。也是电容器的俗称。电容种类:云母电容符号:(CY) 电容量:10p-0.1 额定电压:100V-7kV 主要特点:价格较高,但精度、温度特性、耐热性、寿命等均较好 应用:高频振荡,脉冲等对可靠性和稳定性较高的电子装置。玻璃釉电容玻璃釉电容 符号:(C

4、I) 电容量:10p-0.1 额定电压:63-400V 主要特点:稳定性较好,损耗小,耐高温(200度) 应用:脉冲、耦合、旁路等电路电解电容器铝电解电容符号:(CD) 电容量:0.47-10000 额定电压:6.3-450V 主要特点:体积小,容量大,损耗大,漏电大,有极性,安装时要注意 应用:电源滤波,低频耦合,去耦,旁路等第三节 三极管半导体三极管半导体三极管又称“晶体三极管”或“晶体管”。在半导体锗或硅的单晶上制备两个能相互影响的PN结,组成一个PNP(或NPN)结构。中间的N区(或P区)叫基区,两边的区域叫发射区和集电区,这三部分各有一条电极引线,分别叫基极B、发射极E和集电极C,是

5、能起放大、振荡或开关等作用的半导体电子器件。三极管电极和管型的判别:目测法一、管型的判别 一般,管型是NPN还是PNP应从管壳上标注的型号来辨别。依照部分标准,三极管型号的第二位(字母),A、C表示PNP管,B、D表示NPN管(A、B表示锗管(Ge),C、D表示硅管(Si),例如: 3AX 为PNP型低频小功率管(Ge) 3BX 为NPN型低频小功率管(Ge) 3CG 为PNP型高频小功率管(Si) 3DG 为NPN型高频小功率管(Si) 3AD 为PNP型低频大功率管(Ge) 3DD 为NPN型低频大功率管(Si) 3CA 为PNP型高频大功率管(Si) 3DA 为NPN型高频大功率三级管(

6、Si) 此外有国际流行的90119018系列高频小功率管,除9012和9015为PNP管外,其余均为NPN型管。 二、 管极的判别 常用中小功率三极管有金属圆壳和塑料封装(半柱型)等外型。 用万用表电阻档判别三极管内部有两个PN结,可用万用表电阻档分辨e、b、c三个极。在型号标注模糊的情况下,也可用此法判别管型。 基极的判别 判别管极时应首先确认基极。对于NPN管,用黑表笔接假定的基极,用红表笔分别接触另外两个极,若测得电阻都小,约为几百欧几千欧;而将黑、红两表笔对调,测得电阻均较大,在几百千欧以上,此时假定极就是基极。PNP管,情况正相反,测量时两个PN结都正偏(电阻均较小)的情况下,红表笔

7、接基极。 实际上,小功率管的基极一般排列在三个管脚的中间,可用上述方法,分别将黑、红表笔接基极,既可测定三极管的两个PN结是否完好(与二极管PN结的测量方法一样),又可确认管型。 集电极和发射极的判别 确定基极后,假设余下管脚之一为集电极c,另一为发射极e,用手指分别捏住c极与b极(即用手指代替基极电阻Rb)。同时,将万用表两表笔分别与c、e接触,若被测管为NPN,则用黑表笔接触c极、用红表笔接e极(PNP管相反),观察指针偏转角度;然后再设另一管脚为c极,重复以上过程,比较两次测量指针的偏转角度大的一次表明IC大,管子处于放大状态,相应假设的c、e极正确。 1. 用指针式万用表检测 首先选量

8、程:R100或R1K档位;然后,测量PNP型半导体三极管的发射极和集电极的正向电阻值,红表笔接基极,黑表笔接发射极,所测得阻值为发射极正向电阻值,若将黑表笔接集电极(红表笔不动),所测得阻值便是集电极的正向电阻值,正向电阻值愈小愈好。再次,测量PNP型半导体三极管的发射极和集电极的反向电阻值。将黑表笔接基极,红表笔分别接发射极与集电极,所测得阻值分别为发射极和集电极的反向电阻,反向电阻愈小愈好。倘若测试结果偏离甚远,就可以认为管子是坏的,如极间击穿,则正、反向电阻值均为零。若烧断,则均为无穷大。测量NPN型半导体三极管的发射极和集电极的正向电阻值的方法和测量PNP型半导体三极管的方法相反。 2

9、. 用数字式万用表检测 利用数字万用表不仅能判定晶体管的电极、测量管子的共发射极电流放大系数HFE,还可以鉴别硅管与锗管。由于数字万用表电阻档的测试电流很小,所以不适用于检测晶体管,应使用二极管档或者HFE进行测试。 将数字万用表拨至二极管档,红表笔固定任接某个引脚,用黑表笔依次接触另外两个引脚,如果两次显示值均小于1V或都显示溢出符号“OL”或“1”,若是PNP型三极管,则红表笔所接的引脚就是基极B。如果在两次测试中,一次显示值小于1V,另外一次显示溢出符号“OL”或“1”(视不同的数字万用表而定),则表明红表笔接的引脚不是基极B,此时应改换其他引脚重新测量,直到找出基极为止。 用红表笔接基

10、极,用黑表笔先后接触其他两个引脚,如果显示屏上的数值都显示为0.6-0.8V,则被测管属于硅NPN型中、小功率三极管;如果显示屏上的数值都显示为0.4-0.6V,则被测管属于硅NPN型大功率三极管。其中,显示数值较大的一次,黑表笔所接的电极为发射极。在上述测量过程中,如果显示屏上的数值都显示都小于0.4V,则被测管属于锗三极管。 HFE是三极管的直流电流放大倍数。用数字万用表可以方便的测出三极管的HFE,将数字万用表置于HFE档,若被测管是NPN型管,则将管子的各个引脚插入NPN插孔相应的插座中,此时屏幕上就会显示出被测管的HFE值。 三极管性能的简易测量(1) 用万用表电阻档测ICEO和 基

11、极开路,万用表黑表笔接NPN管的集电极c、红表笔接发射极e(PNP管相反),此时c、e间电阻值大则表明ICEO小,电阻值小则表明ICEO大。 用手指代替基极电阻Rb,用上法测c、e间电阻,若阻值比基极开路时小得多则表明 值大。 (2) 用万用表hFE档测 有的万用表有hFE档,按表上规定的极型插入三极管即可测得电流放大系数,若很小或为零,表明三极管己损坏,可用电阻档分别测两个PN结,确认是否有击穿或断路。第二章 最小系统最小系统元件清单:电路图:最先系统简要说明:1引脚9(RST)为复位引脚,高电平有效,上电自动复位,按键复位。2引脚18、19外接晶振电路,位单片机提供11.0592zH的频率

12、。3因单片机P0口内部无上拉电阻(10k),则外接。4引脚31位内外程序存储器选择端,接高电平是选择内部存储器。5 D3为电源指示灯。6 电容C4、C5虑除电源部分的高低频干扰。7 二极管D1为保护电路用,防止电源接反对电路的损毁。第三章 自我设计第一节 1602液晶的应用该部分为系统提供各模块的数据输出情况及模块与模块之间的控制情况,如图显示的依次为:年、月、日、星期、超声波检测的距离单位cm、温度、时、分、秒,当调节时右后向前相应功能闪,待调节,其中温度和时间闪时为默认报警值。简介字符型液晶,能够同时显示16x02即32个字符。(16列2行) 管脚功能引脚说明1602字符型LCD通常有14

13、条引脚线或16条引脚线的LCD,多出来的2条线是背光电源线 VCC(15脚)和地线GND(16脚),其控制原理与14脚的LCD完全一样,其中: 引脚符号功能说明1VSS一般接地2VDD接电源(+5V)3V0液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。4RSRS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。5R/WR/W为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。6EE(或EN)端为使能(enable)端,下降沿使能。7DB0低4位三态、 双向数据总线 0位

14、(最低位)8DB1低4位三态、 双向数据总线 1位9DB2低4位三态、 双向数据总线 2位10DB3低4位三态、 双向数据总线 3位11DB4高4位三态、 双向数据总线 4位12DB5高4位三态、 双向数据总线 5位13DB6高4位三态、 双向数据总线 6位14DB7高4位三态、 双向数据总线 7位(最高位)(也是busy flag)15BLA背光电源正极16BLK背光 电源负极寄存器选择控制表 RSR/W操作说明00写入指令寄存器(清除屏等)01读busy flag(DB7),以及读取位址计数器(DB0DB6)值10写入数据寄存器(显示各字型等)11从数据寄存器读取数据注:关于E=H脉冲开始

15、时初始化E为0,然后置E为1,再清0. busy flag(DB7):在此位为1时,LCD忙,将无法再处理其他的指令要求。第二节 时钟芯片DS1302的应用该功能位系统提供实时间。简介:DS1302是DALLAS公司推出的串行接口实时时钟芯片。它既提供实时时钟,又把关键的数据位存储于RAM。芯片使用简单,外部连线少,在智能化仪表及自动控制领域具有广泛用途。其主要特点是:l 简单的三线串行I/O接口;l 2.55.5V的电压工作范围(在2.5V工作时耗电小于300nA);l 与TTL兼容(Vcc=5V)时;l 实时时钟包括秒、分、小时、日、月、星期和年(闰年)等信息;l 31*8静态RAM可供用

16、户使用;l 可选的涓流充电方式;l 工作电源和备份电源双引脚输入;l 备份电源可由大容量电容来替代。 引脚功能表及内部结构图 DS1302的引脚及内部结构如图1所示,引脚功能如表1所示。 1302应用电路第三节 DS18B20温度传感器的应用该功能为系统提供当前温度值:概述DS18B20数字温度传感器接线方便,封装成后可应用于多种场合,如管道式,螺纹式,磁铁吸附式,不锈钢封装式,型号多种多样,有LTM8877,LTM8874等等。主要根据应用场合的不同而改变其外观。封装后的DS18B20可用于电缆沟测温,高炉水循环测温,锅炉测温,机房测温,农业大棚测温,洁净室测温,弹药库测温等各种非极限温度场

17、合。耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域。 1: 技术性能描述 、 独特的单线接口方式,DS18B20在与微处理器连接时仅需要一条口线即可实现微处理器与DS18B20的双向通讯。 、测温范围 55+125,固有测温分辨率0.5。 、支持多点组网功能,多个DS18B20可以并联在唯一的三线上,最多只能并联8个,实现多点测温,如果数量过多,会使供电电源电压过低,从而造成信号传输的不稳定。 、工作电源: 35V/DC 、在使用中不需要任何外围元件 、 测量结果以912位数字量方式串行传送 、不锈钢保护管直径 6 、适用于DN1525, DN40DN250

18、各种介质工业管道和狭小空间设备测温 、 标准安装螺纹 M10X1, M12X1.5, G1/2”任选 、PVC电缆直接出线或德式球型接线盒出线,便于与其它电器设备连接。第四节 超声波模块的应用该功能为系统提供检测到的400cm范围内的距离值,为距离检测,报警提供数据。简介:第五节 语音模块应用当温度、距离、定时符合设定值时触发该模块,播放录音。简介:电路:参考文献【1】 刘松 曹金玲单片机技术应用【2】 熊伟林 模拟电子技术及应用【3】 杨志忠数字电子技术Dianzibiao.c文件:/*超声波模块 语音模块 1302 18B20应用(52单片机) 1602液晶显示=说明:按P3.0功能按键次

19、数显示状态 P3.1(按键) P3.2(按键) 0次 时分显示状态 1次 秒闪烁 调节增加 调节减小 2次 时闪烁 调节增加 调节减小 3次 周闪烁 调节增加 调节减小 4次 日闪烁 调节增加 调节减小 5次 月闪烁 调节增加 调节减小 6次 年闪烁 调节增加 调节减小 7次定时分闪烁 调节增加 调节减小 8次定时时闪烁 调节增加 调节减小 9次 定时开关闪烁 调节置1开启 调节置0关闭 10次超声波报警值闪烁 调节增加 调节减小 11次 恢复时分显示状态 日期:2012年3月8日*/#include#include#define uchar unsigned char#define uint

20、 unsigned int#define RX P2_5/ECHO#define TX P2_4/RTIGuint time=0,timer=0;/时间,定时器uchar posit=0;unsigned long S=0;bit flag1 =0;/标记sbit lcdrs=P27;/1602的4脚sbit lcde=P26;/1602的6脚(5脚直接接地)sbit ds =P23;/18B20引脚sbit SCLK=P20;/1302的 7脚sbit DATA=P21;/1302的 6脚sbit RST =P22;/1302的 5脚uchar miao,fen,shi,ri,yue,zho

21、u,nian,s1,s2,s3;uchar read,a,flag,temperature;uchar normal,alerting;/超声波超界显示控制、uchar num,add,subtract;/调节选位、调节加、调节减uchar code table = 0-0 ;uint t0,i,temp;/*延时函数*/ void TempDelay (uchar us) while(us-);void delayum(uchar n)uchar i;for(i=0;i0;x-)for(y=110;y0;y-);/*超声波计算及显示*/void Conut(void)time=TH0*256

22、+TL0;TH0=0;TL0=0; S=(time*1.7)/100; /算出来是CMs1=S/100;s2=S%100/10;s3=S%100%10;if(S=700) /超出测量范围显示“-” normal=1;elsenormal=0;if(S=50)P1_0=0;delay(20);P1_0=1;elseP1_0=1;/*/-*/*18b20部分*/void ds_reset(void)ds=1;_nop_(); /1usds=0;TempDelay(80); /当总线停留在低电平超过480us,总线上所以器件都将被复位,这里/延时约530us总线停留在低电平超过480s,总线上的所有

23、器件都_nop_(); ds=1; /产生复位脉冲后,微处理器释放总线,让总线处于空闲状态,原因查/18b20中文资料TempDelay(5); /释放总线后,以便从机18b20通过拉低总线来指示其是否在线, /存在检测高电平时间:1560us, 所以延时44us,进行 1-wire presence /detect(单线存在检测)_nop_();_nop_();_nop_();if(ds=0)flag=1; /detect 18b20 successelseflag=0; /detect 18b20 failTempDelay(20); /存在检测低电平时间:60240us,所以延时约140

24、us_nop_();_nop_();ds=1; /再次拉高总线,让总线处于空闲状态bit ds_read_bit(void) /对18b20 读一位 bit dat; ds=0; /单片机(微处理器)将总线拉低 _nop_(); /读时隙起始于微处理器将总线拉低至少1us ds=1; /拉低总线后接着释放总线,让从机18b20能够接管总线,输出有效数据 _nop_(); _nop_(); /小延时一下,读取18b20上的数据 ,因为从ds18b20上输出的数据 /在读时间隙下降沿出现15us内有效 dat=ds; /主机读从机18b20输出的数据,这些数据在读时隙的下降沿出现/15us内有效

25、TempDelay(10); /所有读时间隙必须60120us,这里77us return(dat); /返回有效数据uchar ds_read_byte(void ) /对18b20 读一字节uchar value,i,j;value=0; /一定别忘了给初值for(i=0;i8;i+) j=ds_read_bit(); value=(j1); /先读出的是低位,return(value); /返回一个字节的数据void ds_write_byte(uchar dat) /对18b20 写一个字节uchar i;bit onebit; /一定不要忘了,onebit是一位for(i=1;i1;

26、if(onebit) /写 1ds=0;_nop_(); _nop_(); /看时序图,至少延时1us,才产生写时间隙 ds=1; /写时间隙开始后的15s内允许数据线拉到高电平TempDelay(5); /所有写时间隙必须最少持续60uselse /写 0ds=0;TempDelay(8); /主机要生成一个写0 时间隙,必须把数据线拉到低电平并保持至少60s,这里64usds=1;_nop_(); _nop_();void ds18b20()/18b20ds_reset(); delay(1); /约2msds_write_byte(0xcc);ds_write_byte(0x44);ui

27、nt get_temperature()/计算温度float wendu;uchar a,b;ds_reset();delay(1); /约2msds_write_byte(0xcc);ds_write_byte(0xbe);a=ds_read_byte();b=ds_read_byte();temp=b;temp=8;temp=temp|a;wendu=temp*0.0625; temp=wendu*10+0.5;return temp; /*/*1302时钟芯片部分*/ /*/*向1302中写一个字节 */void write1302(uchar dat)uchar i;SCLK=0;de

28、layum(2);for(i=0;i=1;/*从1302中读一个字节 */uchar read1302(void) uchar i,dat;delayum(2);for(i=0;i=1;if(DATA=1)dat|=0x80;SCLK=1;delayum(2);SCLK=0;delayum(2);return dat;/*对1302写命令和数据*/void writeset1302(uchar cmd,uchar dat) uchar i;RST=0;SCLK=0;RST=1;delayum(2);write1302(cmd);write1302(dat);for(i=0;i=1;delayu

29、m(2);for(i=0;i=1;SCLK=1;RST=0;/*对1302写命令读字节*/uchar readset1302(uchar cmd) uchar dat,i;RST=0;SCLK=0;RST=1;write1302(cmd);dat=read1302();for(i=0;i=1;delayum(2);for(i=0;i=1;if(DATA=1)dat|=0x80;SCLK=1;delayum(2);SCLK=0;delayum(2);SCLK=1;RST=0;return dat;/*-*/*1602液晶部分*/* /*对1602写一个命令 */void write_com(uc

30、har com) lcdrs=0;lcde=0;P0=com;delay(5);lcde=1;delay(5);lcde=0;/*对1602写一个数据*/void write_(uchar ) lcdrs=1;lcde=0;P0=;delay(5);lcde=1;delay(5);lcde=0;/*对1602写 年、月、日*/void write_nyr(uchar add,uchar )uchar shi,ge;shi=/10;ge=%10;write_com(0x80+add);write_(0x30+shi);write_(0x30+ge);/*对1602写 周*/void write_

31、z(uchar add,uchar )uchar ge;ge=;write_com(0x80+add);write_(0x30+ge);/*对1602写 时、分、秒 */void write_sfm(uchar add,uchar )uchar shi,ge;shi=/10;ge=%10;write_com(0x80+0x40+add);write_(0x30+shi);write_(0x30+ge);/*对1602写 温度*/void write_wen(uchar add,uint )uchar bai,shi1,ge;bai=/100;shi1=%100/10;ge=%10;write_

32、com(0x80+0x40+add);write_(0x30+bai);write_(0x30+shi1);write_(.);write_(0x30+ge);write_(0xdf); /写温度的单位write_(C);if(bai=2&shi1=6&temperature=2)P1_0=0;delay(20);P1_0=1;temperature=0;if(bai=2&shi1=8)P1_0=0;delay(20);P1_0=1;if(bai=2&shi16)temperature=3; /*对1302初始化 */void init_ds1302()read=readset1302(0x8

33、1);/读秒寄存器if(read&0x80) /判断秒寄存器最高位,如果时钟关闭就初始化writeset1302(0x8e,0x00);/根据写状态寄存器命令字,写入不保护指令writeset1302(0x80,(0/10)4|(0%10);/写秒的初始值writeset1302(0x82,(24/10)4|(24%10);/写分的初始值writeset1302(0x84,(21/10)4|(21%10);/写时的初始值writeset1302(0x86,(18/10)4|(18%10);/写日的初始值writeset1302(0x88,(4/10)4|(4%10);/写月的初始值writes

34、et1302(0x8a,(0/10)4|(3%10);/写周的初始值writeset1302(0x8c,(12/10)4|(12%10);/写年的初始值writeset1302(0x90,0xa5);/打开充电功能,选择2K电阻充电方式writeset1302(0x8e,0x80);/写入保护指令/*初始化 */void init()lcde=0;/1602的六脚 Ewrite_com(0x38);/1602初始化设置write_com(0x0c);write_com(0x06);write_com(0x01);write_com(0x80);write_com(0x80);/开机时显示的笑脸

35、 0-0 for(num=0;num17;num+)write_(tablenum);delay(5);TMOD=0x11;TH0=(65536-10000)/256;TL0=(65536-10000)%256;TH1=0xf8; /2MS定时TL1=0x30;EA=1;ET0=1;TR0=1;ET1=1; TR1=1;write_com(0x80);/1602固定位置的显示字符write_(2);write_com(0x80+1);write_(0);write_com(0x80+4);write_(-);write_com(0x80+7);write_(-);write_com(0x80+10);write_();write_com(0x80+0x40+9);write_(:);write_com(0x80+0x40+12);write_(:);/*按键*/void key() P3_5=1; /功能选择按键if(0

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁