基于单片机的出租车计价器的设计(编辑修改稿)内容摘要:

路 单片机最小系统是指用最少的元件组成的单片机可以工作的系统。 对于 AT89C51单片机来说,最小系统一般应该包括:单片机、晶振电路、复位电路等。 它们 是 AT89C51工作所需的最简外围电路。 单片机最小系统电路如图 24所示。 图 24 单片机最小系统电路图 A44E 霍尔传感器 A44E 霍尔传感器简介 A44E霍尔传感器 是一种磁传感器。 可以检测磁场及其变化,可在各种磁场有关的场合中使用。 以 霍尔 效应为其工作基础。 它结构牢固,体积小,重量轻,寿命长,安装方便,功耗小,频率高,耐震动不怕一些污染和腐蚀,而且精度高工作温度范围宽。 这种霍尔元件大量用于直流无刷电机和测磁仪表。 A44E集成霍尔开关由稳压器A,霍尔电势发生器(即硅霍尔片) B,差分放大器 C,施密特触发器 D和 OC门输出 E五个基本部分组成。 ( a) 1—VCC 2—GND ( b) 3—OUT 图 25 集成霍尔开关外形及引线 6 在输入端 输入电压 VCC,经稳压器稳压后加在霍尔电势发生器的两端,根据霍尔效应原理,当霍尔片处在磁场中时,在垂直于磁场的方向通以电流,则与这二者相垂直的方向上将会产生霍尔电势差 VH输出,该 VH信号经放大器放大后送至施密特触发器整形,使其成 为方波输送到 OC门输出。 当施加的磁场达到工作点(即 Bop)时,触发器输出高电压(相对于地电位),使三极管导通,此时 OC门输出端输出低电压,三极管截止,使 OC门输出高电压,这种状态为关。 这样两次电压变换,使霍尔开关完成了一次开关动作。 集成开关型霍尔传感器原理 如 图 26所示。 图 26 集成开关霍尔传感器原理 里程计算、计价单元设计 里程计算是通过安装在车轮上的霍尔传感器 A44E 检测到的信号,送到单片机,经处理计算,送给显示单元的,其原理如图 27 所示。 图 27 传感器测距示意图 由于 A44E 属于开关型的霍尔传感器件,其工作电压范围比较宽 ( ~ 18V),其 输出的信号符合 TTL 电平标准,可以直接接到单片机 的 I/O 端口上,而且其最高检测频率可达到 1MHZ。 我们选择了 口作为信号的输入端,内部采用外部中断 0(这样可以减少程序设计的麻烦),车轮每转一圈,霍尔开关就检测并输出信号,引起单片机的中断,对脉 冲 计数, 7 当 计数 达到 1000 次时,也就是 1 公里,单片机就控制将金额自动的增加,其计算公 式 :当前单价 公里数 =金额。 由于在仿真过程中不能直接用霍尔传感器,所以仿真时使用了 系统中 的 频率来 模拟 霍尔 传感器脉冲。 仿真时共用了四个不同频率的脉冲模拟传感器脉冲。 液晶显示简介 LM016L是一款较常用的液晶。 通常有 16条引脚线,其中有 8位数据总线 D0D7,和 RS、R/W、 EN三个控制端口, 还有两个脚为背光源正负极, 工作电压为 5V。 液晶显示原理: 液晶显示的原理是利用液晶的物理性质,通过电压对其显示区域进行控制,有电就可显示出图形。 液晶显示具有厚度薄,使用于大规模集成电路进行驱动,目前已被广泛应用于众多领域,例如便携式电脑,数字摄像机, PDA移动通信工具等。 引脚如下: 第 1脚: VSS为地 第 2脚: VDD接 5V正电源 第 3脚: V0为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生 “鬼影 ”,使用时可以通过一个 10K的电位器调整对比度 ,或直接通过一个电阻到地 . 第 4脚: RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。 第 5脚: RW为读写信号线,高电平时进行读操作,低电平时进行写操作。 当 RS和 RW共同为低电平时可以写入指令或者显示地址,当 RS为低电平 RW为高电平时可以读忙信号,当 RS为高电平 RW为低电平时可以写入数据。 第 6脚: E端为使能端,当 E端由高电平跳变成低电平时,液晶模块执行命令。 第 7~ 14脚: D0~ D7为 8位双向数据线。 第 15~ 16脚: 背光源正负极。 时钟芯片 DS1302 DS1302 的简介 DS1302 是美国 DALLAS 公司推出的一种高性能、低功耗、带 RAM 的实时时钟芯片,它可以对年、月、日、周日、时、分、秒进行计时,且具有闰年补偿功能,工作电压宽达~。 采用三线接口与 CPU 进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或 RAM 数据。 DS1302 内部有一个 318 的用于临时性存放数据的 RAM 寄 存器。 DS1302 的 管脚如图 28 所示。 8 图 28 DS1302 管脚 引脚介绍: VCC1—— 后背电源 VCC2—— 主电源 X1, X2—— 振荡源 RST—— 复位 /片选线 DS1302 的 电路 在 DS1302 电路(如图 29) 中, VCC2 是主电源, VCC1 是后备电源。 当主电源关闭时,后背电源 同样能保持时钟的连续运行。 DS1302 由 VCC1 或 VCC2 中的电压较大的一个供电。 RST 的输入有两种功能:首先, RST 接通控制逻辑,允许地址 /命令序列送入移位寄存器;其次, RST 提供终止单字节或多字节数据的传送手段。 当 RST 为高电平时,所有的数据传送被初始化,允许对 DS1302 进行操作。 如果在传送过程中 RST 置为低电平,就会终止此次数据传送, I/O 引脚变为高阻态。 上电运行时,在 VCC≥ 之前, RST 必须保持低电平。 只有在 SCLK 为低电平时,才能将 RST 置为高电平。 图 29 DS1302 电路 DS1302 的控制字节 DS1302 的控制字节的最高有效位 (位 7)必须是逻辑 1,如果它为 0,则不能把数据写入 DS1302 中,位 6 如果为 0, 则表示存取日历时钟数据,为 1 表示存取 RAM 数据。 位 5至位 1 指示操作单元的地址。 最低有效位 (位 0)如为 0 表示要进行写操作,为 1 表示进行读操作,控制字节总是从最低位开始输出。 1 RAN/CK A4 A3 A2 A1 A0 RAN/K 图 210 DS1302 的控制字节 9 3 软件平台 Proteus ISIS 仿真软件简介 Proteus ISIS 是一种操作简便而又功能强大的原理图编辑工具,它运行于 Windows 操作系统上,可以仿真、分析各种模拟器件和集成电路,该软件的特点有: (1)实现了单片机 仿真和 SPICE 电路仿真的结合 具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统仿真、 RS232 动态仿真、 I2C 调试器、 SPI 调试器、键盘和 LCD 系统仿真等功能。 (2)支持主流单片机系统的仿真 目前支持的单片机类型有 68000 系列、 8051 系列、 AVR 系列、 PIC12 系列、 PIC16 系列、 PIC18 系列、 Z80 系列、 HC11 系列以及各种外围芯片。 (3)提供软件调试功能 在硬件仿真系统中具有全速、单步、设置断点等调试功能,同时可以观察各个变量、寄存器等的当前状态,因此在该软件仿真系统中,也必须 具有这些功能。 (4)具有强大的原理图绘制功能 目前支持的单片机类型有: 68000 系列、 8051 系列、 AVR 系列、 PIC12 系 列等。 Proteus ISIS 的仿真步骤 Proteus 仿真时,单片机需要加载程序,加载程序为 .HEX 文件。 在 Proteus ISIS 中,选中 AT89C51 并单击鼠标左键,对 AT89C51 进行设置,设置单片机时钟频率为 12MHz,按照正确的文件路径加载 .HEX 文件 , 对单片机设置完毕后就可以开始仿真了。 Proteus ISIS仿真界面如 图 31 所示。 图 31 Proteus ISIS 仿真界面 10 运行 Proteus 程序后,进入软件的主界面。 通过左侧工具栏中的 P(从库中选择元件命令 )命令,在 Pick Devices 左侧窗口中选择所需元件的关键字,然后放置元件并调整方向和位置以及参数设置。 元件的选取界面如图 32 所示。 图 32 元件选取界面 Keil uVision2 调试软件 Keil uVision2 是美国 Keil Software 公司出品的 51 系列兼容 单片机 C 语言软件开发系统,使用接近于传统 C 语言 的语法来开发, 提供丰富的库函数和功能强大的集成开发调试工具, 与 汇编 相比, C 语言在功能 性 、结构性、可读性、可维护性上有 明显的优势。 Keil uVision2 的使用流程 如图 33 所示。 图 33 Keil的基本使用流程 11 Keil uVision 软件的调试界面如图 34 所示。 图 34 Keil uVision2 程序调试界面 本设计利用 软件 Keil uVision2, 在新建 Keil 项目时选择 AT89C51 单片机作为 CPU,将源程序导入 , 在 “Options For Target”对话窗口中 , 选中 “Output”选项中的 “Create HEX File”, 在 编译链接后就可以生成 .HEX 文件。 此文件的选取界面如图 35 所示。 图 35 可执行的 .HEX 文件的选取界面 12 4 软 硬 件设计 电路的总体设计 电路设计方案 如果我们在设计电路时用的是传统的数字电路或者模拟电路的话,那么可用的显示器就只能是 LED 显示, VFD 显 示,分段式数码管等这些传统的显示器,这样的话,仅显示电路框图和实际电路就已经非常得复杂,整体电路更是非常的麻烦。 此外,当进行计费模式切换时所 用的按键是机械按键,而机械按键用久了很容易老化,会造成接触不良,容易导致功能不易实现。 与此相比,单片机的功能就强大很多,只需用较少的硬件和少量的软件就可以实现较复杂的设计要求,还可以添加更多的其他功能,灵活性很强,计费模式切换通过软件就可轻易实现,避免了因机械开关的老化而造成的潜在危险。 因此本电路以 AT89C51 单片机为中心,实现对出租车路程的统计,输出采用液晶显示器 LM016L。 计价器总体设计图 图 41 计价器设计原理框图 单 片 机 显示电路 设置电路 时钟电路 复位设置 独立按键 输入脉冲 13 图 42 计价器设计原理图 原理图功能分析: 本设计一共采用了四个频率开关,每个开关对应的频率分别为 5Hz,50Hz,150Hz,211Hz,这些频率是采用 系统中 的频率来 模拟的 霍尔 传感器脉冲。 当选择低于 10Hz 的频率的时候,所表示的是出租车停止行驶,此时采用的 是 计 时 收费模式,即 100s 按照 1km收费, 1km收费 元,起步价为 6 元(含 3km)。 当选择 50Hz, 150Hz, 211Hz 时,表示出租车分别行驶在中速,高速,超高速的行驶状态下,这是计价器的收费为计价收 费,起步价为 6 元(含 3km),行驶 1km收费 元。 时间显示部分是用 DS1302 为时间基准计时的, N 键和 P 键是调整时间的导航键, N键是顺序, P 键是倒序, + 键和 键是调节时间和日期的, E/C 键是选择时间显示还是计费显示的按键。 Pause 键是暂停计费的按键,当出租车正在行驶的过程中,也就是说计价器正在计价的时候,按下该按键,计费就会停止。 4. 2 计价器系统软件的设计 4. 主程序模块 在主程序模块设计中,要设置启动 /清除标志寄存器、里程寄存器,然后对它们进行初始化,这时,主程序就会根据需要完 成启动、清除、计程等各种操作。 初次之外还要对各接口芯片初始化,对中断向量的设计,开中断和循环等待的工作。 14 4. 定时中断服务程序 在定时中断服务程序中,每 1ms 就会产生一次中断,当产生 1000 次中断的时候,也就是一秒,然后把数据送到相应的显示缓冲单元,并调用显示子程序即可显示。 4. 液晶驱动程序 主程序的实现是用 LCD 驱 动,系统初始化时涉及的硬件、键盘的控制,根据按键来启动或者停止里程的测量,然后调用用户界面程序定时更新日期和时间的显示,及时的更新价格、里程、费用等一些信息显示,文本、图形 显示等功能。 4. 计价管理程序 计价管理程序主要 作用 是对 脉冲的计量 并 转换为公里数, 计算出所需费用,同时, 测出 出租车的行驶速度,统计低速行驶的时间 和费用,并把检测到的结果传送给液晶显示器,及时的。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。