




已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本文由xiaodan2330贡献 doc文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。 可设置报警数值的多路电压采集装置设计 摘要 本文介绍的是一种基于单片机和 A/D 转换的可设置报警数值的多路电压采集装置。由 于个人水平有限,设计的功能实现方式还不够完善,其主要功能有多路电压的采集转换、 键盘输入控制、LCD 液晶显示、定时报警显示等,简单易懂、使用方便、安全性能较高适合 学生实验设计。本设计具体采用 AT89S52 单片机为芯片主体, At89S52 是一种低功耗、高 性能 CMOS8 位微控制器,具有 8K 在系统可编程 Flash 存储器。使用 Atmel 公司高密度非 易失性存储器技术制造,与工业 80C51 产品指令和引脚完全兼容,稳定性高,成本低,还 能扩展很多功能,如红外探测技术,温度探测技术,语音识别技术,脉搏测量技术等,但 本设计没有采用这些扩展。它是将采集的多路电压经 AT89S52 单片机和 ADC0809 串行 EEPROM,通过 AT89S52 模拟 I2C 总线和 ADC0809 通信,然后由 LCD 液晶显示电压并在达到 或者超过一定范围时发出报警提示。此类电路在日常生活和工作中,运用的很广泛,是过 压保护电路的一个升级,由该电路衍生出了各类电动控制设备,如电动摩托、公交的蓄电 池的电压控制等等。 随着科学技术的不断发展,人们对日常生活中对于此类报警提示电路要求越来越高, 也越来越复杂,多元。本次设计使用 ATMEL 公司的 AT89S52 实现一基于单片机的可设置报 警数值的多路电压采集装置比较简单实用,用软件调试电路板,完成本次毕业设计。 关键词:AT89S52 液晶显示, 关键词:AT89S52,ADC0809,LCD 液晶显示,报警 DC0809, 目 录 第 1 章 引言 3 4 4 5 6 6 10 11 12 11 11 12 15 16 17 18 24 第 2 章 方案论证 2.1 方案一:采用数码管结合时钟芯片控制显示方案2.2 方案二:采用 LCD 液晶显示单片机定时控制方案第3章 3.1 3.2 3.3 3.4 硬件设计 功能模块 原理图 PCB 图 实物 第 4 章 软件设计 4.1 程序流程图 4.2 程序实现功能 第 5 章 总结 致谢语 参考文献 附录一 附录一 程序 附录二 元件清单 第 1 页总 21 页 1 引言. 第 1 章 引言. 在日常的生活和工作中,多路电压采集装置应用的比较广泛,具有设计简单,反应准确, 经济适用等优点。 大家知道我们经常骑的电动摩托车的蓄电池是电动车的主要动力源, 为保证电动车的正 常和安全行驶,电池管理系统必须实时监测电动车电池的电压数据。通过电压采集电路和 A/D 转换实现电压数据的获取。而为了避免电池的不均衡性带来的局部过充/过放所引起的 安全问题,要求监测系统必须对每个单体或几个单体电压进行精确测量,故多路电压采集 装置的精确性就关系到该电动车的性能好坏了,由此可见多路电压采集电路在生活中起到 了不小的作用。 随着人类科技水平的发展,人类对于电的依赖程度越来越高,现在流行的电动摩托车, 以及批量生产试行的电动公交车,其他的直流电路控制设备等等很多产品都离不开多路电 压采集装置的应用,它的运用使人们的生活更安全,舒适,同时也为降低环境污染做出了 一定得贡献。我相信不久的将来,电动设备普及的时候也是多路电压采集装置广泛运用的 时代。本次设计使用的 ATMEL 公司的 AT89S52 实现的基于单片机的控制的可设置报警数值 的多路电压采集装置,由于本人水平有限,只能粗劣的完成一些简单的采集显示功能,希 望在今后的学习中得到更大的提高,为科技的进步作出一点得贡献。 第 2 页总 21 页 2 第 2 章 方案论证 设计本课题时构思了两种方案:一种是用 2 个 7 段数码管结合时钟控制的显示方案; 另一种是用 LCD 显示结合单片机定时设置显示的方案。考虑到数码管显示电路相对比较复 杂,需要引入较多的其他电路,而且实用性不高,而第二种方案集成度较高,可留出较多 的芯片端口扩展显示更多功能。故最终采用第二种方案。 方案一:采用数码管结合时钟控制 显示方案 数码管结合时钟控制的 2.1 方案一:采用数码管结合时钟控制的显示方案 采用数码管结合时钟控制的显示,其原理方框图如图 21 所示。 数码管显示 键盘控制 AT89S52 单片机 A/D 转 换电路 多路电压 采集电路 报警电路 交直转 换电路 时钟控 制电路 图 21 数 码管结合时钟控制的显示方案 采用数码管显示结合时钟控制的显示电路的好处是成本相当较低,但是电路相对较复 杂,首先由电压转换电路将 20-220V 的交流电压转换成改电路可采集的直流电压,然后由 电压采集电路将电压通过电阻或电容的分压作用,调整为 AD 芯片可以承受的 0-5V 电压, 然后由 AT89S52 芯片结合时钟控制数码管显示当时的电压和时间, 并且每 10 分钟存储一次。 通过编程控制按键输入显示相应的时间就可显示当时的电压数值。 设置外部输入电压 XX v 时,为最高电压输入值,然后当采集的电压达到或者超过该数 值时,单片机给 T0 端口一个低电平,使蜂鸣器发出警告声,从而完成改电路的设计要求。 方案二: 显示结合单片机定时控制的显示 结合单片机定时控制的显示方案 2.2 方案二:采用 LCD 显示结合单片机定时控制的显示方案 以 AT89S52 为核心的单片机定时控制 LCD 显示方案,使整体设计电路更简洁,便有操 作,利用单片机灵活的编程设计和及其强大的内部控制功能,可以准确的达到设计要求。 其原理如图 22 所示。 第 3 页总 21 页 3 LCD 液晶显示 键盘控制 AT89S52 单片机 A/D 转 换电路 多路电压 采集电路 报警电路 交直转 换电路 图 22 采用 LCD 显示结合单片机定时控制的显示方案 通过比较以上两种方案的比较,第二种方案电路设计相当简单易行,充分发挥了 AT89S52 的芯片功能,并且省去了数码显示需要 138 译码器占用 3 个 I/O 端口的弊端,使芯 片不容易控制,所以我们采用后一种方案。 第 3 章 硬件设计 3.1 功能模块 3.11 交直转换和采集电路设计 3.11.交直转换和采集电路设计 和采集电路 交直转换电路才用单相桥式整流电路,将 220V 的交流电压转换成直流电压,以供设计 电路采集使用,其原理如图 31 所示。 图 3 1 交直转换电路说明 示意图 单相桥式整流电路 如图,四个二极管作为 整流器件接成电桥形 式,当变压器 TR 的极性 第 4 页总 21 页 4 上端为正下端为负时,VS1、VD3 因正向偏置而导通,VD2、VD4 因反向偏置而截止,在负载 RL 上有电流通过,电流由变压器二次绕组上端经 VD1、RL、VD3 回到变压器下端,在 RL 上 得到一个半波整流电压,当电源极性相反时,整流器件 VD2、VD4 导通,VDl、VD3 截止,电 流经 VD2、R1、VD4 回到 TR 的上端,这样在 RL 上也得到一个半波整流电压。如此重复,在 负载 RL,上就能得到一个和单相全波整流时一样的电压波形,从而达到交流转直流的目的。 图 32 电压采集电路说明示意图 本电路设计采集四路电压。一路采集 0-400MV,经放大器 LM358 放大 10.1 倍,由 IN0 输入的电压为 0-4.1V,两路均采集 0-5V,经 IN2 和 IN3 直接输入 AD 转换芯片,另一路为 0-12V,经电阻分压缩小为原来的 2/5,由 IN4 输入。 3.12 转换电路的设计 3.12 ADC0809 转换电路的设计 本设计电路中,ADCO809 转换芯只采用 IN0-IN3 四路端口采集电压信号,具体原理如 图 3-3 所示。 图 33 AD 转换电路原理图 ADC0809 转换芯片有 8 路模拟信号的分时采集端口 IN0-IN7, 片内有 8 路模拟选通开关, 以及相应的通道抵制锁存用译码电路,其转换时间为 100s 左右据。地址锁存与译码电路 完成对 ADDR0(A)、ADDR1(B)、ADDR2(C) 3 个地址位进行锁存和译码,其译码输出用于通道 选择,其转换结果通过三态输出锁存器存放、输出,因此可以直接与系统数据总线相连, 表 3-0 为通道选择表。 由表 3-0 可知,本设计的采集端口 IN0-IN3 对应的 3 个 地址位分别为 000, 001, 和 011。 010 ADC809 芯片的 DB0-DB7 对应接入 AT89S52 的 P00-P07 端口,将 AD 转换的数字信号 传输到 AT89S52 中,达到数据采集输入的目的。 液晶显示电路设计 3.13 LCD 液晶显示电路设计 第 5 页总 21 页 5 本系统设计的 LCD 液晶显示为 1602 芯片, 能够显示 16 位数值, 从左到右依规定为 1-16 位,其中前 1-5 位用来显示时间(XX:XX,小时和分钟显示) ,然后 6 位不显示,接着的 7-9 三位显示 IN0 输入电压(XXX,单位 mv) ,接着 10 位不显示,然后 11 位显示 IN1 的电压输 入值一位(X,单位 v),12 位再不显示,13-14 位显示 IN2 的电压输入值两位(XX,单位 v) , 然后 15 位不显示,16 位显示 IN3 的电压输入值一位(X,单位 v) ,正好使用完 16 位显示。 该电路的原理图如图 3-4 所示, 图 34 LCD 显示器原理图 LCD1602 由 AT89S52 芯片的 P00-P07 脚对应的接入 LCD DB0-DB7 引脚,进行并行数据传 输,当 RS 及 RW 引脚信号为 1 且 Enable 引脚信号由 1 变为 0 时,读取数据;当 RS 引脚 信号为 1,RW 引脚信号为 0 且 Enable 引脚信号由 1 变为 0 时,存入数据;达到数据输入 和显示的功能。 3.14 3.14 按键电路设计 本设计使用矩阵 4*4 行列式键盘扫描电路,对应主芯片的 P10-P17 脚,共占用 8 个 I/O 口,其原理如图 35 所示。 第 6 页总 21 页 6 图 35 4*4 行列式键盘原理图 每一条水平(行线)与垂直线(列线)的交叉处不相通,而是通过一个按键来连通, 利用这种行列式矩阵结构只需要 N 条行线和 M 条列线,即可组成具有 NM 个按键的键盘, 改电路采用 4*4 键盘。在这种行列式矩阵键盘非键盘编码的单片机系统中,键盘处理程序 首先执行等待按键并确认有无按键按下的程序段。 当确认有按键按下后,下一步就要识别哪一个按键按下。对键的识别通常有两种方法: 一种是常用的逐行扫描查询法, 另一种是速度较快 的线反转法。 判断键盘中哪一个键被按下, 是通过将列线逐 列置低电平后, 检查行的输入状态来实现的。 具体 方法是: 依次给列线送低电平, 然后查看所有行线 的状态,如果全为 1,则所按下的键不在此列;如 果不全为 1,则所按下的键必在此列,而且按下的 键即是显示 0 的行线与低电平的列线相交的那个 按键。 按键的操作面板如图图 36 所示。共计数字 输入键 10 个,功能键 5 个。 图 36 按键操作面板示意图 其中 10 个数字键 0-9 用来输入显示时间(例:XX:XX,小时和分钟)和设置的电压值 (XXX,三位电压数值) ,另外 5 个功能键分别是:A、B、C、D 和黑点。其中 A 键的功能是 进入电压设置模式;B 键的功能是进入时间输入模式;C 键的功能是当电压或者时间输入错 误的时候,清除前面已经输入的数据,重新输入;D 键的功能是用来恢复电压采集的初始状 态,即显示当时的时间和采集的电压数值,为复位键;黑点键是用来确认输入的电压值和 时间的,即确认键。 3.15 蜂鸣器和总开关电路的 和总开关电路 3.15 蜂鸣器和总开关电路的设计 第 7 页总 21 页 7 图 37 蜂鸣器和复位电路原理图 当采集电压达到设定的最大电压数值时,给单片机的 T0 脚一个低电平就会使蜂鸣器 鸣响示警,达到报警的目的。 3.16 3.16 总体设计总框图 LCD 液晶显示 键盘控制 AT89S52 单片机 A/D 转 换电路 多路电压 采集电路 报警电路 交直转 换电路 图 38 总体设计框图 3.2 原理图 第 8 页总 21 页 8 1 2 3 4 U2 Vss VCC VEE D 1 2 3 LCD1602 RS R/W E LED+ LEDDB0 DB1 DB2 DB3 DB4 DB5 DB6 DB7 7 DB0 DB1 8 DB2 9 10 DB3 11 DB4 12 DB5 13 DB6 14 DB7 RS 4 R/W 5 E 6 15 16 D R9 10K 4 VCC VCC VCC R4 R5 33K R10 91K 1 U5A 2 3 R6 33K 0 4 8 C R7 33K 1 5 9D R8 33K 2 6 A E 10K R11 15K R12 15k J3 1 2 RP1 S3 S4 S5 C 10K LM358 8 S7 S8 S9 S10 S11 S12 S13 S14 S15 S16 S17 S18 3 7 1 2 3 4 5 6 7 8 9 C11 103 C12 103 0-400mV U1 B F P10 1 P11 2 P12 3 P13 4 P14 5 P15 6 P16 7 P17 8 P33 13 12 INT0 P10/T P11/T P12 P13 P14 P15 P16 P17 INT1 INT0 T1 T0 EA/VP X1 X2 RESET RD WR STC89S52RC VCC P00 P01 P02 P03 P04 P05 P06 P07 P20 P21 P22 P23 P24 P25 P26 P27 39 38 37 36 35 34 33 32 21 22 23 24 25 26 27 28 P20 P21 P22 RS R/W E P26 P27 DB0 DB1 DB2 DB3 DB4 DB5 DB6 DB7 17 14 15 8 18 19 20 21 25 24 23 10 U3 ADC0809 VCC +Vref IN0 IN1 IN2 IN3 IN4 IN5 IN6 IN7 -Vref GND EOC S6 VCC Q1 R5 1K DB0 DB1 DB2 DB3 DB4 DB5 DB6 DB7 ADDR0 ADDR1 ADDR2 CLK ALE START OE 5 VCC 11 12 IN0 26 IN1 27 28 IN2 1 IN3 2 IN4 3 IN5 4 IN6 5 IN7 16 13 7 VCC R13 15k J4 C13 103 1 2 C 0-5V R14 15k J5 C14 103 1 2 R2 470 蜂蜂蜂 9012 VCC 0-5V C4 C3 10uF 30p P35 15 P34 14 U6A 74LS04 1 3 X1 VCC 12M 30p 31 19 18 9 P37 17 P36 16 S2 FW B R3 10K U6B 2 22 6 4 9 R15 R16 15K 15k J6 C15 103 1 2 74LS04 U6C INT0 6 RXD TXD ALE/P PSEN 10 P30 11 P31 30 29 VCC 10 11 9 12 5 4 3 1 0-12V C5 74LS04 R17 10K B J4 1 6 2 7 3 8 4 9 5 U4 7 14 8 13 15 6 2 MA X232 T2 IN T1 IN R2 OUT R1 OUT C2C2+ C1C1+ S1 J2 D1 LED C6 1uF C8 1uF C9 T2 OUT T1 OUT R2 IN R1 IN GND VV+ VCC VCC J1 C2 C1 470uF 104 1 2 C7 1uF 1 2 3 4 从毕从从 USB口口集 R1 1k C10 1uF DB9 16 A Title Size A4 Date: File: 14-May-2009 Sheet of E:学学毕毕毕毕我我完完完集完集集集集集集集集(旧).ddb Drawn By: 4 Num ber Revision 1uF A 1 2 3 3.3 PCB 图 第 9 页总 21 页 9 第 4 章 软件设计 4.1 程序流程图 程序流程图 开始 初始化 AD 转换子程序 键盘控制子程序 AT89S52 LCD 显示子程序 是否最 大电压 蜂鸣器报警 END 图 41 主程序流程图 第 10 页总 21 页 10 图 42 A/D 转换程序流程图 键盘扫描 1 有键闭合 设置电压数值 延时去抖动 END 扫描键盘 找到闭合键 输入时间显示 1 图 43 键盘控制程序流程图 第 11 页总 21 页 11 图 44 LCD 显示子程序流程图 程序实现功能 功能. 4.2 程序实现功能. 该主要由三部分组成:多路电压采集电路、44 矩阵键盘接口电路、LCD 显示电路、 A/D 转换电路。另外系统还有报警蜂鸣器等,程序的设计可分为以下几个模块: (1)主程序模块 主程序主要完成初始化,调用 AD 转换子程序,键盘控制子程序,LCD 显示子程序,以 及判断蜂鸣器的报警程序。其流程图如 4-1 所示; (2)AD 转换子程序 AD 转换子程序包括采集电压的转换以及和单片机的通信。其流程图如 4-2 所示; (3)键盘控制子程序 键盘控制子程序包括按键输入时间查询电压数值,以及设置最大的输入电压数值。其流 程图如 4-3 所示; (4)LCD 显示子程序 LCD 显示子程序包括实时时间的显示,采集的电压数值显示。其流程图如 4-4 所示。 参考文献 第 12 页总 21 页 12 1.孙涵芳,徐爱卿编著。MCS51/96 系列单片机原理及应用(修订版) 。北京:北京航空航 天大学出版社,1996.4 2.何立民编著。MCS-51 系列单片机应用系统设计(系统配置与接口技术) 。北京:北京航空 航天大学出版社,1993.8 3.吴微,文军编著。单片机原理及制作。武汉:武汉大学出版社,1991.5 4.孙育才,苏学成编著。单片微型计算机应用系统设计与实现。南京:东南大学出版社, 1990.5 5.郑步生,Multisim 2001 电路设计及仿真入门与应用,北京。电子工业出版社,2002 6何小艇。电子系统设计。杭州:浙江大学出版社,2000 7李瀚荪主编。电路分析基础(上、中、下册(第三版)。北京:高等教育出版社,1983 ) 8温照方编。电路基础。北京:北京理工大学出版社,19969。 9杨志忠。电子技术基础数字部分。北京:电力出版社,1999 10杨颂华。数字电子技术基础。西安:西安电子科技大学出版社,2000 11 杜刚。 电路设计与制板Protel 应用教程 (电子电路设计循序渐进系列教程) 北京: 。 清华大学出版社,2006 12曾峰。印刷电路板(PCB)设计与制作。北京:电子工业出版社,2005 13童诗白,华成英,模拟电子技术基础(第三版) ,北京,高等教育出版社,2001 康华光,电子技术基础(模拟部分,第四版) ,北京,高等教育出版社,1999 14王佩珠,电路与模拟电子技术,南京,南京大学出版社,1994 15杨清学,电子装配工艺【M】 北京,电子工业出版社 ,2004 16王成安,模拟电子技术(实训篇) 【M】 版,大连,大连理工大学出版社,2005 ,2 17黄纯,电子产品工艺【M】 北京,电子工业出版社,2001 第 13 页总 21 页 13 附录一 附录一 程序及部分说明 #include #include #define uint unsigned int #define uchar unsigned char /#define LCD_DATA P0; sbit DI = P34; sbit D0 =P34; sbit CLK = P35; sbit CS = P36; sbit deep=P36; sbit LCD_RS= P20; sbit LCD_RW= P21; sbit LCD_E= P22; /sbit P36=P36; uchar t,shu,d1; unsigned char K,Key,n; uchar d4=0,0,0,0; /uchar code DIS=ADC0832TEST;/ADC832 测试; uchar code dsptab=0,1,2,3,4,5,6,7,8,9;/字符代表码; /*延时子程序*/ void delay(uint a) uint b; for(b=0;b3) n=0; /*读状态*/ /读状态子程序;有返回值;返回值类型为 CHAR 型; /读回的状态通过 RETURN 返回; uchar read_estate(void) /定义有返回值的函数; P0=0Xff; /把 LCD 端口全置 1 方便读取信号; LCD_RS=0; /RS 置 0; LCD_RW=1; /RW 置 1; LCD_E=0; /E 端置 0; delay(10); /短延时; LCD_E=1; /E 端置 1;以锁存数据; while(P0&0x80); /检测忙,则一直循环; return(P0); /返回读取的信号; /* 写数据*/ /写数据子程序;无返回值;输入变量 I; /I 为要写入 LCD 中的数据; /数据类型 CHAR 形; void write_data(uchar i) read_estate(); P0=i; /定义输入变量值 I; /检测忙信号; /把 I 中数据送到 LCD 数据端; 第 16 页总 21 页 16 LCD_RS=1; LCD_RW=0; LCD_E=0; delay(10); LCD_E=1; /RS 置 1; /RW 置 0; /E 置 0; /短延时; /E 置 1;以锁存数据; /* 写指令*/ /写指令子程序;无返回值;输入二个变量 I 和 J. /I 为要写入 LCD 的指令;J 为判断要不要检测忙. /如果 J 为 0 则不判断检测忙; /如果 J 为 1 则判断检测忙; void write_dictate(uchar i,j) /定义二个变量; if(j)read_estate(); /根据需要检测忙; P0=i; /把要写入的数据送到 LCD 数据端; LCD_RS=0; /RS 置 0; LCD_RW=0; /RW 置 0; LCD_E =1; /E 端置 0; delay(10); /延时; LCD_E =0; /E 端置 1;以锁存数据; /*读数据*/ /读数据子程序;有返回值,返回值类型为 CHAR 型; /*uchar read_data(void) LCD_DATA=0Xff; LCD_RS=1; LCD_RW=1; LCD_E=0; delay(10); LCD_E=1; return(LCD_DATA); /定义有返回值的子函数; /LCD 数据端口置 1; /RS 置 1; /RW 置 1; /E 置 0; /短延时; /E 置 1;以锁存数据; /返回读取的值; /* LCD 初始化*/ 第 17 页总 21 页 17 /LCD 初始化程序;主要作用初始化 LCD,对 LCD 进行复位以及设置; void initialization(void) /定义函数; delay(50); /延时 5MS; write_dictate(0x38,0); /写指令 38H;不检测忙; delay(50); /延时 5MS; write_dictate(0x38,0); /写指令 38H;不检测忙; delay(50); /延时 5MS; write_dictate(0x38,0); /写指令 38H;不检测忙; delay(50); write_dictate(0x38,1); /显示模式设置;检测忙; write_dictate(0x08,1); /关闭显示;检测忙; write_dictate(0x01,1); /显示清屏;检测忙; write_dictate(0x06,1); /显示光标移动设置;检测忙; write_dictate(0x0C,1); /显示开及光标设置;检测忙; /*在指定位置显示一个字符*/ void displayonechar(uchar x, y,ddata) y &= 0x01; x &= 0x0f; /限制 X 不能大于 15,Y 不能大于 1 if (y) x+= 0x40; /当要显示第二行时地址码+0x40; x+= 0x80; /算出指令码 write_dictate(x,0); /这里不检测忙信号,发送地址码 write_data(ddata); /*在指定位置显示一串字符*/ /*void displaylistchar(uchar x,y,uchar code *ddata) uchar a=0; y&=0x01; x&=0xf; while(ddataa0x20) if(x=0xff) displayonechar(x, y,ddataa); a+; x+; */ 第 18 页总 21 页 18 /*读 ADC0832 的数据*/ unsigned char readadc(void) unsigned char dat,i; CLK=0; /芯片复位 CS=1; _nop_(); CS=0; _nop_(); DI=1; /启动位 CLK=1; _nop_(); CLK=0; DI=1; /配置位 1 CLK=1; _nop_(); CLK=0; DI=0; /配置位 2 CLK=1; _nop_(); CLK=0; /空闲位 _nop_(); CLK=1; DI=1; for(i=0;i=8;i+) /读出 8 字节数据 dat=dat1; _nop_(); CLK=1;/这里要先 1 后 0如果是先 0 后 1 则输出结果错误 if(DI) dat|=0x01; _nop_(); CLK=0; CS=1;/关闭芯片 return(dat);/返回数据 void main() uint dat; delay400ms();/延时 400MS initialization();/LCD 复位; /displaylistchar(0,0,DIS);/显示 ADC832 测试; displayonechar(0,0,O); /在 LCD 是显示 OUT:_.V displayonechar(1,0,U); 第 19 页总 21 页 19 displayonechar(2,0,T); displayonechar(3,0,:); displayonechar(5,0,.); displayonechar(8,0,V); while(1)/无限循环一直读出电压值显示在 LCD 上; Key = Keycan();/键盘扫描获取一次按键的编码 0x11-0x88 KeyDeal(Key); /对扫描到的键盘编码进行转换处理,变成数据键盘 0-9,11-15 /*displayonechar(13,1,dsptabreadadc()/100); displayonechar(14,1,dsptab(readadc()%100)/10); displayonechar(15,1,dsptabreadadc()%10);/在 LCD 最右边显示 255 中的某一个数 据;*/ displayonechar(4,1,dsptabd2); /在 LCD 是显示 OUT:_.V displayonechar(5,1,.); displayonechar(6,1,dsptabd1); displayonechar(7,1,dsptabd0); displayonechar(8,1,V); dat=readadc()/0.542;/0.542 是 255 除以基准电压也就是 ADC0832 的 VCC得出来了 这个值可能每个人不同. displayonechar(4,0,dsptabdat/100);/下面三行显示电压 displayonechar(6,0,dsptab(dat%100)/10); displayonechar(7,0,dsptabdat%10); if(d2=dsptabdat/100&d1=dsptab(dat%100)/10&d0=dsptabdat%10) feng(); delay400ms();/延时 400MS 本设计所用元器件清单 附录二 本设计所用元器件清单 LCD1602 显示器 晶体振荡器(12MHZ) 单片机 (AT89S52) 排阻(1K) 通电容及电解电容 整流二极管 蜂鸣器 三极管 并行下载口 块 ADC0809、RS232、LM358、 USB 接口 自锁开关 电阻 按键 普 集成 第 20 页总 21 页 201袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇羅膃蚈螂羁膂莈蚅袇膁蒀袀螃膀薂蚃肂腿节衿羈腿莄蚂袄芈蒇袇螀芇蕿蚀聿芆艿蒃肅芅蒁螈羁芄薃薁袆芃芃螆螂芃莅蕿肁节蒈螅羇莁薀薈袃莀艿螃蝿荿莂薆膈莈薄袁肄莇蚆蚄羀莇莆袀袆羃蒈蚂螂羂薁袈肀肁芀蚁羆肁莃袆袂肀薅虿袈聿蚇蒂膇肈莇螇肃肇葿薀罿肆薂螆袅肅芁薈螁膅莃螄聿膄蒆薇袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁罿芄螁蚁膄膀螁螃羇葿螀袅膃蒅蝿肈羆莁螈螇芁芇莄袀肄膃莄羂艿蒂莃蚂肂莈蒂螄芈芄蒁袆肀膀蒀罿袃薈葿螈聿蒄葿袁羁莀蒈羃膇芆蒇蚃羀膂蒆螅膅蒁薅袇羈莇薄罿膄芃薃虿羆艿薃袁节膅薂羄肅蒃薁蚃芀荿薀螆肃芅蕿袈芈膁蚈羀肁蒀蚇蚀袄莆蚇螂肀莂蚆羅袂芈蚅蚄膈膄蚄螇羁蒂蚃衿膆莈蚂羁
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 厨房挂件出租合同范本
- 2025年8月广东广州市天河区泰安小学招聘编外聘用制专任教师2人备考练习题库及答案解析
- 2025年中国近代物理研究所加速器运行招聘备考练习题库及答案解析
- 2025内蒙古呼和浩特玉泉区第十三幼儿园招聘备考练习题库及答案解析
- 2025年湖北生态工程职业技术学院公开招聘合同制辅导员4人考试参考试题及答案解析
- 有特色的合同范本
- 潮汕地皮转让合同范本
- 焊机配件采购合同范本
- 保洁机具租赁合同范本
- 2025首都医科大学附属北京同仁医院派遣制服务热线人员招聘3人备考练习题库及答案解析
- 俄罗斯历史与文化课件
- 3.4 商品质量品级评定与质量监督
- 一年级谁比谁多练习题(比较实用)
- 油管的上扣扭矩表
- 金矿汇报实用教案课件
- 个案分析-万科四季花城
- 年轻人群酒水消费洞察报告
- 社会化媒体全套教学课件
- GB∕T 33425-2016 化工产品中防结块剂抗结块性能的评价方法
- 幼儿园绘本:《你真好》 PPT课件
- 小学语文《一定要争气》教案设计
评论
0/150
提交评论