使用前必读.doc

基于51单片机的防醉酒驾驶设计

收藏

资源目录
跳过导航链接。
基于51单片机的防醉酒驾驶设计.rar
使用前必读.doc---(点击预览)
1-C程序
1602.c
1602.h
1602.LST
1602.OBJ
2402.c
2402.h
2402.LST
2402.OBJ
Alcohol3002.hex
Alcohol3002.lnp
Alcohol3002.M51
Alcohol3002.plg
Alcohol3002.uvgui.Administrator
Alcohol3002.uvgui_Administrator.bak
Alcohol3002.uvopt
Alcohol3002.uvproj
Alcohol3002_uvopt.bak
Alcohol3002_uvproj.bak
main.c
main.LST
main.OBJ
STARTUP.A51
STARTUP.LST
STARTUP.OBJ
STC12C5A.H
10-使用说明
11-开题报告
2-电路图
原理图.doc---(点击预览)
Protel Schematic.pdf---(点击预览)
Backup of mainboard.Sch
Previous Backup of mainboard.Sch
酒精.Bkp
酒精.ddb
3-视频讲解
4-相关软件下载和教程
5-实物图
6-疑惑解答
7-制作详解
1602液晶
DC电源插口
MQ传感器接法
三极管
上拉排阻
供电方式
各种电阻、贴片、可调电阻焊接方法
自锁开关
轻触按键
8-元件清单
9-芯片资料
压缩包内文档预览:
预览图
编号:34123386    类型:共享资源    大小:38.14MB    格式:RAR    上传时间:2019-12-25 上传人:遗**** IP属地:湖北
25
积分
关 键 词:
基于 51 单片机 醉酒 驾驶 设计
资源描述:
基于51单片机的防醉酒驾驶设计,基于,51,单片机,醉酒,驾驶,设计
内容简介:
安装完成后,酒精浓度测试仪上电。传感器第一次上电预热时间比较长,需等待预热完成。当预热完成后,液晶屏显示空气中测得的乙醇气体浓度,因为是清洁空气,所以浓度比较低,没有达到事先设定的报警阈值(80mg/L),故报警灯不亮。然后做未饮酒人的测试。未饮酒人对酒精浓度测试仪传感器探头吹气,液晶屏显示的乙醇气体浓度值开始变化,但不会超过报警阈值,报警灯不亮。吹气完毕后显示值缓慢回落。接着做醉酒测试。饮酒者(或用酒精棉球代替)对酒精浓度测试仪传感器探头吹气,液晶屏显示的乙醇气体浓度值快速上升,很快超过报警阈值,报警灯亮。吹气完毕后显示值缓慢回落。可以通过按键调整报警阈值。按“上升”键增大报警阈值,按“减小”键降低报警阈值,调整后的阈值保存在EEPROM芯片AT24C04中,系统重新上电时能保持原来设定好的阈值。酒精浓度测试仪安装使用说明书自刑法修正案(八)和修改后的道路交通安全法正式实施,“醉酒驾驶”正式入刑。不仅交警部门,而且很多车主都期盼能够有便携仪器方便地测量气体酒精浓度,为安全驾驶提供保障,有效减少重大交通事故的发生。本研究设计的酒精浓度测试仪是一款实用性强、安全可靠的气体乙醇浓度检测工具,采用高精度MQ-3乙醇气体传感器对空气中的乙醇浓度进行检测,利用宏晶公司高性能低成本单片机STC12C5A16AD对检测信号进行A/D转换和处理,最后通过液晶屏显示输出。本研究设计的酒精浓度测试仪还具有醉酒阈值设定功能,可以根据法律法规或用户需要设定修改醉酒阈值,并进行保存。酒精浓度测试仪,由MQ-3乙醇气体传感器、STC12C5A16AD单片机、EEPROM存储电路、液晶屏和键盘组成。一、主要功能有:1、 实时测量空气中的乙醇气体浓度,在液晶屏上显示。2、 具有乙醇浓度超高报警功能,当测量得到的乙醇浓度超过预先设定的阈值,则红灯报警。3、 电路设计了两个红灯,另一个红灯是传感器直接输出的模拟报警信号,其阈值通过调节传感器模块上的兰色电位器改变,一般可以不用。4、 醉酒阈值可存储至EEPROM存储器,并在液晶屏显示。系统掉电后醉酒阈值不失,可以保持。5、 醉酒阈值可以通过按键修改并保存。二、安装说明1、全部为直插元器件。2.万能板难装,没有丰富的焊装经验,不建议自己安装万能板套件。焊接的时候 尽量按照原理图焊接,实物图可以参考下。三、调试说明1、套件焊好后,不要急于上电,首先用万用表电阻档量一下电路板的GND和5V电源之间是否短路。短路切不可上电。2、如果不短路,再接上USB电源,用万用表电压档测量5V和GND之间的电压是否正常,如果电压不正常,速断电检查。3、一切正常,可以下载程序了。打开STC下载软件,选择芯片型号,导入hex文件,设置波特率(两项都低于4800bps),下载程序,调试运行。4、新传感器第一次上电有一个老化过程,数据会抖动,此时不去管它,上电一断时间后关电,再重新上电即可正确测量。5、警察测量醉驾都要对测量仪器管吹气,本套件没有吹气管,对着传感器探头吹气即可,距离不可过远,否则气体浓度显著下降。6、强烈建议买一瓶酒精棉球,用棉签蘸酒精放在传感器口就可以,简单方便。 毕业设计开题报告专 业: 应用电子 姓 名: 学 号: 课题名称: 酒精浓度测试仪设计 指导教师: 论文起止日期: 2013.9.30-2013.10.7 一、 引言.新世纪以来,中国的经济不断发展,人民生活水平不断提高,私家车逐渐走进千家万户,给人们的生活带来了极大的便利。然而高速文明的背后,新的问题、新的挑战也接踵而至,例如城市交通拥堵,汽车尾气造成的严重环境污染以及交通事故等等。这些问题正在影响甚至危害着人们的正常生活。作为即将步入社会的大学毕业生,作为新世纪四有青年,作为社会主义事业的践行者,我们应当积极将自己所学知识与实际问题实际挑战相结合,解决实际问题,造福广大人民。酒驾正是造成交通事故的重要原因,2011年05月01日,备受关注的刑法修正案(八)和修改后的道路交通安全法正式施行,酒驾被正是列为刑事犯罪,最高可处以6个月的刑事拘留和2000元罚款。本设计正是设计酒精浓度检测仪,设计成品可以对呼吸气体中的酒精浓度进行实时采集,显示,报警。成品可用于交警对汽车驾驶者测试与监督,也可以用于司机驾车前的自我检测。二、 项目概述本研究设计的酒精浓度测试仪是一款实用性强、安全可靠的气体乙醇浓度检测工具,采用高精度MQ-3乙醇气体传感器对空气中的乙醇浓度进行检测,利用宏晶公司高性能低成本单片机STC12C5A16AD对检测信号进行A/D转换和处理,最后通过液晶屏显示输出。本研究设计的酒精浓度测试仪还具有醉酒阈值设定功能,可以根据法律法规或用户需要设定修改醉酒阈值,并进行保存。三、 实施方案本研究设计的酒精浓度测试仪框图如图1所示。MQ-3乙醇气体传感器输出信号经信号调理电路处理,输出随乙醇浓度变化的电压信号,该电压信号送入单片机系统,经AD转换,与设定的醉酒阈值进行比较,并显示或报警。图1 酒精浓度测试仪方框图设计为什么选用STC12C5A16AD呢,而不选用普通的51单片机,因为该芯片为52内核8位单片机,内部集成了10位多路A/D转换模块,适用于常用检测电路。设计不用外接AD将酒精的电压信号进行转化。使用非常方便。醉酒阈值存储在EEPROM芯片AT24C04中,并可以通过 “增加”、“减少”按键调节并保存。AT24C04是IIC接口的EEPROM芯片,可以用于掉电不易失数据的存储。四、 实施计划(自己写)2012/10/12-2012/10/20Protel原理图设计2012/10/21-2012/11/15单片机程序的编写2012/11/20-2012/11/29PCB烂板,焊接2012/12/1-2012/12/8下载机联合调试,测试功能2012/11/25-2012/12/14论文撰写五、 参考文献1 周良权 傅恩锡 李世馨 编 模拟电子技术基础(第三版)M.北京:高等教育出版社,20052 张玉莲 编 电子CAD(Protel99SE)实训指导书(第一版)M.西安电子科技大学出版社,20073 林春景 编模拟电子线路(21世纪普通高等教育电子信息类规划教材) (第一版)M. 机械工业出版社,20094 全国大学生电子设计竞赛组委会编. 全国大学生电子设计竞赛获奖作品选编. 北京:北京理工大学出版社,2005年3月第1版5苏成富.多功能音乐门铃J.电机电器技术,2000,第3期:20-21.6魏俊民机电一体化系统设计D北京:中国纺织出版社,l998.7侯文芳.Protel99SE在电子技术实验中的应用J.科技信息,2011,第2期:238-238.8王毅单片机器件应用手册D北京:人民邮电出版社,1994.9吴宁.80X86/Pentium微型计算机原理及应用M.北京:电子工业出版社,2004:1-249.10肖金球.单片机原理与接口技术M.北京:清华大学出版社,2004:1-323.ABCDDCBATitleNumberRevisionSizeADate:29-May-2014Sheet of File:F:套件34-液晶酒精浓度2-电路图酒精.ddbDrawn By:12345678910111213141516J2+5V液晶屏接口液晶屏接口P27P26P25P00P01P02P03P04P07P06P05R31.5KR410K+5VGNDGND传感器电路传感器电路AOUTY112MC230pFC330pFR210KC110uF+5VGNDGND2402_SDA2402_SCLAOUT单片机系统单片机系统P00P01P02P03P04P05P06P07P27P26P25L2warn11A2KL3warn2+5VR61kR51kK3HH-K2HH+GNDRST9RXD/P3.010INT0/P3.212INT1/P3.313T0/P3.414T1/P3.515EA/VPP31XTAL119GND20P0.0/AD039P0.1/AD138P0.2/AD237P0.3AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.0/ADC01P1.1/ADC12P1.2/ADC23P1.3/ADC34P1.4/ADC45P1.5/ADC56P1.6/ADC67P1.7/ADC78P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427P2.7/A1528ALE/PROG30TXD/P3.111WR/P3.616RD/P3.717PSEN29XTAL218VCC40U1STC12C5A16ADR1010k+5VA01A12A23Vss4Vcc8WP7SCL6SDA5U224C01AR910kGND2402_SCL2402_SDAEEPROM存储器电路存储器电路DOUTDOUTCOM1R12R23R34R45R56R67R78R89RP110K321P1POWER112233445566S1A1F2A3B4F5B6RL3MQ-3R8470R75.1C4104C5104OUT1IN2AC3GND4567VCC8LM393RT110kR110k供电电路供电电路GNDGNDGND+5V+5V+5VQ19012LS1SPEAKERR112.2kSF1SW SPST+5VGNDPrint to PDF without this message by purchasing novaPDF (/)单片机最小系统的相关知识单片机最小系统,或者称为最小应用系统,是指用最少的元件组成的单片机可以工作的系统。对51系列单片机来说,最小系统一般应该包括:单片机、晶振电路、复位电路。下面给出一个51单片机的最小系统电路图。 复位电路:一、复位电路的用途:单片机复位电路就好比电脑的重启部分,当电脑在使用中出现死机,按下重启按钮电脑内部的程序从头开始执行。单片机也一样,当单片机系统在运行中,受到环境干扰出现程序跑飞的时候,按下复位按钮内部的程序自动从头开始执行。单片机复位电路如下图: 二、复位电路的工作原理在书本上有介绍,51单片机要复位只需要在第9引脚接个高电平持续2US就可以实现,那这个过程是如何实现的呢?在单片机系统中,系统上电启动的时候复位一次,当按键按下的时候系统再次复位,如果释放后再按下,系统还会复位。所以可以通过按键的断开和闭合在运行的系统中控制其复位。开机的时候为什么会复位:在电路图中,电容的的大小是10uF,电阻的大小是10k。所以根据公式,可以算出电容充电到电源电压的0.7倍(单片机的电源是5V,所以充电到0.7倍即为3.5V),需要的时间是10K*10UF=0.1S。也就是说在单片机启动的0.1S内,电容两端的电压时在03.5V增加。这个时候10K电阻两端的电压为从51.5V减少(串联电路各处电压之和为总电压)。所以在0.1S内,RST引脚所接收到的电压是5V1.5V。在5V正常工作的51单片机中小于1.5V的电压信号为低电平信号,而大于1.5V的电压信号为高电平信号。所以在开机0.1S内,单片机系统自动复位(RST引脚接收到的高电平信号时间为0.1S左右)。按键按下的时候为什么会复位:在单片机启动0.1S后,电容C两端的电压持续充电为5V,这是时候10K电阻两端的电压接近于0V,RST处于低电平所以系统正常工作。当按键按下的时候,开关导通,这个时候电容两端形成了一个回路,电容被短路,所以在按键按下的这个过程中,电容开始释放之前充的电量。随着时间的推移,电容的电压在0.1S内,从5V释放到变为了1.5V,甚至更小。根据串联电路电压为各处之和,这个时候10K电阻两端的电压为3.5V,甚至更大,所以RST引脚又接收到高电平。单片机系统自动复位。晶振电路:晶振电路:晶振是晶体振荡器的简称 在电气上它可以等效成一个电容和一个电阻并联再串联一个电容的二端网络 电工学上这个网络有两个谐振点 以频率的高低分其中较低的频率是串联谐振 较高的频率是并联谐振 由于晶体自身的特性致使这两个频率的距离相当的接近 在这个极窄的频率范围内 晶振等效为一个电感 所以只要晶振的两端并联上合适的电容它就会组成并联谐振电路 这个并联谐振电路加到一个负反馈电路中就可以构成正弦波振荡电路 由于晶振等效为电感的频率范围很窄 所以即使其他元件的参数变化很大 这个振荡器的频率也不会有很大的变化晶振有一个重要的参数 那就是负载电容值 选择与负载电容值相等的并联电容 就可以得到晶振标称的谐振频率一般的晶振振荡电路都是在一个反相放大器(注意是放大器不是反相器)的两端接入晶振 再有两个电容分别接到晶振的两端 每个电容的另一端再接到地 这两个电容串联的容量值就应该等于负载电容 请注意一般IC的引脚都有等效输入电容 这个不能忽略一般的晶振的负载电容为15pF或12.5pF 如果再考虑元件引脚的等效输入电容 则两个22pF的电容构成晶振的振荡电路就是比较好的选择如上图:晶振是给单片机提供工作信号脉冲的 这个脉冲就是单片机的工作速度 比如 12M晶振 单片机工作速度就是每秒12M 当然单片机的工作频率是有范围的不能太大 一般24M就不上去了 不然不稳定晶振与单片机的脚XTAL0和脚XTAL1构成的振荡电路中会产生偕波(也就是不希望存在的其他频率的波) 这个波对电路的影响不大 但会降低电路的时钟振荡器的稳定性 为了电路的稳定性起见 ATMEL公司只是建议在晶振的两引脚处接入两个10pf-50pf的瓷片电容接地来削减偕波对电路的稳定性的影响 所以晶振所配的电容在10pf-50pf之间都可以的 没有什么计算公式P0口的上拉电阻:P0口作为I/O口输出的时候时输出低电平为0输出高电平为高组态(并非5V,相当于悬空状态)。也就是说P0口不能真正的输出高电平,给所接的负载提供电流,因此必须接上拉电阻(一电阻连接到VCC),由电源通过这个上拉电阻给负载提供电流。由于P0口内部没有上拉电阻,是开漏的,不管它的驱动能力多大,相当于它是没有电源的,需要外部的电路提供,绝大多数情况下P0口是必需加上拉电阻的。1.一般51单片机的P0口在作为地址/数据复用时不接上拉电阻。2.作为一般的I/O口时用时,由于内部没有上拉电阻,故要接上上拉电阻!3.当p0口用来驱动PNP管子的时候,就不需要上拉电阻,因为此时的低电平有效;4.当P0口用来驱动NPN管子的时候,就需要上拉电阻的,因为此时只有当P0为1时候,才能够使后级端导通。31脚EA/Vpp接电源:STC89C51/52或其他51系列兼容单片机特别注意:对于31脚(EA/Vpp),当接高电平时,单片机在复位后从内部ROM的0000H开始执行,当接低电平时,复位后直接从外部ROM的0000H开始执行,这一点是初学者容易忽略的。传感器随着检测浓度的变大他的阻止会变小这部分电路我们可以看成是下图那样 (那个1k的电阻可以选取4701k之间,470欧姆的预热老化时间短点)问题都用绿色字体标注网上资料说MQ-3采样电路如图3所示。MQ-3的加热电阻两端即H引脚接电源,用于电阻丝对敏感体电阻的加热。MQ-3的两个A引脚相连,作为敏感体电阻的一个电极;两个B引脚也连接在一起,作为敏感体电阻的另一个电极。将电极A或B接到电源正极,另一个电极与RL并联。MQ-3传感器与电位器RL串联构成分压电路,采样点为电位器的分压。在洁净空气中,传感器的电阻较大,则RL两端的电压较小;当将待测酒精样品靠近MQ-3,其电阻会变小,则RL两端的输出电压就会变大。MQ-3的阻值对不同浓度的酒精溶液有不同的变化,对应的电位器的分压值也会发生相应的变化,即一个电压值对应一个酒精浓度。对酒精气体浓度的采样可以转化为对电位器分压的采样。 图3 MQ-3采样电路红字部分的资料意思是否是 :MQ-3输出的是电压信号?但是有的资料说是电阻信号实际是电阻信号 就是浓度不同阻值不同 再通过电阻分压 就可以变成电压信号给393 电压比较亲的资料说MQ-3乙醇气体传感器及其调理电路原理如图4所示。其外形如图5所示。经过调理,检测信号由电阻值转变成电压值,便于后续电路进行A/D转换和处理。图4 传感器及调理模块原理图图5 MQ-3传感器模块外形图该传感器模块具有如下特点,方便与单片机系统接口组成检测仪器。l 具有信号输出指示。l 双路信号输出(模拟量输出及TTL电平输出)l TTL输出有效信号为低电平。(当输出低电平时信号灯亮,可直接接单片机) l 模拟量输出05V电压,浓度越高电压越高。图4中的p1应该是LM393,它的输出端口是2脚和3三脚?2脚输出数字高低电平,何时是高电平,何时低电平?现在没有用到这个模块 是吧这个模块拆开了,焊机到板子上了 p1是排阵接口 实际393的数字量输出是1脚 排阵的2脚dout 当浓度超的时候是低电平 平常是高电平状态 此图中传感器模块的LM393的1脚out输出的是?2脚in输入的是?此图中LM393不知哪两个管脚是输出?LM393的1脚dout、2脚aout,和单片机的5脚dout,8脚aout是什么关系?393是电压比较电路 就是2脚和3脚的电压比较 只要3脚的电压高于2脚的 1脚就输出低电平 393的2脚和3脚都是采集电压信号的 protel图中 棕色的标号 就代表相连。焊接的时候要链接到一起。该芯片为52内核8位单片机,内部集成了10位多路A/D转换模块,适用于常用检测电路。由STC12C5A16AD组成的单片机系统原理图如图7所示。图中AOUT为MQ-3传感器模块输出的检测电压信号,送入ADC7端口进行处理,DOUT为传感器模块输出的数字电平信号,该信号可以根据乙醇气体浓度直接输出报警信号,报警阈值通过模块上的电位器进行调节。 这句是什么意思? 实际就是改变3脚的电压 比如说 我调电位器调到3脚的分压为2.2v 那么2脚得小于2.2v才会有输出 同样如果3脚的分压是4.2v那就2脚就得小于4.2有输出 而2脚的电压值变化就是传感器控制的 图7 单片机系统原理图 图7中,按键K2和K3为醉酒阈值调整键,其中K2为“增加”,K3为“减小”按键。L2和L3为报警指示灯,分别可以进行酒后和醉酒两级报警。阈值通过k2,k3调节,通过单片机的1、2脚传入存储器?总之是不知道信号具体是怎么传输的?从哪个器件的几号管脚到哪个器件的几号管脚?还有对于传感器模块的原理不明白。按键是低电平有效 接了一个上拉电阻 起到稳定的作用 实际那个电阻可以不接的 您了解下393就会懂的希望卖家能指点一下,谢谢在日常生活中,我们对液晶显示器并不陌生。液晶显示模块已作为很多电子产品的通过器件,如在计算器、万用表、电子表及很多家用电子产品中都可以看到,显示的主要是数字、专用符号和图形。在单片机的人机交流界面中,一般的输出方式有以下几种:发光管、LED数码管、液晶显示器。发光管和LED数码管比较常用,软硬件都比较简单,在前面章节已经介绍过,在此不作介绍,本章重点介绍字符型液晶显示器的应用。 在单片机系统中应用晶液显示器作为输出器件有以下几个优点:显示质量高由于液晶显示器每一个点在收到信号后就一直保持那种色彩和亮度,恒定发光,而不像阴极射线管显示器(CRT)那样需要不断刷新新亮点。因此,液晶显示器画质高且不会闪烁。数字式接口液晶显示器都是数字式的,和单片机系统的接口更加简单可靠,操作更加方便。体积小、重量轻液晶显示器通过显示屏上的电极控制液晶分子状态来达到显示的目的,在重量上比相同显示面积的传统显示器要轻得多。功耗低相对而言,液晶显示器的功耗主要消耗在其内部的电极和驱动IC上,因而耗电量比其它显示器要少得多。1081 液晶显示简介液晶显示原理液晶显示的原理是利用液晶的物理特性,通过电压对其显示区域进行控制,有电就有显示,这样即可以显示出图形。液晶显示器具有厚度薄、适用于大规模集成电路直接驱动、易于实现全彩色显示的特点,目前已经被广泛应用在便携式电脑、数字摄像机、PDA移动通信工具等众多领域。液晶显示器的分类液晶显示的分类方法有很多种,通常可按其显示方式分为段式、字符式、点阵式等。除了黑白显示外,液晶显示器还有多灰度有彩色显示等。如果根据驱动方式来分,可以分为静态驱动(Static)、单纯矩阵驱动(Simple Matrix)和主动矩阵驱动(Active Matrix)三种。液晶显示器各种图形的显示原理:线段的显示点阵图形式液晶由MN个显示单元组成,假设LCD显示屏有64行,每行有128列,每8列对应1字节的8位,即每行由16字节,共168=128个点组成,屏上6416个显示单元与显示RAM区1024字节相对应,每一字节的内容和显示屏上相应位置的亮暗对应。例如屏的第一行的亮暗由RAM区的000H00FH的16字节的内容决定,当(000H)=FFH时,则屏幕的左上角显示一条短亮线,长度为8个点;当(3FFH)=FFH时,则屏幕的右下角显示一条短亮线;当(000H)=FFH,(001H)=00H,(002H)=00H,(00EH)=00H,(00FH)=00H时,则在屏幕的顶部显示一条由8段亮线和8条暗线组成的虚线。这就是LCD显示的基本原理。字符的显示用LCD显示一个字符时比较复杂,因为一个字符由68或88点阵组成,既要找到和显示屏幕上某几个位置对应的显示RAM区的8字节,还要使每字节的不同位为“1”,其它的为“0”,为“1”的点亮,为“0”的不亮。这样一来就组成某个字符。但由于内带字符发生器的控制器来说,显示字符就比较简单了,可以让控制器工作在文本方式,根据在LCD上开始显示的行列号及每行的列数找出显示RAM对应的地址,设立光标,在此送上该字符对应的代码即可。汉字的显示汉字的显示一般采用图形的方式,事先从微机中提取要显示的汉字的点阵码(一般用字模提取软件),每个汉字占32B,分左右两半,各占16B,左边为1、3、5右边为2、4、6根据在LCD上开始显示的行列号及每行的列数可找出显示RAM对应的地址,设立光标,送上要显示的汉字的第一字节,光标位置加1,送第二个字节,换行按列对齐,送第三个字节直到32B显示完就可以LCD上得到一个完整汉字。1082 1602字符型LCD简介字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式LCD,目前常用16*1,16*2,20*2和40*2行等的模块。下面以长沙太阳人电子有限公司的1602字符型液晶显示器为例,介绍其用法。一般1602字符型液晶显示器实物如图10-53:图10-53 1602字符型液晶显示器实物图108.2.1 1602LCD的基本参数及引脚功能1602LCD分为带背光和不带背光两种,基控制器大部分为HD44780,带背光的比不带背光的厚,是否带背光在应用中并无差别,两者尺寸差别如下图10-54所示:图10-54 1602LCD尺寸图1602LCD主要技术参数:显示容量:162个字符芯片工作电压:4.55.5V工作电流:2.0mA(5.0V)模块最佳工作电压:5.0V字符尺寸:2.954.35(WH)mm引脚功能说明1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表10-13所示:编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极表10-13:引脚接口说明表第1脚:VSS为地电源。第2脚:VDD接5V正电源。第3脚:VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。第15脚:背光源正极。第16脚:背光源负极。10823 1602LCD的指令说明及时序1602液晶模块内部的控制器共有11条控制指令,如表10-14所示:序号指令RSR/WD7D6D5D4D3D2D1D01清显示00000000012光标返回000000001*3置输入模式00000001I/DS4显示开/关控制0000001DCB5光标或字符移位000001S/CR/L*6置功能00001DLNF*7置字符发生存贮器地址0001字符发生存贮器地址8置数据存贮器地址001显示数据存贮器地址9读忙标志或地址01BF计数器地址10写数到CGRAM或DDRAM)10要写的数据内容11从CGRAM或DDRAM读数11读出的数据内容表10-14:控制命令表1602液晶模块的读写操作、屏幕和光标的操作都是通过指令编程来实现的。(说明:1为高电平、0为低电平)指令1:清显示,指令码01H,光标复位到地址00H位置。指令2:光标复位,光标返回到地址00H。指令3:光标和显示模式设置 I/D:光标移动方向,高电平右移,低电平左移 S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则无效。指令4:显示开关控制。 D:控制整体显示的开与关,高电平表示开显示,低电平表示关显示 C:控制光标的开与关,高电平表示有光标,低电平表示无光标 B:控制光标是否闪烁,高电平闪烁,低电平不闪烁。指令5:光标或显示移位 S/C:高电平时移动显示的文字,低电平时移动光标。指令6:功能设置命令 DL:高电平时为4位总线,低电平时为8位总线 N:低电平时为单行显示,高电平时双行显示 F: 低电平时显示5x7的点阵字符,高电平时显示5x10的点阵字符。指令7:字符发生器RAM地址设置。指令8:DDRAM地址设置。指令9:读忙信号和光标地址 BF:为忙标志位,高电平表示忙,此时模块不能接收命令或者数据,如果为低电平表示不忙。指令10:写数据。指令11:读数据。与HD44780相兼容的芯片时序表如下:读状态输入RS=L,R/W=H,E=H输出D0D7=状态字写指令输入RS=L,R/W=L,D0D7=指令码,E=高脉冲输出无读数据输入RS=H,R/W=H,E=H输出D0D7=数据写数据输入RS=H,R/W=L,D0D7=数据,E=高脉冲输出无表10-15:基本操作时序表读写操作时序如图10-55和10-56所示:图10-55 读操作时序图10-56 写操作时序10824 1602LCD的RAM地址映射及标准字库表液晶显示模块是一个慢显示器件,所以在执行每条指令之前一定要确认模块的忙标志为低电平,表示不忙,否则此指令失效。要显示字符时要先输入显示字符地址,也就是告诉模块在哪里显示字符,图10-57是1602的内部显示地址。图10-57 1602LCD内部显示地址例如第二行第一个字符的地址是40H,那么是否直接写入40H就可以将光标定位在第二行第一个字符的位置呢?这样不行,因为写入显示地址时要求最高位D7恒定为高电平1所以实际写入的数据应该是01000000B(40H)+10000000B(80H)=11000000B(C0H)。在对液晶模块的初始化中要先设置其显示模式,在液晶模块显示字符时光标是自动右移的,无需人工干预。每次输入指令前都要判断液晶模块是否处于忙的状态。1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,如图10-58所示,这些字符有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“A”的代码是01000001B(41H),显示时模块把地址41H中的点阵字符图形显示出来,我们就能看到字母“A”图10-58 字符代码与图形对应图10825 1602LCD的一般初始化(复位)过程延时15mS写指令38H(不检测忙信号)延时5mS写指令38H(不检测忙信号)延时5mS写指令38H(不检测忙信号)以后每次写指令、读/写数据操作均需要检测忙信号写指令38H:显示模式设置写指令08H:显示关闭写指令01H:显示清屏写指令06H:显示光标移动设置写指令0CH:显示开及光标设置1083 1602LCD的软硬件设计实例在1602LCD第一行显示网站名:在第二行显示联系电话:0571-85956028。实验前应先将显示切换开关切换到LCD工作状态。图10-59 1602LCD实验演示图10831 硬件原理图1602液晶显示模块可以和单片机AT89C51直接接口,电路如图10-60所示。图10-60 硬件原理图10832 程序流程图图10-61 软件流程图10833 软件代码#include #include sbit rs= P20;sbit rw = P21;sbit ep = P22;unsigned char code dis1 = ;unsigned char code dis2 = 0772-2686915;void delay(unsigned char ms)unsigned char i;while(ms-)for(i = 0; i 250; i+)_nop_();_nop_();_nop_();_nop_();bit lcd_bz()bit result;rs = 0;rw = 1;ep = 1;_nop_();_nop_();_nop_();_nop_();result = (bit)(P0 & 0x80);ep = 0;return result;void lcd_wcmd(unsigned char cmd)while(lcd_bz();/判断LCD是否忙碌rs = 0;rw = 0;ep = 0;_nop_();_nop_();P0 = cmd;_nop_();_nop_();_nop_();_nop_();ep = 1;_nop_();_nop_();_nop_();_nop_();ep = 0;void lcd_pos(unsigned char pos)lcd_wcmd(pos | 0x80);void lcd_wdat(unsigned char dat)while(lcd_bz();/判断LCD是否忙碌rs = 1;rw = 0;ep = 0;P0 = dat;_nop_();_nop_();_nop_();_nop_();ep = 1;_nop_();_nop_();_nop_();_nop_();ep = 0;void lcd_init()lcd_wcmd(0x38);delay(1);lcd_wcmd(0x0c);delay(1);lcd_wcmd(0x06);delay(1);lcd_wcmd(0x01);delay(1);void main(void)unsigned char i;lcd_init();/ 初始化LCDdelay(10);lcd_pos(0x01);/设置显示位置i = 0;while(dis1i != 0)lcd_wdat(dis1i);/显示字符i+;lcd_pos(0x42);/ 设置显示位置i = 0;while(dis2i != 0)lcd_wdat(dis2i);/ 显示字符i+;上拉电阻总结上拉电阻: 1、当TTL电路驱动COMS电路时,如果TTL电路输出的高电平低于COMS电路的最低高电平(一般为3.5V),这时就需要在TTL的输出端接上拉电阻,以提高输出高电平的值。 2、OC门电路必须加上拉电阻,才能使用。 3、为加大输出引脚的驱动能力,有的单片机管脚上也常使用上拉电阻。 4、在COMS芯片上,为了防止静电造成损坏,不用的管脚不能悬空,一般接上拉电阻产生降低输入阻抗,提供泄荷通路。 5、芯片的管脚加上拉电阻来提高输出电平,从而提高芯片输入信号的噪声容限增强抗干扰能力。 6、提高总线的抗电磁干扰能力。管脚悬空就比较容易接受外界的电磁干扰。 7、长线传输中电阻不匹配容易引起反射波干扰,加上下拉电阻是电阻匹配,有效的抑制反射波干扰。上拉电阻阻值的选择原则包括: 1、从节约功耗及芯片的灌电流能力考虑应当足够大;电阻大,电流小。 2、从确保足够的驱动电流考虑应当足够小;电阻小,电流大。 3、对于高速电路,过大的上拉电阻可能边沿变平缓。综合考虑以上三点,通常在1k到10k之间选取。对下拉电阻也有类似道理对上拉电阻和下拉电阻的选择应结合开关管特性和下级电路的输入特性进行设定,主要需要考虑以下几个因素: 1 驱动能力与功耗的平衡。以上拉电阻为例,一般地说,上拉电阻越小,驱动能力越强,但功耗越大,设计是应注意两者之间的均衡。 2 下级电路的驱动需求。同样以上拉电阻为例,当输出高电平时,开关管断开,上拉电阻应适当选择以能够向下级电路提供足够的电流。 3 高低电平的设定。不同电路的高低电平的门槛电平会有不同,电阻应适当设定以确保能输出正确的电平。以上拉电阻为例,当输出低电平时,开关管导通,上拉电阻和开关管导通电阻分压值应确保在零电平门槛之下。 4 频率特性。以上拉电阻为例,上拉电阻和开关管漏源级之间的电容和下级电路之间的输入电容会形成RC延迟,电阻越大,延迟越大。上拉电阻的设定应考虑电路在这方面的需求。下拉电阻的设定的原则和上拉电阻是一样的。OC门输出高电平时是一个高阻态,其上拉电流要由上拉电阻来提供,设输入端每端口不大于100uA,设输出口驱动电流约500uA,标准工作电压是5V,输入口的高低电平门限为0.8V(低于此值为低电平);2V(高电平门限值)。选上拉电阻时:500uA x 8.4K= 4.2即选大于8.4K时输出端能下拉至0.8V以下,此为最小阻值,再小就拉不下来了。如果输出口驱动电流较大,则阻值可减小,保证下拉时能低于0.8V即可。当输出高电平时,忽略管子的漏电流,两输入口需200uA200uA x15K=3V即上拉电阻压降为3V,输出口可达到2V,此阻值为最大阻值,再大就拉不到2V了。选10K可用。COMS门的可参考74HC系列设计时管子的漏电流不可忽略,IO口实际电流在不同电平下也是不同的,上述仅仅是原理,一句话概括为:输出高电平时要喂饱后面的输入口,输出低电平不要把输出口喂撑了(否则多余的电流喂给了级联的输入口,高于低电平门限值就不可靠了) 在数字电路中不用的输入脚都要接固定电平,通过1k电阻接高电平或接地。1. 电阻作用:l 接电组就是为了防止输入端悬空l 减弱外部电流对芯片产生的干扰l 保护cmos内的保护二极管,一般电流不大于10mAl 上拉和下拉、限流l 1. 改变电平的电位,常用在TTL-CMOS匹配2. 在引脚悬空时有确定的状态3.增加高电平输出时的驱动能力。4、为OC门提供电流l 那要看输出口驱动的是什么器件,如果该器件需要高电压的话,而输出口的输出电压又不够,就需要加上拉电阻。l 如果有上拉电阻那它的端口在默认值为高电平你要控制它必须用低电平才能控制如三态门电路三极管的集电极,或二极管正极去控制把上拉电阻的电流拉下来成为低电平。反之,l 尤其用在接口电路中,为了得到确定的电平,一般采用这种方法,以保证正确的电路状态,以免发生意外,比如,在电机控制中,逆变桥上下桥臂不能直通,如果它们都用同一个单片机来驱动,必须设置初始状态.防止直通!2、定义:l 上拉就是将不确定的信号通过一个电阻嵌位在高电平!电阻同时起限流作用!下拉同理!l 上拉是对器件注入电流,下拉是输出电流l 弱强只是上拉电阻的阻值不同,没有什么严格区分l 对于非集电极(或漏极)开路输出型电路(如普通门电路)提升电流和电压的能力是有限的,上拉电阻的功能主要是为集电极开路输出型电路输出电流通道。3、为什么要使用拉电阻:l 一般作单键触发使用时,如果IC本身没有内接电阻,为了使单键维持在不被触发的状态或是触发后回到原状态,必须在IC外部另接一电阻。l 数字电路有三种状态:高电平、低电平、和高阻状态,有些应用场合不希望出现高阻状态,可以通过上拉电阻或下拉电阻的方式使处于稳定状态,具体视设计要求而定!l 一般说的是I/O端口,有的可以设置,有的不可以设置,有的是内置,有的是需要外接,I/
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
提示  人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
关于本文
本文标题:基于51单片机的防醉酒驾驶设计
链接地址:https://www.renrendoc.com/p-34123386.html

官方联系方式

2:不支持迅雷下载,请使用浏览器下载   
3:不支持QQ浏览器下载,请用其他浏览器   
4:下载后的文档和图纸-无水印   
5:文档经过压缩,下载后原文更清晰   
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

网站客服QQ:2881952447     

copyright@ 2020-2025  renrendoc.com 人人文库版权所有   联系电话:400-852-1180

备案号:蜀ICP备2022000484号-2       经营许可证: 川B2-20220663       公网安备川公网安备: 51019002004831号

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