出租车里程计价器设计_第1页
出租车里程计价器设计_第2页
出租车里程计价器设计_第3页
出租车里程计价器设计_第4页
出租车里程计价器设计_第5页
已阅读5页,还剩25页未读, 继续免费阅读

下载本文档

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

文档简介

第1章绪论1.1研究目的及意义随着我国经济的迅速发展,人民生活水平的显著提高,城市交通的日趋完善,出租车计价器的应用也越来越广泛,虽然私家车的拥有量在大幅度地提高,但是出租车在我国的交通运输中还是承担着重要的角色,出租车计价器是出租车上必不可少的重要仪器,它是负责出租车营运收费的专用智能化仪表,用户不仅要求计价器性能、计价准确而且对它的要求也越来越高,单一功能的计价器已经不能满足人们的需要。因此,多功能计价器也就应运而生,比如语音功能,查询功能,甚至好多城市交通iC卡也能在出租车上使用查询功能,就大大方便了人们的出行。1.2国内外研究现状国内出租车计价器已经经历了四个阶段的发展,从传统的全部由机械元器件组成的机械式,到半电子式即用电子线路代替部分机械元器件的出租车计价器,再从集成电路式到目前的单片机系统设计的出租车计价器。早期的机械式计价器按车所跑的里程数来换算车费。但是机械齿轮体积较大计算不是很准确,而且容易磨损。后来采用模拟电路和数字电路设计的计价,其整体电路的规模较大,用到的器件多,造成故障率高,难调试,对于模式的切换需要角到机械开关,机械并关时间久了会造成接触不良,功能不实现。为此我们采用了单片机进行设计,相对来说功能强大,用较少的硬和适当的软件相互配合可以很容易的实现设计要求,且灵活性强,可以通过软件编程来完成更多的附加功能我国在70年代开始出现出租车,但那时的计费系统大都是国外进口,不但不准确,价格还十分昂贵。随着改革开放日益深入,出租车行业的发展势头已十分突出,国内各机械广家纷纷推出国产计价器。出租车计价器的功能从刚开始的只显示路程(需要司机自己定价,计算后四舍五入),到能够自主计费,以及现在的能够打发票和语音提示等功能。1.3主要研究内容本设计是一种基于单片机技术的出租车里程计价器设计。这款设计采用功能较强的单片机,进行电源监控,利用液晶屏显示时间里程和费用,通过蓝牙模块进行上位机的连接显示,实现的功能如下,1.DS1302时钟芯片准确计时,AT24C02掉电存储设置的数据;2.电机模拟发动机,转速可以通过电位器调整快慢;3.霍尔传感器测量电机的转速;4.LCD1602液晶显示,年月日时分秒、里程和计价;5.有两种计价模式:按里程计价、按时间计价(当电机转速很慢的时候会自动跳转到按乘坐时间计价);6.按键可以设置时间、价格。四个按键:切换、加、减、设置。7.通过蓝牙模块进行上下位机连接。

第2章系统总体结构2.1设计方案文献研究法。通过查阅文献来获得研究资料,对系统设计中所涉及到的相关内容进行研究,初步构想系统要实现的功能及其运用的技术并搜集相关资料,作为系统设计的素材。功能分析法。功能分析法是社会科学用来分析社会现象的一种方法,是社会调查常用的分析方法之一。本系统通过功能分析法,对软件的各项功能进行具体分析,从而明确开发目标。定性分析法。通过对文献的研究,运用归纳和演绎、分析与综合以及抽象与概括等方法,深入了解软件和硬件开发的相关技术,从而熟悉系统中各个功能模块之间的关系,掌握系统的工作原理及其本质,确定开发流程。经验总结法。希望通过已有的每一块功能的结合进行总结,设计出一套优良的系统,并规范的编写程序。2.2功能需求分析2.2.1技术路线:1.硬件部分需要单片机主控模块、按键及显示模块、通信模块、电源模块;2.设计中采用LCD1602液晶显示设定里程时间以及费用情况;3.设计时有几项需要注意的问题,尽量不要使用IC插座,软件编程时应采用指令冗余技术防止计费器死机;4.设计结构框图.2.2.2预期结果:1.学会独立完成系统的分析,设计;2.设计的结果具有实用性、科学性。3.建立“单片机”,“时钟电路”,“实时时钟”三部分结构。4.硬件制作完成后进行软件调试。5.设计电路图。6.完成设计,进行实验。7.撰写毕业论文.2.3总体方案设计第一:理论知识准备阶段,理解设计课题,认真研究课题所涉及到的内容,能够较好的掌握有关题目的知识; 第二:确定系统各个模块,理清各个模块之间的关系,收集相关得到软硬件资料; 第三:规划课题,确定系统组成结构,勾画出大体系统框架并在结构框架的基础上提出原理框图; 第四:利用软件完成硬件电路部分设计并画出各部分电路图,将系统部件通过接口电路集合在一起,并画出电路图; 第五:根据系统控制过程完成软件设计部分,绘制出主流程图; 第六:进行模拟仿真,检查系统是否能够按照要求实现控制功能,整理论文。2.4单片机型号选择方案一:系统微处理器选择STM32F103VBT6单片机。采用了先进的Cortex-M3内核结构,主频高达72MHz,具有128KB的闪存和20KB的RAM,具有丰富的片上外设:包括16通道的12位A/D转换器、7通道的DMA控制器、16位定时器、USART接口、CAN接口(2.0B)和USB2.0全速接口(12Mbps)等。STM32F103VBT6处理器拥有80个快速的多功能双向5V兼容的I/O口,芯片内所有的I/O口都可以映射到16个中断上,芯片的每个I/O都是由C语言代码控制输出(推拉或开路)、输入(带或不带上拉或下拉),多数I/O管脚都与数字或模拟的外设共用,所有的I/O管脚都有大电流通过能力。方案二:主控制芯片选择STC89C52单片机,STC89C52是STC公司生产的一种低功耗、高性能8位微控制器。这种单片机其内部有8KB的FlashROM和512B的RAM,并且可以通过串口进行ISP程序下载,不需要反复插拔芯片,非常适合用于实验。采用此片作为硬件核心,采用FlashROM,能以3V的超低电压工作。且具有在线编程可擦除技术,当在对电路进行调试时,由于程序的错误修改或对程序的新增功能需要烧入程序时,不需要对芯片多次拔插,所以不会对芯片造成损坏。主要是考虑到此种单片机在程序编写以及引脚分布的过程中与学校教学基本一致,因此在实际应用中上手简单,易于操作。STC89C52单片机在分装结构中包括DIP和ISOP两种类型,两者的主要区别是前者是直插,后者则为贴片方式。此次设计选取的是DIP直插类型。STC89C52单片机共有40个引脚,包括电源引脚、晶振配置引脚、复位引脚、I/0口输入输出引脚。I/O口引脚可分为4组,分别对应PO-P3,在程序的编写过程中,主要是利用对I/0口进行操作来完成程序编写。在实际程序的编写过程中,不仅可以直接对单个引脚进行操作,同时也可以对一组单片机的引脚进行程序的编写,保证用户在实际程序编写过程中的便捷。STC89C52单片机在程序指令的选择上采用MCS-51指令集,这其中集成了8K的FLASH,主要是考虑到用户在下载程序的过程中,由于反复擦写,内部数据不会出现丢失。STC89C52单片机内部自带定时器、串口通信等功能,便于单片机与外部的芯片进行连接,整体上实现系统产品设计的功能。52单片机和32单片机是两种常见的微控制器系列,它们在架构和性能方面存在一些区别,52单片机相对于32单片机几个优势:更高的性能:52单片机通常采用8位的架构,而32单片机采用32位的架构。32位架构具有更大的寄存器和数据总线宽度,可以进行更快速的数据处理和计算,因此具备更高的性能。更大的存储容量:52单片机通常具有更大的闪存和RAM存储容量。这使得开发者能够存储更多的代码和数据,从而支持更复杂的应用程序和算法。更多的外设接口:52单片机通常具有更多的外设接口,如串口、SPI、I2C等。这使得它们能够更方便地与其他设备进行通信和交互,扩展更多的功能。更强的计时和计数能力:由于52单片机具有更高的时钟频率和计时/计数单元,因此在需要精确计时和计数的应用中,52单片机更为适用。它们可以更准确地控制定时器、PWM输出和中断处理。更丰富的指令集:52单片机通常具有更丰富的指令集,包括更多的算术运算、逻辑运算和位操作指令。这使得编程更加灵活和高效,能够更好地满足复杂应用的需求。这里选择方案二。本实验‎‏采用的最小系统如下图。图2-152单片机最小系统原理图

第3章系统的硬件部分设计3.1系统总体设计本文设计根据文献研究法。通过查阅文献来获得研究资料,对系统设计中所涉及到的相关内容,如STC89C52单片机引脚接线、绘制PCB板等,初步构想系统要实现的功能及其运用的技术并搜集相关资料,作为系统设计的素材。功能分析法。功能分析法是社会科学用来分析社会现象的一种方法,是社会调查常用的分析方法之一。本系统通过功能分析法,对软件的各项功能进行具体分析,从而明确开发目标。定性分析法。通过对文献的研究,运用归纳和演绎、分析与综合以及抽象与概括等方法,深入了解软件和硬件开发的相关技术,从而熟悉系统中各个功能模块之间的关系,掌握系统的工作原理及其本质,确定开发流程。(1)硬件部分需要单片机STC89C52、TFT显示屏模块、TTP223触摸传感器模块、SG90舵机模块、步进电机、蓝牙模块(2)软件平台程序用keil5;(3)编程语言用C语言;总体原理图如下所示:图3-1总体原理图3.2系统的主要功能模块设计3.2.1步近电机电路设计ES3144从双极技术制造的。它采用霍尔板、电压调节器,反电压保护器,采用信号放大器的施密特触发电路。晶体管的集电极开路输出驱动器。ES3144工作范围和操作温度范围宽,十分适合在汽车上做固态电子开关及家用电器制品。ES3144有一个小的SOT-233L和单线的TO-92S3L封装包,都符合RoHS标准。To-92s包装,当S极的包标记侧和垂直的磁场的霍尔传感器的经营点超过阈值(即B>B>0),输出晶体管导通,且电压低。它不能触发芯片工作时,N极面的包标记的一面,但它可以打开它,当N极面的包标记侧对面。采用SOT–23封装装置从TO-92S反转,它需要N极的工作包的标记的一面。如图3-2霍尔传感器电路原理图。图3-2霍尔传感器电路原理图3.2.2DS1302电路设计DS1302是美国DALLAS公司推出的一种高性能、低功耗的实时时钟芯片,附加31字节静态RAM,采用SPI三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号和RAM数据。实时时钟可提供秒、分、时、日、星期、月和年,一个月小与31天时可以自动调整,且具有闺年补偿功能。工作电压宽达2.5~5.5V。采用双电源供电(主电源和备用电源),可设置备用电源充申方式,提供了对后背电源进行滑细电流充电的能力。DS1302的外部引脚分配如图1所示及内部结构如图2所示。DS1302用于数据记录特别是对某些具有特殊意义的数据点的记录上,能实现数据与出现该数据的时间同时记录,因此广泛应用于测量系统中。DS1302电路原理图如下图。图3-3DS1302原理图3.2.3串行寄存器模块设计CAT24WC01/02/04/08/16是一个1K/2K/4K/8K/16K位串行CMOSEPROM,内部含有128/256/512/1024/2048个8位字节,CATALYST公司的先进CMOS技术实质上减少了器件的功耗,CAT24WC01有一个8字节页写缓冲器,CAT24WC02/04/08/16有一个16字节页写缓冲器,该器件通过IC总线接口进行操作,有一个专门的写保护功能。CAT24WC01/02/04/08/16支持I2C总线数据传送协议I2C总线协议规定任何将数‎‏据传送‎‏到总线‎‏的器‎‏件作为‎‏发送器‎‏任何‎‏从总线‎‏接收数‎‏据的器‎‏件为接‎‏收器‎‏数据传‎‏送是由‎‏产生串‎‏行时钟‎‏和所有‎‏起始停‎‏止信号的主‎‏器件控‎‏制的主器件‎‏和从器‎‏件都可‎‏以作为‎‏发送器‎‏或接收‎‏器但‎‏由主器‎‏件控制‎‏传送数‎‏据发‎‏送或接‎‏收‎‏的模式‎‏通过‎‏器件地‎‏址输入‎‏端A‎‏0A‎‏1和‎‏A2‎‏可以‎‏实现将‎‏最多‎‏8个‎‏24W‎‏C01‎‏和‎‏24W‎‏C02‎‏器件‎‏4个‎‏24‎‏2C0‎‏4器‎‏件,2‎‏个2‎‏4WC‎‏08‎‏器件和‎‏1个‎‏24‎‏WC1‎‏6器‎‏件连接到总线上。图3-4串行寄存器原理图3.2.4屏幕显示电路模块设计基于ILI9163C的1.44英寸彩色TFT显示屏是基于SPI协议的显示屏,分辨率为128x128像素。它可以显示多达262,000种不同的颜色。该模块可以说是1.8英寸TFT显示屏的同级产品,但与1.8英寸TFT显示屏相比,该模块速度更快且具有更好的整体性价比。TFT-LCD液晶显示屏是薄膜晶体管型液晶显示屏,也就是“真彩”(TFT)。TFT液晶为每个像素都设有一个半导体开关,每个像素都可以通过点脉冲直接控制,因而每个节点都相对独立,并可以连续控制,不仅提高了显示屏的反应速度,同时可以精确控制显示色阶,所以TFT液晶的色彩更真。在众多的平板显示器激烈竞争中,何以TFT-LCD能够脱颖而出,成为新一代的主流显示器决不是偶然的,是人类科技发展和思维模式发展的必然。液晶先后避开了困难的发光问题,利用液晶作为光阀的优良特性把发光显示器件分解成两部分,即光源和对光源的控制。作为光源,无论从发光效率、全彩色,还是寿命,都已取得了辉煌的成果,而且还在不断深化之中。LCD发明以来,背光源在不断地进步,由单色到彩色,由厚到薄,由侧置荧光灯式到平板荧光灯式。在发光光源方面取得的最新成果都会为LCD提供新的背光源。随着光源科技的进步,会有更新的更好的光源出现并为LCD所应用。余下的就是对光源的控制,把半导体大规模集成电路的技术和工艺移植过来,成功研制了薄膜晶体管(TFT)生产工艺,实现了对液晶光阀的矩阵寻址控制,解决了液晶显示器的光阀和控制器的配合,从而使液晶显示的优势得以实现。TFT是如何工作的TFT就是“ThinFilmTransistor”的简称,一般代指薄膜液晶显示器,而实际上指的是薄膜晶体管(矩阵)——可以“主动的”对屏幕上的各个独立的象素进行控制,这也就是所谓的主动矩阵TFT(activematrixTFT)的来历。那么图像究竟是怎么产生的呢?基本原理很简单:显示屏由许多可以发出任意颜色的光线的象素组成,只要控制各个象素显示相应的颜色就能达到目的了。在TFTLCD中一般采用背光技术,为了能精确地控制每一个象素的颜色和亮度就需要在每一个像素之后安装一个类似百叶窗的开关,当“百叶窗”打开时光线可以透过来,而“百叶窗”关上后光线就无法透过来。当然,在技术上实际上实现起来就不像刚才说的那么简单。LCD(LiquidCrystalDisplay)就是利用了液晶的特性(当加热时为液态,冷却时就结晶为固态),一般液晶有三种形态:类似粘土的层列(Smectic)液晶类似细火柴棒的丝状(Nematic)液晶类似胆固醇状的(Cholestic)液晶液晶显示器使用的是丝状,当外界环境变化它的分子结构也会变化,从而具有不同的物理特性——就能够达到让光线通过或者阻挡光线的目的——也就是刚才比方的百叶窗。大家知道三原色,所以构成显示屏上的每个像素需上面介绍的三个类似的基本组件来构成,分别控制红、绿、蓝三种颜色。目前使用的最普遍的是扭曲向列TFT液晶显示器(TwistedNematicTFTLCD)。现存的技术差别很大,我们将会在本文的第二部分中详细介绍。在上、下两层上都有沟槽,其中上层的沟槽是纵向排列,而下层是横向排列的。当不加电压液晶处于自然状态,从发光图2a扭曲向列TFT显示器工作原理图示意图层发散过来的光线通过夹层之后,会发生90度的扭曲,从而能在下层顺利透过。当两层之间加上电压之后,就会生成一个电场,这时液晶都会垂直排列,所以光线不会发生扭转——结果就是光线无法通过下层。(2)TFT象素架构:彩色滤光镜依据颜色分为红、绿、蓝三种,依次排列在玻璃基板上组成一组(dotpitch)对应一个象素每一个单色滤光镜称之为子象素(sub-pixel)。也就是说,如果一个TFT显示器最大支持1280×1024分辨率的话,那么至少需要1280×3×1024个子象素和晶体管。对于一个15英寸的TFT显示器(1024×768)那么一个象素大约是0.0188英寸(相当于0.30mm),对于18.1英寸的TFT显示器而言(1280×1024),就是0.011英寸(相当于0.28mm)。大家知道,象素对于显示器是有决定意义的,每个象素越小显示器可能达到的最大分辨率就会越大。不过由于晶体管物理特性的限制,现阶段TFT每个象素的大小基本就是0.0117英寸(0.297mm),所以对于15英寸的显示器来说,分辨率最大只有1280×1024。原理图如下图。图3-5屏幕显示电路原理图3.2.5蓝牙模块设计蓝牙模块的硬件电路设计包括以下几个关键部分:为蓝牙模块提供稳定的电源供应,使用电源滤波电路、稳压器和电容等元件,以确保蓝牙模块正常工作的电源质量和稳定性。蓝牙模块的核心是搭载了蓝牙协议栈的主控芯片,它负责处理蓝牙通信协议和数据传输。在电路设计中,需要将主控芯片与单片机进行连接。蓝牙模块需要一个天线用于发送和接收无线信号。天线的设计需要考虑天线的类型和天线的位置,以确保良好的信号强度和覆盖范围。蓝牙模块通常需要与其他外部设备进行数据交互,因此需要设计相应的外部接口,以便与其他硬件设备进行通信。蓝牙模块的射频部分包括射频收发器和滤波器等元件,用于实现蓝牙信号的发送和接收,并确保与其他频段的干扰信号的隔离。在进行蓝牙模块的硬件电路设计时,需要仔细考虑各个部分之间的连接和布局,确保信号传输的可靠性、电磁兼容性和整体性能。图3-6蓝牙模块原理图

第4章系统的软件设计4.1主程序流程图主程序流程图如下。图4-1主程序流程图4.2按键模块设计当温湿度传感器接通,测试温湿度当时值,如若温度或者湿度超过设定值,则进行降温除湿功能。图4-2按键模块时序图第5章系统测试5.1系统实物图图5-1系统完整实物图5.2测试原理 测试用例要包括欲测试的功能、应输入的数据和预期的输出结果。测试数据应该选用少量、高效的测试数据进行尽可能完备的测试;基本目标是:设计一组发现某个错误或某类错误的测试数据,测试用例应覆盖方面:输入用户实际数据以验证系统是满足需求规格说明书的要求;测试用例中的测试点应首先保证要至少覆盖需求规格说明书中的各项功能,并且正常。5.3显示功能测试图5-2显示模块实物图通过LCD显示屏显示年月日以及当前时间。5.4按键功能测试5-3按键功能测试实物图5-4计价显示实物图5-5计价显示实物图按下右侧第一个按键,年闪烁,可以通过第二个第三个按键进行加减调节年份,再按下右侧第一个按键,跳转到月,以此类推。左侧第一个按键为功能切换按键,显示白天,起步价五元,每公里加两元,通过代码设置晚上起步价升高。5.5电位器调节功能测试5-6电位器调节转速当转动电位器进行对电机的转速调节,逆时针转动,转速逐渐减慢。

第6章总结与展望6.1总结硬件设计:基于52单片机的出租车里程计价器通常包含52单片机微控制器、液晶显示屏、键盘、GPS模块、蜂鸣器等硬件组件。52单片机微控制器作为计价器的核心,负责接收和处理各种输入信号,如键盘输入、GPS信息等,计算行驶里程和费用,并通过液晶显示屏和蜂鸣器进行用户界面和声音提示。软件设计:基于52单片机的出租车里程计价器的软件设计主要包括驱动程序、界面设计和计价算法。驱动程序负责与各硬件组件的通信,包括键盘、液晶显示屏、GPS模块等。界面设计主要包括用户界面的显示和操作,通常通过液晶显示屏和键盘进行交互。计价算法根据不同地区的出租车计价规则,计算行驶里程和费用,通常包括起步价、里程价、时间价、夜间价等计价因素。里程计算:通过GPS模块获取车辆当前位置信息,计算行驶里程,并根据计价算法计算行驶费用。费用显示:通过液晶显示屏显示当前行驶里程、行驶费用、计价规则等信息,方便乘客了解当前行程的费用情况。数据存储:可以将行驶里程和费用等数据进行存储,方便后续的数据统计和管理。可扩展性:基于52单片机的出租车里程计价器具有较好的可扩展性,可以根据需求进行功能扩展。例如,可以添加蓝牙模块,实现与手机的无线通信,方便乘客查看行程信息和支付费用。还可以添加车辆状态监测模块,实现对车辆状态的实时监测,如速度、油耗等信息的获取,从而进一步优化计价算法。此外,还可以添加其他功能,如乘客评价、车辆调度等,以满足不同地区和运营商的需求。可靠性:基于52单片机的出租车里程计价器通常采用嵌入式系统设计,具有较高的可靠性。52单片机微控制器作为计价器的核心,具有强大的处理能力和稳定的性能,可以保证计价器的稳定运行。同时,合理的硬件设计和软件设计可以提高系统的抗干扰能力和稳定性,保证计价器在复杂的车辆使用环境中的可靠性。成本效益:基于52单片机的出租车里程计价器通常具有较好的成本效益。52单片机微控制器作为一种性能强大、价格相对低廉的微控制器,可以满足出租车里程计价器的功能需求,并且具有较低的成本。同时,硬件设计和软件设计的合理优化可以降低制造成本,并提高计价器的性价比。综上所述,基于52单片机的出租车里程计价器是一种功能强大、可靠性高、成本效益优越的设备。通过合理的硬件设计和软件设计,可以实现精确的里程计算和费用计算,并提供用户友好的界面和操作体验。同时,其可扩展性也为后续功能扩展和定制化需求提供了便利。6.2展望自动驾驶技术:随着自动驾驶技术的不断发展和成熟,基于52单片机的出租车里程计价器有望与自动驾驶系统进行更深入的集成。这将使出租车能够自动识别和记录乘客的上下车位置和行驶里程,从而实现更加智能化和高效的计价和结算。数据共享和云计算:基于52单片机的出租车里程计价器可以通过云计算和数据共享技术,将车辆的行驶数据、乘客需求和运输服务等信息上传至云端进行处理和分析。这将为出租车企业和运输管理者提供更多的数据支持,以便更好地管理和优化出租车运营,提高运输效率和用户体验。无现金支付和数字货币:随着无现金支付和数字货币的普及和应用,基于52单片机的出租车里程计价器可以集成更多的支付方式,例如移动支付、电子钱包和数字货币支付等。这将为乘客提供更加便捷和安全的支付方式,并推动出租车行业向数字化支付方式过渡。智能乘客体验:基于52单片机的出租车里程计价器未来有望提供更加智能化的乘客体验。例如,可以通过人工智能技术和传感器技术实现乘客情感识别和服务个性化,提供定制化的乘客服务;也可以通过语音识别和自然语言处理技术实现与乘客的语音对话,提供更加智能和人性化的服务。环保和可持续性:随着环保和可持续性意识的增强,基于52单片机的出租车里程计价器有望在未来更加注重环保和可持续性。例如,可以通过智能能源管理技术和车辆数据分析,优化出租车的能源利用和排放控制,减少对环境的负面影响;也可以通过推广电动出租车和新能源车辆的使用,降低出租车运营的碳排放。总之,基于52单片机的出租车里程计价器在未来有望在自动驾驶、数据共享、支付方式、乘客体验、环保和可持续性等方面实现更多的创新和发展。

参考文献[1]康华光.电子技术基础(数字部分).[M].(第五版)高等教育出版社,2019.[2]关静.数字电路应用设计.[M].科学出版社,2018.05.[3]陶洪数字电路设计与项实践,[M].清华大学出版社,2019.03.[4]徐绣平.数字电路与逻辑设计.[M].电子工业出版社,2021.04.[5]赵玉菊.电子技术仿真与实训.[M].电子工业出版社,2019.[J].农业工程学报.2019,(10).DOI:10.3969/j.issn.1002-6819.2018.10.002.[6]徐科军.传感器与检测技术.北京:电子工业出版社,2018.9.[7]陈守仁.自动检测技术及仪表.北京:机械工业出版社,1989[8]闫敏杰,夏宁,万忠,等.物联网在现代农业中的应用[J].中国农学通报.2019,(8).[9]李百惠,杨庚.混合高斯模型的自适应前景提取,中国图象图形学报,2018:1620-1627.[10]姚世凤,冯春贵,贺园园,等.物联网在农业领域的应用[J].农机化研究.2019,(7).DOI:10.3969/j.issn.1003-188X.2019.07.047.[11]童师白,华成英.模拟电子技术基础[M].北京:高等教育出版社.2017:28-36.[12]赵辉.基于点特征的图像配准算法研究[D].山东大学.2016.[13]陈桂明,张明照.应用MATLAB建模与仿真[M].科学出版社,2017.[14]孙筠.距离测距补偿技术的现状及发展[J].湖北教育学院学报,2016[15]郑袆群.基于瞬时测距分析理论的系统研究与MATLAB仿真[J].机械工业出版社,2018(5).[16]CeratiG,ElmerP,LantzS,etal.TraditionalTrackingwithKalmanFilteronParallelArchitecturesJournalofPhysics:ConferenceSeries,2018.[17]PengweiHuaXiaowuLiu,JiguoYu,NaDangXiaoweiZhang.Energy-efficientadaptiveslice-basedsecuredataaggregationschemeinWSN[J].ProcediaComputerScience,2018,129.[18]KORTUMK,MOLLERM,HIRNEIBCetal.Smarteyedata:devdtopahealtO0%ofoundationformedicalrescarchusingSmartDataapplications[J].DerOphthalmologeZeitschriftDerDeutschenOphthalmologischenGescllschaft,2019.[19]RaafiB.DesignandDevelopmentofFuzzyPIDControllerforFourwheeledMobileRoboticStability:AC'aseStudyontheUphillRoad[J].PTEKJournalofEngineering,2020,6(2):6.[20]ZhouY,DongW,FYuanetal.ResearchofOnlineWaterQualityMonitoringSystemBasedonZigbeeNetwork[J].AdvancesinInformatioSciences&ServiceSciences,2019,4(5):255-261.

附录电路图源代码//出租车计价器#defineucharunsignedchar#defineuintunsignedint //宏定义//头函数声明#include<reg52.h> //包含头文件#include"Lcd.h" //液晶函数#include"Data.h" //计算每个月最多多少天的函数#include"DS1302.h" //时钟芯片程序#include"AT24C02.h" //AT24C02函数//键盘定义sbitK1=P3^4; //模式切换sbitK2=P3^6; //减按键sbitK3=P3^5; //加按键sbitK4=P3^7; //万年历模式时:设置时间信息。计价器模式时:设置单价//模式0时钟1时钟调整 ucharMode=0;//时钟屏幕调整ucharWei=0;ucharSS=0;//价格调整ucharJGWei=0;//计价器参数uintDay=0; //白天起步价uintNight=0; //夜间起步价uintDanJia=0; //单价uintDJ_min=0; //每分钟单价uintZJ=0; //总价unsignedlongGL=0; //公里uintTime=0; //时间变量uintcount=0; //计数变量ucharm=0; //定时器计时变量//白天/晚上ucharDN=0; //白天还是晚上切换变量//公里/时间ucharGT=0; //走公里还是时间的切换变量//初始化函数voidInitTimer0();//写初值voidSETS();//读初值voidREADS();//主函数voidmain(){ //初始化 Ds1302_Init(); //时钟芯片 Init_LCD(); //液晶的初始化 initeeprom(); //EEPROM初始化 //SETS(); //读取初始参数 READS(); //定时器初始化 InitTimer0(); //循环 while(1) //进入循环 { //时钟模式 if(Mode==0) { if(Wei==0) { Ds1302_Read_Time(); //读时间 display_NYR(time_buf1,Wei,0); //显示时间 } } elseif(Mode==1) //计价器模式 { if(time_buf1[4]>=23||time_buf1[4]<7) //时间23点到7点之前是夜间模式 DN=1; else //其余时间是白天模式 DN=0; display_S(Day,Night,DanJia,ZJ,GL/10,Time,GT,DN); //显示计价器信息 } if(K4==0) //设置按键按下 { delay(100); //延时去抖 if(K4==0) //再次判断按键是否按下 { if(Mode==0) //调时模式 { Wei++; //设置时间的位置加一,也就是依次调节年月日时分秒等数据 if(Wei==1) //进入设置时间数据后 { SS=1; //闪烁变量置1,闪烁对应位置 } display_NYR(time_buf1,Wei,SS); //显示时间、设置的位和闪烁的状态 if(Wei==7) //当设置最后一位后 { Wei=0; //位数据清零,退出设置时间状态 Ds1302_Write_Time(); //保存时间 Init_LCD(); //初始化液晶屏 } } elseif(Mode==1) //调计价器价格 { JGWei++; //价格的位加 if(JGWei==1) //进入价格位设置状态后 { Mode=2; //模式等于2,进入计价器单价设置状态 Init_LCD_JGTZ(); //初始化价格设置界面 display_D(Day,Night,DanJia,JGWei,DJ_min);//显示计价器价格 } } elseif(Mode==2) //模式等于2时,也就是进入单价设置状态 { JGWei++; //价格位加 display_D(Day,Night,DanJia,JGWei,DJ_min);//显示白天夜晚、单价、价格位、分钟单价等数据 if(JGWei==5) //价格位加到5时 { Mode=1; //退出价格位设置,到计价器模式 JGWei=0; //设置的价格位置清零 SETS(); //保存 READS(); //读初值 ZJ=0; //总价清零 GL=0; //公里数清零 Time=0; //低速时间清零 TR0=1; //开启定时器 Init_LCD_JJQ(); //显示计价器 } } while(K4==0); //按键释放 } } //+ if(K3==0) //加按键按下 { delay(100); //延时去抖 if(K3==0) //再次判断按键按下 { if(Mode==0) //调时 { //年位置 if(Wei==1) { time_buf1[1]++; //年数据加 if(time_buf1[1]>=100) //加到100 time_

温馨提示

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

评论

0/150

提交评论