当前位置:文档之家› 毕业论文(出租车计价器设计)

毕业论文(出租车计价器设计)

毕业论文(出租车计价器设计)
毕业论文(出租车计价器设计)

河北机电职业技术学院

姓名:陆大鹏

系别:电气工程系

班级:应用电子技术

河北机电职业技术学院毕业论文

基于51单片机设计的多功能

出租车计价器

河北机电职业技术学院毕业论文

目录

第1章引言·~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1

1. 1 出租车计价器概述~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1

1. 2 本设计任务~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1

1.2.1 设计任务~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1

1.2.2 设计要求~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~1

1. 3 系统主要功能~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2 第2章出租车计价器硬件设计~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 2

2.1 系统的硬件构成及功能~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2

2. 2 AT89S51单片机及其引脚说明~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~2

2.3 AT24C02引脚图及其引脚功能~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~4

2. 4 AT24C02 掉电存储单元的设计~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~5

2.5 里程计算、计价单元的设计~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~6

2.6 数据显示单元设计·~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~6 第3章系统软件设计~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~8

3. 1 系统主程序设计~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~8

3. 2 定时中断程序设计·~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 10

3. 3 里程计数中断服务程序设计~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~10

3.4 中途等待中断服务程序设计~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~10

3. 5 键盘服务程序设计~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~10

3. 6 显示子程序服务程序设计~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~10第4章系统调试与测试结果分析~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~11

4. 1 使用的仪器仪表~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~11

4.2 系统调试~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~11 结束语~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~12

1、计价表使用说明~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~12

2、全部源程序~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~12

第1章引言

本次课程设计利用单片机技术来实现一台多功能出租车计价器,具有性能可靠、电路简单、成本低等特点。

1.1 出租车计价器概述

计价器显示的营运金额是营运里程与价格的函数(等候时间一般折算成一定比例的里程来计算)。出租车计价器通过传感器与行驶车辆连接。出租汽车的实际里程通过传感器的脉冲信号在计价器里折算成一定的计价营运里程。目前市场上出租车计价器功能主要有具有数据的复位功能、白天/晚上转换功能、数据输出功能、计时计价功能等等,但能够进行语音播报数据信息的出租车计价器还是比较少见的,针对这一点我们来设计一款多功能出租车计价器,在原有功能的基础上增加单价输出、单价调整、路程输出、显示当前的系统时间、语音播报数据信息等功能。

1.2 本设计任务

1.2.1 设计任务

设计一款基于AT89S51单片机的出租车计价器。

1.2.2 设计要求

1.基本要求

(1)不同情况具有不同的收费标准。

● 白天

● 晚上

● 途中等待(>10min 开始收费)

(1)能进行手动修改单价。

(2)具有数据的复位功能。

(3)IO 口分配的简易要求。

● 距离检测使用霍尔开关A44E

● 白天/晚上收费标准的转换开关

● 数据的清零开关

● 单价的调整(最好使用+和-按键)

(4)数据输出(采用LCM103)。

● 单价输出 2 位

● 路程输出 2 位

● 总金额输出3 位

(5)按键。

● 启动计时开关

● 数据复位(清零)

● 白天/晚上转换

2.发挥部分

(1)能够在掉电的情况下存储单价等数据。

(2)能够显示当前的系统时间。

(3)语音播报数据信息。

1.3 系统主要功能

本课程设计所设计的出租车计价器的主要功能有:数据的复位、白天/晚上转换、数据输出、计时计价、单价输出及调整、路程输出、语音播报数据信息、实现在系统掉电的时候保存单价和系统时间等信息等功能。输出采用8 段数码显示管。本电路设计的计价器不但能实现基本的计价,而且还能根据白天、黑夜、中途等待来调节单价,同时在不计价的时候还能作为时钟为司机同志提供方便。

第2章计价器硬件设计

本系统的硬件设计主要包括单片机AT89S51、数据显示部件、A44E霍尔传感器电路、AT24C02 掉电存储单元的设计、里程计算及计价单元的设计。在硬件设计过程中,充分利用各部件的功能,实现多功能的出租车计价器设计。

2.1 系统的硬件构成及功能

计价器的单片机控制方案图如图1 单片机控制方案图所示。它由以下几个部件组成:单片机AT89S51、总金额及单价显示部件、键盘控制部件,AT24C02 掉电存储控制、里程计算单元、串中显示驱动电路等。

利用单片机丰富的IO端口,及其控制的灵活性,实现基本的里程计价功能和价格调节、时钟显示功能。不但能实现所要求的功能而且能在很大的程度上扩展功能,而且还可以方便的对系统进行升级。具体电路参见附录中“多功能出租车计价器总体电路图”如图1 单片机控制方案图。

图1 单片机控制方案图

2.2 AT89S51单片机及其引脚说明

AT89S51是美国ATMEL公司生产的低功耗,高性能CMOS 8位单片机,片内含4KB 的可系统编程的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准8051指令系统及引脚。它集Flash程序存储器既可在线编程(ISP)也可用传统方法进行编程及通用 8位微处理器于单片芯片中,具有高性价比。

AT89S51是一个有40个引脚的芯片,引脚配置如图2 AT89S51引脚配置所示。

图2 AT89S51引脚配置

AT89S51芯片的40个引脚功能为:

VCC 电源电压。

GND 接地。

RST 复位输入。

当RST变为高电平并保持2个机器周期时,将使单片机复位。WDT溢出将使该引脚输出高电平,设置SFR AUXR的DISRTO位(地址8EH)可打开或关闭该功能。DISKRTO位缺省为RESET输出高电平打开状态。

XTAL1 反向振荡放大器的输入及内部时钟工作电路的输入。

XTAL2 来自反向振荡放大器的输出。

P0口一组8位漏极开路型双向I/O口。也即地址/数据总线复用口。作为输出口用时,每位能驱动8个TTL逻辑门电路,对端口写“1”可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在Flash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。

P1口一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(I

)。Flash编程和程序校验期间,P1接

IL

收低8位地址。P1口部分端口引脚及功能如表1 P1口特殊功能所示。

表1 P1口特殊功能

P1口引脚特殊功能

P1.5MOSI(用于ISP编程)

P1.6MOSI(用于ISP编程)

P1.7SCK(用于ISP编程)

P2口一个带内部上拉电阻的8位双向I/O口。P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个

)。在访问外部程序存储器或16位地引脚被外部信号拉低时会输出一个电流(I

IL

址的外部数据存储器时,P2口送出高8位地址数据。在访问8位地址的外部数据存储器时,P2口线上的内容在整个访问期间不改变。Flash编程和程序校验期间,P2亦接收低8位地址。

P3口一个带内部上拉电阻的8位双向I/O口。P3的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对P3口写“1”时,它们被内部的上拉电阻把拉到高电并可作输入端口。作输入端口使用时,被外部拉低的P3口将用上拉电)。P3口除了作为一般的I/O口线外,更重要的用途是它的第二功阻输出电流(I

IL

能,如表2 P3口特殊功能所示。P3口还接收一些用于Flash闪速存储器编程和程序校验期间的控制信号。

表2 P3口特殊功能

P3口引脚特殊功能

P3.0RXD(串行输入口)

P3.1TXD(串行输出口)

P3.2(外部中断0)

P3.3(外部中断1)

P3.4T0(定时器0外部输入)

P3.5T1(定时器1外部输入)

P3.6(外部数据存储器写选通)

P3.7(外部数据存储器读选通)

AT89S51由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN/有效,即输出两个脉冲。当访问外部数据存储器,没有两次有效的PSEN/信号。

EA/VPP 外部访问允许。欲使CPU仅访问外部程序存储器,EA端必须保持低电平,需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。Flash 存储器编程时,该引脚加上+12V的编程电压VPP。

2.3AT24C02引脚图及其引脚功能

AT24C02芯片引脚配置如图3

AT24C02引脚配置图所示。

图3 AT24C02引脚配置图

AT24C02芯片DIP封装,共有8个引脚,其中:

A2~A0 地址引脚;

SDA、SCL I2C总线接口;

WP 写保护引脚,WP接VSS时,禁止写入高位地址,WP接VDD时,允许写入任何地址;

VCC 电源端

GND 接地端

2.4 AT24C02 掉电存储单元的设计

掉电存储单元的作用是在电源断开的时候,存储当前设定的单价信息。AT24C02是ATMEL公司的2KB 字节的电可擦除存储芯片,采用两线串行的总线和单片机通讯,电压最低可以到2.5V,额定电流为1mA,静态电流10Ua(5.5V),芯片内的资料可以在断电的情况下保存40 年以上,而且采用8 脚的DIP 封装,使用方便。其电路如图 4 掉电存储电路原理图所示。

图 4 掉电存储电路原理图

图中R8、R10 是上拉电阻,其作用是减少AT24C02 的静态功耗,由于AT24C02

的数据线和地址线是复用的,采用串口的方式传送数据,所以只用两根线SCL(移位脉冲)和SDA(数据/地址)与单片机传送数据。

每当设定一次单价,系统就自动调用存储程序,将单价信息保存在芯片内;当系统重新上电的时候,自动调用读存储器程序,将存储器内的单价等信息,读到缓存单元中,供主程序使用。

2.5 里程计算、计价单元的设计

里程计算是通过安装在车轮上的霍尔传感器A44E检测到的信号,送到单片机,经处理计算,送给显示单元的。其原理如图 5 传感器测距示意图所示。

图 5 传感器测距示意图

由于A44E 属于开关型的霍尔器件,其工作电压范围比较宽(4.5~18V),其输出的信号符合TTL 电平标准,可以直接接到单片机的IO 端口上,而且其最高检测频率可达到1MHZ。

A44E 集成霍耳开关由稳压器A、霍耳电势发生器(即硅霍耳片)B、差分放大器C、施密特触发器D 和OC 门输出E 五个基本部分组成。

在输入端输入电压CC V ,经稳压器稳压后加在霍耳电势发生器的两端,根据霍耳效应原理,当霍耳片处在磁场中时,在垂直于磁场的方向通以电流,则与这二者相垂直的方向上将会产生霍耳电势差H V 输出,该H V 信号经放大器放大后送至施密特触发器整形,使其成为方波输送到OC 门输出。当施加的磁场达到 工作点 (即OP B )时,触发器输出高电压(相对于地电位),使三极管导通,此时OC 门输出端输出低电压,通常称这种状态为 开 。当施加的磁场达到 释放点 (即rP B )时,触发器输出低电压,三极管截止,使OC 门输出高电压,这种状态为 关 。这样两次电压变换,使霍耳开关完成了一次开关动作。

我们选择了P3.2 口作为信号的输入端,内部采用外部中断0(这样可以减少程序设计的麻烦),车轮每转一圈(我们设车轮的周长是1 米),霍尔开关就检测并输出信号,引起单片机的中断,对脉计数,当计数达到1000 次时,也就是1 公里,单片机就控制将金额自动的加增加,其计算公式:当前单价×公里数=金额。

2.6 数据显示单元设计

由于设计要求有单价(2 位)、路程(2 位)、总金额(3 位)显示输出,加上我们另外扩展了时钟显示(包含时分秒的显示),采用LCD 液晶段码显示,在距离屏幕1 米之外就无法看清数据,不能满足要求,而且在白天其对比度也不能够满足要求,因此我们采用6 位LED数码管的分屏显示,如图 6 采用6 位LED 数码管的分屏显示所示:

时钟显示(图中显示为12 点0 分46 秒)

图 6 采用6 位LED数码管的分屏显示

数据的分屏的显示是通过按键S1 来实现切换的,如图 7 S1切换显示屏所示。

图 7 S1切换显示屏

在出租车不走的时候,按下S1,可以实现数据的分屏显示;车在行走的时候只有总金额和单价显示屏在显示,当到达目的地的时候,客户要求查看总的里程的时候,就可以按下S1 切换到里程和单价显示屏,供客户查询。显示电路的电路原理图如图 8 显示器原理图所示。

图 8 显示器原理图

从单片机串口输出的信号先送到左边的移位寄存器(74HC164),由于移位脉冲的作用,使数据向右移,达到显示的目的。移位寄存器74HC164还兼作数码管的驱动,插头1(header1)接电源,插头2(header2)接数据和脉冲输出端。电路中的三个整流管D1~D3 的作用是降低数码管的工作电压,增加其使用寿命。

第3章系统的软件设计

本系统的软件设计主要可分为主程序模块、定时计数中断程序、里程计数中断服务程序、中途等待中断服务程序、显示子程序服务程序、键盘服务程序六大模块。下面对各部分模块作介绍。

3.1 系统主程序设计

在主程序模块中,需要完成对各接口芯片的初始化、出租车起价和单价的初始化、中断向量的设计以及开中断、循环等待等工作。另外,在主程序模块中还需要设置启动/清除标志寄存器、里程寄存器和价格寄存器,并对它们进行初始化。然后,主程序将根据各标志寄存器的内容,分别完成启动、清除、计程和计价等不同的操作。主程序流程图如图9 所示。当按下S1时,就启动计价,将根据里程寄存器中的内容计算和判断出行驶里程是否已超过起价公里数。若已超过,则根据里程值、每公里的单价数和起价数来计算出当前的累计价格,并将结果存于价格寄存器中,然后将时间和当前累计价格送显示电路显示出来。当到达目的地的时候,由于霍尔开关没有送来脉冲信号,就停止计价,显示当前所应该付的金额和对应的单价,到下次启动计价时,系统自动对显示清零,并重新进行初始化过程。

3.2 定时中断服务程序

在定时中断服务程序中,每100ms 产生一次中断,当产生10 次中断的时候,也就到了一秒,送数据到相应的显示缓冲单元,并调用显示子程序实时显示。其程序流程如图10 所示。

3.3 里程计数中断服务程序

每当霍尔传感器输出一个低电平信号就使单片机中断一次,当里程计数器对里程脉冲计满1000 次时,使微机进入里程计数中断服务程序中。在该程序中,需要完成当前行驶里程数和总额的累加操作,并将结果存入里程和总额寄存器中。

3.4 中途等待中断服务程序

当在计数状态下霍尔开关没有输出信号,片内的T1 定时器便被启动,每当计时到达10分钟,就对当前金额加上中途等待的单价,以后每十分钟都自动加上中途等待的单价。当中途等待结束的时候,也就自动切换到正常的计价。

3.5 显示子程序服务程序

由于是分屏显示数据,所以就要用到4 个显示子程序,分别是:时分秒显示子程序(HMS_DIS)、金额单价显示子程序(CP_DIS)、路程单价显示子程序(DP_DIS)、单价调节子程序(PA_DIS)。

3.6 键盘服务程序

键盘采用查询的方式,放在主程序中,当没有按键按下的时候,单片机循环主程序,一旦有按键按下,便转向相应的子程序处理,处理结束再返回。如图9 主程序流程图,图10 定时中断服务程序。

第4章系统调试与测试结果分析

根据系统设计方案,本系统的调试共分为三大部分:硬件调试,软件调试和软硬件联调。测试包括里程计价测试、掉电存储测试测试。

4.1 使用的仪器仪表

数字万用表DT9203

单片机仿真器WAVE6000

烧写器 GF2100

双踪稳压稳流电源DH1718E-5

数字示波器 TDS1002

4.2 系统调试

根据系统设计方案,本系统的调试共分为三大部分:硬件调试,软件调试和软硬件联调。由于在系统设计中采用模块设计法,所以方便对各电路模块功能进行逐级测试。

结束语

通过本次课程设计,又使我学到了许多书本上无法学到的知识,也使也深该体会到单片机技术应用领域的广泛,不仅使我对学过的单片机知识有了很多的巩固,同时也对单片机这一门课程产生了更大的兴趣。

在本次课程设计过程中,我学会了在网络上查找有关本设计的各硬件的资源,其中包括:AT89S51单片机及其引脚说明、AT24C02引脚图及其引脚功能等,为本次课程设计提供了一定的资料。由于平时很少进行课程设计,所以对于课程设计报告的格式也是近期才接触到,经过这两次的设计,为我们以后毕业设计的制作也奠定了一定的基础。1.计价表使用说明

(1)S1按键的功能

在出租车不走的时候,按下S1,可以实现数据的分屏显示;车在行走的时候只有总金额和单价显示屏在显示,当到达目的地的时候,客户要求查看总的里程的时候,就可以按下S1 切换到里程和单价显示屏,供客户查询。

(2)S2按键的功能

在按下S1按键之后,若接着按下S2键则进行单价调整(默认为调整白天单价),当接着按下S1时,则进行晚上单价调,再次按下S1可进行中途等待单价调整。当单价调整结束后,可以通过过按下S2按键进行时间调整,默认为调整时,接着按下S1可进行调整分,分调整后再接下S1可进行秒调整。当时调整完成后,若接着按下S2则又可进行单价调整。

(3)S3按键的功能

在显示金额及单价时,若按下S3键则显示路程和单价,再次按下S3,可返回显示金额及单价。

(4)S4按键的功能

在按下S1按键之后,若接着按下S4按键,则进行设定默认晚上单价,并启动计价器,若没有按下S4则可设定默认单价(白天),并启动计价器。当设定默认晚上单价结束后,再次接下S4按键,则可设定默认中途等待单价,并启动计价器。当设定默认中途等待单价后,若还按一次S4,则返回系统时间的显示。

2.全部源程序

//12864(带字库)(汉字及字母的显示,汉字不能错位)#include

#include

#include

#define lcd_bus P0 // 数据总线

sbit rs =P3^2; //数据&指令选择,H:写数据,L:写指令

sbit rw =P3^3; //读&写选择,H:read,L:write

sbit e =P3^4; //读写使能

sbit psb=P3^0; //psb=H,并口模式, psb=L,串口模式

sbit rst=P3^5; //LCD复位,低有效

sbit bf =P0^7; //忙闲状态标志位,H:内部正执行操作,L:空闲

sbit P20=P2^0; //进入单价调节

sbit P21=P2^1; //计价开始按键

sbit P23=P2^3; //时间调节按键

sbit P26=P2^6; //停车锁定屏显按键

sbit P27=P2^7; //确认按键

sbit P16=P1^6; //光电开关检测

sbit P14=P1^4; //373片选

void delayus(unsigned char us);//延时子程序us

void delayms(unsigned int ms);//延时子程序ms

void init_lcd(void);//初始化

void chk_busy(void);//检测忙闲

void wr_data(unsigned char dat);//写数据到LCD

void wr_comm(unsigned char comm);//写命令到LCD

void wr_str(unsigned char *s);//向LCD写字符串,长度64字符之内(32个汉字)

void wendu();

sbit DS18B20=P1^7; // ds18b20数据线

void leddisplay(); // 数码管显示

void shijian();

bit ResetDS1820(void); //复位子程序

void WRDS18B20(unsigned char); // 写1个字节子程序

unsigned char RDDS18B20(void); // 读1个字节子程序

unsigned int GetTempDS18B20(void); //读取温度子程序

void delay1s(); //延时子程序 1s

/*-----------------DS1302程序开始-----------------

-----*/

sbit SCLK1302=P1^3; // 时钟

sbit DATA1302=P1^2; // 数据

sbit RST1302=P1^1; // 复位

sbit BIT0=ACC^0; // 累加器A 最低位

sbit BIT7=ACC^7; // 累加器A 最高位

void wr1302(unsigned char dat); //向1302写1个字节

unsigned char rd1302(void); //从1302读1个字节

void v_wr1302(unsigned char add,unsigned char dat);

//先写地址,后写1字节数据

unsigned char v_rd1302(unsigned char add); //先写地址,后读1字节数据

void v_set1302(unsigned char *p2); //设置初始时间

void v_get1302(void); //读取DS1302当前时间

/* -----------------DS1302程序结束

------------------- */

unsigned char RcvData[8]; // 1302接收缓冲区

unsigned char SendData[8]={0,0,0,0,0,0,0,0}; // 1302

发送缓冲区

unsigned char time[7]; //当前时间,格式: 秒分时日

月星期年

unsigned char

settime[7]={0x20,0x55,0x14,0x20,0x07,0x03,0x09};

//时间初始值: 秒分时日月

星期年

unsigned char ledxs0[8]; // 时-分-秒 LED显示

unsigned char ledxs[3]; // 数码管显示缓冲区

unsigned char ledxs2[8]; // 时-分-秒 LED显示

unsigned char xs[16]; //显示缓冲区年月日时分秒

unsigned char aa[5]={0x30,0x30,0x30,0x30,0}; //距离数组

unsigned char bb[5]={0x30,0x30,0x30,0x30,0}; //费用数组

unsigned char cc[2]={0x31,0x35};//单价数组

unsigned char dd[4]={0,0,0,0}; //语音芯片报价数组

void zongkong();

void tiaojie();

void jijia();

void baojia();

void danjia();

unsigned int x=15;//单价

main()

{

delayms(200);

v_set1302(settime); // 设置初始时间

zongkong();

}

void zongkong()

{ P14=1;

init_lcd();//LCD初始化,并清屏

while(1)

{

shijian();

wendu();

if(P20==0)

{

danjia();//进入单价调节函数

}

if(P21==0)

{

init_lcd();//LCD初始化,并清屏 jijia(); //进入计价页面

}

if(P23==0)

tiaojie(); //调节时间

wr_comm(0x80);

wr_str("泰山学院出租车行");

wr_comm(0x90);

wr_str(" 欢迎您");

wr_comm(0x88);

wr_str(" ");

wr_data(ledxs2[0]);

wr_data(ledxs2[1]);

wr_data(ledxs2[2]);

wr_data(ledxs2[3]);

wr_data(ledxs2[4]);

wr_data(ledxs2[5]);

wr_data(ledxs2[6]);

wr_data(ledxs2[7]);

wr_comm(0x98);

wr_data(ledxs0[0]);

wr_data(ledxs0[1]);

wr_data(ledxs0[2]);

wr_data(ledxs0[3]);

wr_data(ledxs0[4]);

wr_data(ledxs0[5]);

wr_data(ledxs0[6]);

wr_data(ledxs0[7]);

wr_comm(0x9d);

wr_data(ledxs[0]);

wr_data(ledxs[1]);

wr_str(".");

wr_data(ledxs[2]);

wr_str("度");

}

}

void shijian()

{

unsigned char i,j;

v_get1302(); //取得当前时间

j=2;

for(i=7;i>0;i--)

{

xs[j]=(time[i-1]>>4)+0x30;

xs[j+1]=(time[i-1]&0x0f)+0x30; //BCD码拆成2字节

j=j+2;

}

ledxs0[0]=xs[2];

ledxs0[1]=xs[3]; // 年

ledxs0[2]=0x2d; // -

ledxs0[3]=xs[6];

ledxs0[4]=xs[7]; // 月

ledxs0[5]=0x2d; // -

ledxs0[6]=xs[8];

ledxs0[7]=xs[9]; // 日

ledxs2[0]=xs[10];

ledxs2[1]=xs[11]; // 时

ledxs2[2]=0x2d; // -

ledxs2[3]=xs[12];

出租车计价器课程设计报告

昆明理工大学信息工程与自动化学院学生实验报告 (2012 —2013 学年第 2 学期) 课程名称:可编程逻辑器件设计开课实验室:信自楼 2013 年4月 11日

一、引言 汽车计价器是乘客与司机双方的交易准则,它是出租车行业发展的重要标志,是出租车中最重要的工具。它关系着交易双方的利益。具有良好性能的计价器无论是对广大出租车司机朋友还是乘客来说都是很必要的。因此,汽车计价器的研究也是十分有一个应用价值的。 我国在70年代开始出现出租车,但那时的计费系统大都是国外进口不但不够准确,价格还十分昂贵。随着改革开放日益深入,出租车行业的发展势头已十分突出,国内各机械厂家纷纷推出国产计价器。出租车计价器的功能从刚开始的只显示路程(需要司机自己定价,计算后四舍五入),到能够自主计费,以及现在的能够打一发票和语音提示、按时间自主变动单价等功能。随着城市旅游业的发展,出租车行业已成为城市的窗口,象征着一个城市的文明程度。 随着出租车行业的发展,出租车已经是城市交通的重要组成部分,从加强行业管理以及减少司机与乘客的纠纷出发,具有良好性能的计价器对出租车司机和乘客来说都是很必要的。我们设计采用8086为主控器,以A44E霍尔传感器测距,实现对出租车的多功能的计价设计,输出采用8段数码显示管。 二、总体设计方案 利用8253作为定时/计数器,控制电机转速并测量电机的转数;8255作为输入输出接口,控制数码管显示启动后经过的里程数(小数点后取2位有效值)。 硬件连接说明: 直流电机控制器的基础上,增加了一个电机测速电路构成。 8255的B口作为数码管的笔划码驱动;C口的低4位作为段码控制,显示实际里程,同时,也用于输出键盘的列扫描码;PC6、PC7输入行扫描码,用于识别按键,程序中仅使用了PC6行上的四个按键,其定义如下: X1:启动/停止键;X2:加速键,与X3、X4键组合使用;X3:“+”键;X4:“-”键。 A口仅使用了PA0,输出PWM脉冲信号,通过驱动芯片驱动电机,其输出电压的高低与PWM脉冲的占空比成正比。 电机的转数,通过霍尔元件变换为脉冲个数,送入8253的通道2,计数后,将转数转换为里程数,最小单位为0.01公里,送CPU记录,结果由数码管显示出来。

数字逻辑课程设计课案教学总结

数字逻辑设计课程设计指导书 适用专业:计算机大类 湖北工业大学 计算机学院 2016年11月

目录 一、课程设计目的 (1) 二、课程设计要求 (1) 三、课程设计内容 (1) 四、设计报告的内容和要求 (3) 五、课程设计考核方法 (3) 附录一自选课题参考题目 (4) 一、数码管显示控制器 (4) 二、乒乓球游戏机 (4) 三、智力竞赛抢答器 (4) 四、数字钟 (4) 五、交通灯控制器 (5) 六、双钮电子锁 (5) 七、彩灯控制器 (5) 八、速度表 (5) 九、出租车计价器 (6) 十、自动奏乐器一 (6) 十一、自动奏乐器二 (6) 十二、自动打铃器 (6) 十三、算术运算单元ALU的设计 (7) 十四、游戏机 (7) 十五、16路数显报警器 (7) 十六、脉冲按键电话按键显示器 (7) 十七、病房呼叫系统 (8) 十八、自动电子钟 (8) 十九、具有数字显示的洗衣机时控电路 (8) 二十、篮球比赛数字计分牌 (8) 二十一、电子日历 (9) 二十二、设计模拟中央人民广播电台报时电路 (9) 二十三、数字跑表 (9) 二十四、汽车尾灯控制器 (9) 二十五、篮球竞赛30秒计时器 (9) 二十六、拔河游戏机控制器 (10) 附录二TTL集成电路型号命名规则 (11) 附录三部分TTL集成电路管脚排列图 (14)

一、课程设计目的 《数字逻辑课程设计》是计算机大类学生的必修课之一,是《数字逻辑》课程的一个重要的实践教学环节,它与理论教学和实验教学相结合,培养学生综合运用所学的基础理论和掌握的基本技能来解决实际问题的能力。 课程设计通过完成一个课题的理论设计和实际调试工作,即能加深对所学知识的理解,又能培养综合的实践技能,从而提高分析问题和解决问题的能力。训练学生综合运用学过的数字逻辑的基本知识,独立设计比较复杂的数字电路的能力。通过实践教学引导学生在理论指导下有所创新,为专业课的学习和日后工程实践奠定基础。 二、课程设计要求 (一)教学要求 1.巩固和加深对数字逻辑各类型电路的设计方法及电子器件所构成电路的理解,并适当拓宽学生在电子线路领域的知识面。 2.初步掌握数字电路的设计、计算方法。能根据系统的技术指标,论证、拟订设计方案;选用合适的电路形式并进行工程计算及选择电路的元器件。 3.培养独立组织实验方案、正确选择使用实验仪器的能力,提高对功能电路和系统的安装调整、测试技术,以及综合运用所学理论知识解决实际问题的能力。(二)能力培养要求 1.通过查阅手册和有关文献资料培养学生独立分析和解决实际问题的能力。 2.通过实际电路方案的比较分析、设计计算、元件选取、安装调试等环节,掌握简单实用电路的分析方法和工程设计方法。 3.掌握常用仪器设备的使用方法,学会简单的实验调试,提高动手能力。 4.综合应用课程中学到的理论知识去独立完成一个设计任务。 5.培养严肃认真的工作作风和严谨的科学态度。 三、课程设计内容 从参考题目中自选1题进行资料查找和设计,具体课题及要求见附件1。 1.数码管显示控制器

出租车计价器 课程设计报告

软件学院 课程设计报告 课程 题目出租车计价器 班级集成13-4 专业集成电路设计与集成系统 学生学号 指导教师(填写自己班的指导教师) 年月日 1.课程设计目的 全面熟悉、掌握VHDL语言基本知识,掌握利用VHDL语言对常用的组合逻

辑电路和时序逻辑电路编程,把编程和实际结合起来,熟悉编制和调试程序的技巧,掌握分析结果的若干有效方法,进一步提高上机动手能力,培养使用设计综合电路的能力,养成提供文档资料的习惯和规范编程的思想。 2.课程设计题目描述和要求 2.1.课程设计题目描述 ①.实现计费功能,计费标准为:按行驶里程计费,起步价为7.0元,并在车行3km 后按2.2元/km 计费,当计费器达到或超过20元时,每公里加收50%的车费,车停止不计费。 ②.现场模拟功能:以开关或按键模拟公里计数,能模拟汽车起动、停止、暂停等状态。 ③.将车费和路程显示出来,各有一位小数。 2.2.总体设计思路框架 2.3.课程设计题目要求 ①.设计正确,方案合理。 ②.程序精炼,结构清晰。 ③.设计报告含程序设计说明,用户使用说明,源程序清单及程序框图。 ④.上机演示。 ⑤.有详细的文档。文档中包括设计思路、设计仿真程序、仿真结果及相应的分析与结论。 3.设计思想和设计内容 3.1 出租车计费设计

该出租车计费器按下开关S1后开始计费和计里程数,起步价是7元,行驶3公里,以后2.2元/公里。并且设计选择模块,在车费超过20元每公里加收50%车费即3.3元/公里。 3.2 基本设计思想 出租车计费器根据设计要求可初步分为3方面——显示、记里程数、记费。之后再根据三方面分别设计模块。1.显示模块。一般计数器显示数字为1-F即16进制,而16进制不方便观看,所以在设计这一模块时我们将16进制改为10进制输出进而设计了译码模块。2、里程模块。设计要求对里程计数主要分为两个方面,计数以及公里数比较。即3公里之内收7元,3公里之后20元(通过计算为9公里)以内每公里2.2元,9公里以外为每公里3.3元。所以,我们将里程模块分为里程计数模块以为比较模块。3.计费模块。计费模块同里程比较模块所以将两个模块合二为一,为价格计算模块。 4.Verilog代码 4.1顶层模块 module taxi( clk,stop,rst_n, time1,time2,time3,time4, seg1,seg2,seg3,seg4 ); input clk; input stop; input rst_n; output [6:0]time1; output [6:0]time2; output [6:0]time3; output [6:0]time4;

最新出租车计价器课程设计

出租车计价器课程设 计

大学 《单片机应用与仿真训练》设计报告 出 租 车 计 价 器 姓名: 学号: 3 姓名: 学号: 专业班级:自动化09-7班 指导老师: 所在学院:电气学院 2012年7月4 日 摘要

本设计基于AT89SC51单片机,采用霍尔传感器采集轮胎转数的信息,使用外部中断0将霍尔传感器采集的信息输入到单片机,实现对于出租车行驶里程的计算;对于中途等待以及红绿灯等待,使用定时器计时,并将时间转化为里程数以计费;输出设备采用数码管,本设计采用的是两个4位一体的共阴极数码管,输出里程数和费用;此外,本设计还设计了状态指示灯,用以指示计价器的工作状态和显示状态。 出租车计价器是出租车行业计费系统的核心,是出租车行业发展的重要标志,性能良好的计价器对于乘客和出租车行业都是必需的。 关键词:计价器、单片机、霍尔传感器

目录 1 概述 (4) 1.1 出租车计价器概述 (4) 1.2 单片机的概述 (4) 2 总体方案设计 (6) 2.1 设计任务要求 (6) 2.1.1 设计任务 (6) 2.1.2 设计要求 (6) 2.2 设计的主要功能 (6) 2.3 方案的选取 (7) 2.3.1 硬件设计方案 (7) 2.3.2 软件设计方案 (8) 3 硬件设计 (8) 3.1 AT89S52单片机及最小系统 (9) 3.2 测距单元 (11) 3.3 按键单元和状态显示单元 (14) 3.4 数码显示单元 (15) 4 软件设计 (17) 4.1 系统主程序 (17) 4.2 数据处理子程序 (18) 4.3 等待时间计时子程序 (19) 4.4 键盘扫描子程序 (20) 5 Proteus软件仿真 (21) 6课程设计过程中遇到的问题 (22) 7 课程设计体会 (23) 参考文献 (24) 附1、原程序代码 (25) 附2、系统原理图 (30)

出租车计价器电路设计

中北大学 课程设计说明书 学生姓名:学号: 学院: 仪器与电子学院 专业: 微电子科学与工程 题目: 出租车计价器电路设计 指导教师:马游春 2014 年 1 月 2 日

目录 1设计目的 (2) 2设计要求 (2) 3设计内容 (2) 1设计过程 (2) 2设计所用器件简介 (4) 3设计所需器件归纳 (7) 4设计结果/仿真结果 (8) 5心得体会 (10) 6参考文献 (10) 附件 (11)

一、设计目的 1.掌握电子电路的一般设计方法和设计流程; 2.学习简单电路系统设计,掌握Protel99的使用方法; 3.掌握锁存器、计数器、加法器等中规模数字集成器件的逻辑功能和使用方法; 4.学习掌握硬件电路设计的全过程。 二、设计要求 1.查阅所用器件技术资料,详细说明设计的出租车计价器工作流程; 2.里程数精确到1公里,起步价按5元/3公里,超出里程单价按1元/1公里进行计价。 3.等候时按1元/15分钟计价。设置一个计时按键处理等候等突发事件; 4.整理设计内容,编写设计说明书。 三、设计内容 1 设计过程 使用NI Multisim12.0软件绘制原理图。 应用NI Multisim10对所设计的电路进行仿真。 使用ALTIUM DESIGNER制作PCB版图。 1.1设计思路 出租车自动计费器是根据客户用车的实际情况而自动显示用车费用的数字仪表。仪表根据用车起价、行车里程计费及等候时间计费三项求得客户用车的总费用,通过数码自动显示。里程传感器可用干簧继电器实现,安装在与汽车车轮相连接的涡轮变速器上的磁铁使干簧继电器在汽车每前进十米闭合一次,即输出一个脉冲信号,实验用一个脉冲源模拟。 通过信号发生器模拟汽车车轮上传感器传来的脉冲信号,用计数器进行计数,然后触发里程计数器进行累加,依次向高位进位并用4位数码管显示路程;另一方面,将传来的脉冲通过比较器与3公里进行比较,大于三公里时开始触发价格计数器累加,并利用加法器与5元相加,也依次向高位进位并用4位数码管显示价格。 1.2 工作原理及硬件框图 本设计方案系统的总体工作原理如图6所示。有两种收费方式(通过按键实现两种收费方式的转换):按行驶里程收费,起步费为5.0元,并在车行3公里后再按1.0 元/公里:按等候时间计费,当车停止不走时,按1.0元/15分钟计费。最高计费为9999.9元,当乘客到达目的地时,将路程及车费显示出来。

基于数电设计出租车里程计价器

电子技术课程设计报告题目:出租车里程计价器设计 学生姓名: 学生学号: 年级: 专业: 班级: 指导教师: 机械与电气工程学院制 2016年11月

出租车计价器课程设计 机械与电气工程学院自动化 1设计的任务与要求 1.1课程设计任务 (1)能够实现计程功能 (2)实现计费功能,计费标准为:按行驶里程收费,起步费为6.0元,并在车行3公里后再按2.0 元/公里,最高计费为99.9元,车停止不计费,能将车费显示出来。 1.2初始参数和要求 (1)74LS160计数器的简介 74LS160 是一个具有异步清零、同步置数、可以保持状态不变的十进制上升沿计数器,共有54/74160 和54/74LS160 两种线路结构型式。 (2)74LS85比较器的简介 74LS85比较器是一个4位数值比较器,它是由高位开始比较,逐位进行。若最高位已比较出大小,则以后各位大小都对比较结果没有影响;如果最高位相等,则比较次高位;同理,次高位已比较出大小,则以后各位大小对结果没有影响。如果4位比较都相等,则再看级联信号输入。级联输入信号是由低位比较器的输出而来。 (3)74LS283加法器的简介 74LS加法器是4为超前进位加法器,能够实现两个数值信号的相加。 (4)初始要求 电路能够实现初始设定,起步费为6.0元,并在车行3公里后再按2.0 元/公里计算,车停止不计费,能将路程及车费显示出来。 2出租车里程计价器设计方案制定 2.1系统工作原理 本设计方案系统的总体工作原理如图1所示。按行驶里程收费,起步费为6.0元,并在车行3公里后再按2.0 元/公里,最高计费为99.9元,车停止不计费,将路程及车费显示出来。

电子设计资料-出租车计价器-程序

#include #define uchar unsigned char sbit P3_4=P3^4; //code uchar tab[10]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10,}; //code uchar tab[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,}; code uchar tab[10]={0xbf,0x86,0xdb,0xcf,0x66,0xed,0xfd,0x87,0xff,0xef,}; uchar sz[4]; int qw,bw,sw,gw,a,b,c; void disp(void) { for(c=3;c>=0;c--) { SBUF=tab[sz[c]]; while(!TI); TI=0; } } void scjs(void)interrupt 3 { TH1=0X3C; TL1=0xB0; a=a+1; if(a==2) { a=0; P3_4=!P3_4; if(P3_4==0) { b=TH0*256+TL0; ///yw=sz[0]=b/100000; //ww=sz[0]=b/10000%10; qw=sz[0]=b/1000%10; bw=sz[1]=b/100%10; sw=sz[2]=b/10%10; gw=sz[3]=b%10; disp(); } } } main() {

IE=0X88; TH1=0X3C; TL1=0XB0; TR0=1; TR1=1; a=0; while(1); } 2 #include #define uchar unsigned char sbit P3_4=P3^4; //code uchar tab[10]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10,}; //code uchar tab[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,}; code uchar tab[10]={0xbf,0x06,0xdb,0xcf,0x66,0xed,0xfd,0x87,0xff,0xef,}; uchar sz[6]; int yw,ww,qw,bw,sw,gw,a,b,c,d,e,f; void disp(void) { for(c=5;c>=0;c--) { SBUF=tab[sz[c]]; while(!TI); TI=0; } } void scjs(void)interrupt 3 { TH1=0X3C; TL1=0xB0; a=a+1; if(a==2) { a=0; P3_4=!P3_4; if(P3_4==0) { b=TH0*256+TL0;

毕业论文之出租车计价器调研报告

调研报告 汽车计价器是乘客与司机双方的交易准则,它是出租车行业进展的重要标志,是出租车中最重要的工具。它关系着交易双方

的利益。具有良好性能的计价器不管是对宽敞出租车司机朋友依旧乘客来讲差不多上专门必要的。因此,汽车计价器的研究也是十分有一个应用价值的。 随着生活水平的提高,人们已不再满足于衣食住的享受,出行的舒适已受到越来越多人的关注。因此,出租车行业以低价高质的服务给人们带来了出行的享受。然而总存在着买卖纠纷困扰着行业的进展。而在出租车行业中解决这一矛盾的最好方法确实是改良计价器。用更加精良的计价器来为乘客提供更加方便快捷的服务。 现在各大中都市出租车行业都已普及自动计价器,因此计价器技术的进展已成定局。而部分小都市尚未普及,但随着都市建设日益加快,象征着都市面貌的出租车行业也将加速进展,计价器的普及也是毫无疑问的,因此以后汽车计价器的市场依旧十分有潜力的。 计价器作为出租车的一个重要组成部分,关系着出租车司机和乘客双方利益,起着重要的作用,因此,具有良好性能的计价器对宽敞出租车司机朋友来讲是专门必要的。 我国在70年代开始出现出租车,但那时的计费系统大差不多上国外进口不但不够准确,价格还十分昂贵。随着改革开放日益深入,出租车行业的进展势头已十分突出,国内各机械厂家纷纷推出国产计价器。出租车计价器的功能从刚开始的只显示路程(需要司机自己定价,计算后四舍五入),到能够自主计费,以及现在的能够打一发票和语音提示、按时刻自主变动单价等功能。随着都市旅游业的进展,出租车行业已成为都市的窗口,象

征着一个都市的文明程度。 采纳模拟电路和数字电路设计的计价器整体电路的规模较大,用到的器件多,造成故障率高,难调试,关于模式的切换需要用到机械开关,机械开关时刻久了会造成接触不良,功能不易实现。为此我们采纳了单片机进行设计,相对来讲功能强大,用较少的硬件和适当的软件相互配合能够专门容易的实现设计要求,且灵活性强,能够通过软件编程来完成更多的附加功能。针对计费模式的切换,通过软件编程就能够轻易而举的实现。幸免了机械开关带来的不稳定因素。 目前, 电子系统正向集成化、大规模和高速度的方向进展, 集成电路的规模越来越大, 复杂程度越来越高, 因此传统的门级描述方法显得过于琐碎, 难以理解掌握。由美国国防部提出的VHDL (Very High Speed Integrated Circuit Hardware Description Language)即超高速集成电路硬件描述语言, 采纳高层次的、自顶向下的设计方法来描述硬件, 特不适合当前需要。美国国防部为了要解决项目间的信息交换困难和设计维护困难, 同时也为解决当时的超高速集成电路(VHS IC Very High Speed Integrated Circuit) 打算而提出的一种硬件描述语言。1987 年12 月IEEE 同意VHDL 为标准的HDL , 这确实是今天的IEEE STD1076- 1987 和IEEE STD1076- 1993。MAX + PLUSII (Multiple Array Matrix And Programmable Logic U ser System s) 是电子设计不可缺少的工具, 他能够同意多种方式的输入: 原理图输入、文本输入(硬件描述语言)、第三方EDA 工具提供的接口等。MAX+ PLUSII 的仿真器具有专门强灵活性, 能够操纵

单片机出租车计价器课程设计报告书

word完美格式 嵌入式系统基础 课 程 说 明 书 设计题目:出租车计价器 学院:太原理工大学现代科技学院 班级:电子信息 姓名: 学号:

一、设计题目: 出租车计价器 二、设计思路: 如今单片机由于其体积小,性能完善,所以广泛应用于各个行业中。在出租车上,计价器便采用了单片机的应用技术,采用一系列的外部设备将出租车行驶以及停车等各个状态输入单片机,通过程序加以运算控制,再输出显示以及打印等。 我们试着用所学的知识,设计并模拟出租车计价器的工作方式,通过实践来掌握应用设备的工作原理。 三、设计任务 ●出租车计价器需要的主要外部设备有公里计数器,以及显示、定时装置,通 过线路连接构成一个完整的系统。 ●公里计数器设想:利用光电或者霍尔效应原理对车轮转过360°角位移产生 一个脉冲信号送给单片机作为一定距离的计数值。 ●显示器:用LED显示,动态扫描显示,不断输出即时价格已及时间。 ●定时装置(本设计中未引入):记录在停车或某些情况下的时间,用于辅助 计价。 四、里程计数器的原理(光电式) 在与车轴同步的轴上装有一隔光盘,上仅有以窄缝可以通光。在隔光盘两侧分别装有与车体固定的光源和感光元件。当隔光盘随轴转动时,光源发出的光被隔光盘隔离,只有在窄缝处感光元件接收到光信号,对后续电路产生一个脉冲。这就是对里程转换为计数值的基本原理。 其产生的脉冲信号则作为单片机计数器的输入信号,当单片机中计数器计到某一数量即为车行驶一公里,并对价格进行增加。在没有实际对这样计数装置试用,只能对其原理进行分析,在之下的程序设计中只取其脉冲信号作为单片机输入信号(P3.4)。

五、LED显示电路 对设计总体分析下,只需对其价格进行显示,选用四个LED数码管分别显示价格的百位、十位、个位以及十分位(单位:元)。显示方式采用动态扫描的方式,数据输出为P0口,位选为P2口,共阴极(如图)。 P0.7-P0.0 数码管输出数据 P2.7-P2.4 数码管位选 六、计价器的计价要求 ●计价方式:起价(两公里)白天8元,晚上8.6元;由一开关进行选择。每 公里1.5元。 ●转数与公里数:汽车轮胎周长近似为1.5米,故一百米需要转过67圈,计 67个数产生一个溢出中断。 七、电路原理图及引脚

出租车计价器系统完整版

智能电子产品设计与制作 课程设计(论文) 题目: 《出租车计价器系统设计》 学院:电气与电子信息工程学院 专业名称: 学号: 学生姓名: 同组成员: 指导教师: 课设时间:2011年5月23日—2011年6月10日 目录

一.设计目的 (2) 二.设计要求 (2) 三.系统结构 (2) 四.功能模块设计 (3) 五.软件设计 (5) 六.电路组装与调试 (6) 七.电路仿真 (7) 八.总结 (8) 八.附录 (9)

出租车计价器课程设计 一、设计目的 随着出租车行业的发展,出租车已经是城市交通的重要组成部分,从加强行业管理以及减少司机与乘客的纠纷出发,具有良好性能的计价器对出租车司机和乘客来说都是很必要的。而采用模拟电路和数字电路设计的计价器整体电路的规模较大,用到的器件多,造成故障率高,难调试。而采用单片机进行的设计,相对来说功能强大,用较少的硬件和适当的软件相互配合可以很容易地实现设计要求,且灵活性强,可以通过软件编程来完成更多的附加功能。本设计采用AT89S52单片机为主控器,以红外对管测转速,对实际里程的模拟,实现对出租车的多功能的计价设计,并采用AT24C01实现在系统掉电的时候保存单价等信息,输出采用8段数码显示管。本电路设计的计价器不但能实现基本的计价,而且还能根据白天,黑夜和中途等待来调节单价。 二、设计要求 出租车计价器根据乘客乘坐汽车行驶距离和等候时间的多少进行计价,并在行程中同步显示车费值。从起步价开始,当汽车程行驶未满3公里时,均按起步价计算。过3公里后,实现每1公里单价收费,中间遇暂停时,计程数不再增加,开始计时收费,测距收费和测时收费的和便构成了一位乘客的车费。同时,白天和夜晚价格不同,可以进行切换。白天单价、夜晚单价、等待单价和起步价格都可通过独立键盘进行调节。(默认起步价为5元/3公里,里程单价白天为1.5元/公里,夜晚为1.8元/公里,等待计时单价为0.5元/5分钟) 三、系统结构 根据设计的要求选择实验的方案:采用单片机进行的设计,相对来说功能强大,用较少的硬件和适当的软件相互配合可以很容易地实现设计要求,且灵活性强,可以通过软件编程来完成更多的附加功能。设计采用AT89S51单片机为主控器,以红外对管和电机测转速(按键替代),实现对出租车的基本的计价设计,并采用AT24C02实现在系统掉电的时候保存单价等信息,输出采用8段数码显示管,相对液晶显示价格便宜,利用单片机丰富的I/O端口,及其控制的灵活性,实现基本的计价功能。 器系统结构图如下: 四、功能模块 1、单片机模块

基于51单片机的出租车计价器

基于51单片机的出租车计价器

课程设计说明书 课程设计名称:《单片机原理与接口技术》课程设计 课程设计题目:基于51单片机的出租车计价器 学院名称:信息工程学院 专业:电子信息工程班级:100415 学号:27 姓名:夏亮晶 同组人:张先生 评分:教师:邓老师 2013年07月01日

基于51单片机原理出租车计价器的设计 摘要 现在各大中城市出租车行业都已普及自动计价器,所以计价器技术的发展已成定局。而部分小城市尚未普及,但随着城市建设日益加快,象征着城市面貌的出租车行业也将加速发展,计价器的普及也是毫无疑问的,所以未来汽车计价器的市场还是十分有潜力的。 本设计以 89S51 单片机为中心,利用信号发生器模拟代替霍尔传感器测距,实现对出租车计价统计,输出采用LM016L液晶显示屏。本电路设计的计价器不但能实现基本的计价,而且还能根据里程或手动来调节单价。通过单片机上的键盘上的按键来执行开始、暂停、复位等功能。步骤如下:首先,程序开始做一些必要的初始化工作,等待键盘输入。然后,启动键K1按下后单片机开始计数传感器传来的计数脉冲,在LM016L液晶显示器显示路程,按下K2显示总费用price是多少,当路程超过3Km,才开始计算。通过K3、K4,K5、K6,K7、K8改变单价price个位,十分位,百分位。 关键词:89S51单片机 LM016L液晶显示屏计价器

目录 前言 (1) 第一章出租车计价系统的设计要求与设计方案 (2) 1.1............. 出租车计价器设计要求 2 1.2..................... 系统主要功能 2 1.3................... 方案论证与比较 2 第二章出租车计价系统的硬件设计 (4) 2.1 振荡电路 (4) 2.2 复位电路设计 (4) 2.3 键盘接口电路 (5) 2.4 显示电路 (5) 2.5 路程测量部分 (6) 2.6 单片机各引脚功能说明 (7) 2.7 1602液晶的简介 (8) 第三章出租车计价系统的软件设计 (11) 3.1....................... 系统主程序 11

单片机出租车计价器课程设计

单片机出租车计价器课程 设计 This manuscript was revised on November 28, 2020

嵌入式系统基础 课 程 说 明 书 设计题目:出租车计价器 学院:太原理工大学现代科技学院 班级:电子信息 姓名: 学号: 一、设计题目: 出租车计价器 二、设计思路: 如今单片机由于其体积小,性能完善,所以广泛应用于各个行业中。在出租车上,计价器便采用了单片机的应用技术,采用一系列的外部设备将出租车行驶以及停车等各个状态输入单片机,通过程序加以运算控制,再输出显示以及打印等。 我们试着用所学的知识,设计并模拟出租车计价器的工作方式,通过实践来掌握应用设备的工作原理。 三、设计任务

出租车计价器需要的主要外部设备有公里计数器,以及显示、定时装置,通过线路连接构成一个完整的系统。 公里计数器设想:利用光电或者霍尔效应原理对车轮转过360°角位移产生一个脉冲信号送给单片机作为一定距离的计数值。 显示器:用LED 显示,动态扫描显示,不断输出即时价格已及时间。 定时装置(本设计中未引入):记录在停车或某些情况下的时间,用于辅助计价。 四、里程计数器的原理(光电式) 在与车轴同步的轴上装有一隔光盘,上仅有以窄缝可以通光。在隔光盘两侧分别装有与车体固定的光源和感光元件。当隔光盘随轴转动时,光源发出的光被隔光盘隔离,只有在窄缝处感光元件接收到光信号,对后续电路产生一个脉冲。这就是对里程转换为计数值的基本原理。 其产生的脉冲信号则作为单片机计数器的输入信号,当单片机中计数器计到某一数 量即为车行驶 一公 里,并 对价格 进行增 加。在 没有实际对这样计数装置试用,只能对其原理进行分析,在之下的程序设计中只取其脉冲信号作为单片机输入信号()。 五、LED 显示电路 对设计总体分析下,只需对其价格进行显示,选用四个LED 数码管分别显示价格的百位、十位、个位以及十分位(单位:元)。显示方式采用动态扫描的方式,数据输出为P0口,位选为P2口,共阴极(如图)。 六、计价器的计价要求 计价方式:起价(两公里)白天8元,晚上元;由一开关进行选择。每公里元。 转数与公里数:汽车轮胎周长近似为1.5米,故一百米需要转过67圈,计67个数产生一个溢出中断。 七、电路原理图及引脚 八、源程序 ORG 0000H ;起始地址 AJMP START ORG 001BH ;计数中断地址 LJMP CNT1 ORG 0030H ;主程序地址 START: MOV PSW, #00H MOV IE, #88H ;IE=B MOV TMOD, #60H ;TMOD=01100000B ,T1工作方式2 数码管输出数据 数码管位选 显示小数点(长亮) 计价器工作开关 白天/夜间切换 计数脉冲输入

出租车计价器课程设计

摘要 本设计的是一个基于单片机STC89C52的出租车自动计费设计,附有复位电路,时钟电路,键盘电路等。复位电路是单片机的初始化操作,除了正常的初始化外,为摆脱困境,通过复位电路可以重新开始。时钟电路采用12MHz的晶振,作为系统的时钟源,具有较高的准确性。 在上电时字符型液晶1602显示最初的起步价,里程收费,等待时间收费三种收费,通过按键可以调整起步价,里程收费,等待时间收费。通过按键模拟出租车的运行,暂停,停止。在1602液晶上可以显示运行的时间,运行时暂停的时间,通过计算可以得出总共的费用和总的路程。在这里主要是以STC89C52单片机为核心控制器,P1口接1602液晶显示模块。 关键字STC89C52;1602液晶;出租车计费器 》 @

第一章绪论 出租车计价器概述 我国在70年代开始出现出租车,但那时的计费系统大都是国外进口不但不够准确,价格还十分昂贵。随着改革开放日益深入,出租车行业的发展势头已十分突出,国内各机械厂家纷纷推出国产计价器。出租车计价器的功能从刚开始的只显示路程(需要司机自己定价,计算后四舍五入),到能够自主计费,以及现在的能够打一发票和语音提示、按时间自主变动单价等功能。随着城市旅游业的发展,出租车行业已成为城市的窗口,象征着一个城市的文明程度。 / 本次设计的目的在于现在各大中城市出租车行业都已普及自动计价器,所以计价器技术的发展已成定局。而部分小城市尚未普及,但随着城市建设日益加快,象征着城市面貌的出租车行业也将加速发展,计价器的普及也是毫无疑问的,所以未来汽车计价器的市场还是十分有潜力的。 单片机的概述 计算机系统已明显地朝巨型化、单片化、网络化三个方向发展。巨型化发展的目的在于不断提高计算机的运算速度和处理能力,以解决复杂系统计算和高速数据处理,比如系统仿真和模拟、实时运算和处理。单片化是把计算机系统尽可能集成在一块半导体芯片上,其目的在于计算机微型化和提高系统的可靠性,这种单片计算简称单片机。单片机的内部硬件结构和指令系统主要是针对自动控制应用而设计的所以单片机又称微控制器MCU(Micro Controller Unit)。用它可以很容易地将计算机嵌入到各种仪器和现场控制设备中,因此单片机又叫做嵌入式微控制器(Embedded MCU)。单片机自20世纪70年代问世以来,以其鲜明的特点得到迅猛发展,已广泛应用于家用电器、智能玩具、智能仪器仪表、工业控制、航空航天等领域,经过30多年的发展,性能不断提高,品种不断丰富,已经形成自动控制的一支中坚力量。据统计,我国的单片机年容量已达1~3亿片,且每年以大约16%的速度增长,但相对于国际市场我国的占有率还不到1%。这

C语言出租车计价器课程设计

出租车计价器课程设计目录 前言 1、系统工作原理 1.1 功能说明 1.2 基本原理 2、硬件设计 2.1 单片机最小系统单元 2.2 A44E霍尔传感器检测单元 2.3 AT24C01存储单元 2.4 键盘调整单元 2.5 显示单元 3、软件设计 3.1 系统主程序 3.2 中断程序 3.2.1 里程计数中断程序 3.2.2 中途等待中断程序

3.3 计算程序 3.4 显示程序 3.5 键盘程序 4、总结 参考文献 附录A 系统原理图 附录B 系统源程序 前言 随着出租车行业的发展,出租车已经是城市交通的重要组成部分,从加强行业管理以及减少司机与乘客的纠纷出发,具有良好性能的计价器对出租车司机和乘客来说都是很必要的。而采用模拟电路和数字电路设计的计价器整体电路的规模较大,用到的器件多,造成故障率高,难调试。而采用单片机进行的设计,相对来说功能强大,用较少的硬件和适当的软件相互配合可以很容易地实现设计要求,且灵活性强,可以通过软件编程来完成更多的附加功能。本设计采用AT89S52单片机为主控器,以A44E霍尔传感器测距,实现对出租车的多功能的计价设计,并采用AT24C01实现在系统掉电的时候保存单价等信息,输出采用8段数码显示管。本电路设计的计价器不但能实现基本的计价,而且还能根据白天,黑夜和中途等待来调节单价。 第一章系统工作原理

1.1 功能说明 出租车计价器根据乘客乘坐汽车行驶距离和等候时间的多少进行计价,并在行程中同步显示车费值。从起步价开始,当汽车程行驶未满3公里时,均按起步价计算。过3公里后,实现每1公里单价收费,中间遇暂停时,计程数不再增加,开始计时收费,测距收费和测时收费的和便构成了一位乘客的车费。同时,白天和夜晚价格不同,可以进行切换。白天单价、夜晚单价、等待单价和起步价格都可通过独立键盘进行调节。(默认起步价为5元/3公里,里程单价白天为1.5元/公里,夜晚为1.8元/公里,等待计时单价为0.5元/5分钟) 1.2 基本原理 计数器系统主要由五部分组成:A44E霍尔传感器、AT89S52单片机、独立键盘、EEPROM AT24C01和显示数码管。 霍尔传感器安装在车轮上,主要检测汽车行进的公里数,并产生一系列相应的脉冲输出,脉冲送到单片机进行处理,单片机根据程序设定通过计算脉冲数换算出行驶公里数,再根据从EEPROM中读取的价格等相关数据进行金额的计算,计算好的金额、里程和单价都实时地显示在数码管上。独立键盘可以调节价格等相关数据,按下相应的按钮,产生信号交由单片机处理并实时显示出来,调节好的数据存储到EEPROM中,掉电后可以使调好的数据不丢失,下次得电后直接从EEPROM读到单片机,系统结构图如图1。

出租车计价器总结报告讲解

电气工程学院 微机原理与接口技术课程设计 设计题目:出租车计价器系统设计 学号:11291092 姓名:杨艳丽 同组人:无 指导教师:徐建军 设计时间:2014.3.15-3.25 设计地点:电气学院实验中心

微机原理课程设计成绩评定表姓名杨艳丽学号11291092 课程设计题目:出租车计价器系统设计 课程设计答辩或提问记录: 成绩评定依据: 课程设计预习报告及方案设计情况(20%): 课程设计考勤情况(5%): 电路焊接情况(15%) 课程设计调试情况(40%): 课程设计总结报告与答辩情况(20%): 最终评定成绩(以优、良、中、及格、不及格评定) 指导教师签字: 年月日

微机原理与接口技术课程设计任务书学生姓名:杨艳丽指导教师:徐建军 一、课程设计题目: 出租车计价器系统设计 二、课程设计要求 1. 根据具体设计课题的技术指标和给定条件,独立进行方案论证和电路设计,要求概念清楚、方案合理、方法正确、步骤完整; 2. 查阅有关参考资料和手册,并能正确选择有关元器件和参数,对设计方案进行仿真; 3. 完成预习报告,报告中要有设计方案,设计电路图,还要有仿真结果; 4. 进实验室进行电路调试,边调试边修正方案; 5. 撰写课程设计报告——最终的电路图、调试过程中遇到的问题和解决问题的方法。 三、进度安排 1.时间安排 序号内容学时安排(天) 1 方案论证和系统设计 3.14-3.15 2 完成电路仿真,写预习报告 3.16-3.17 3 电路调试 3.18-3.25 4 写设计总结报告与答辩 3.26-3.27 合计13天 设计调试地点:电气楼410 2.执行要求 微机原理与接口技术课程成绩80分以上的同学可以自拟题目,其余的同学都是指定题目。,每组不得超过2人,要求学生在教师的指导下,独力完成所设计的详细电路(包括计算和器件选型)。严禁抄袭,严禁两篇设计报告雷同。

出租车计价器的设计【文献综述】

文献综述 电气工程及其自动化 出租车计价器的设计 1.前言 本毕业设计的题目是《出租车计价器设计》,随着出租车行业的发展,出租车已经是城市交通的重要组成部分,从加强行业管理以及减少司机与乘客的纠纷出发,具有良好性能的计价器对出租车司机和乘客来说都是很必要的。而采用模拟电路和数字电路设计的计价器整体电路的规模较大,用到的器件多,造成故障率高,难调试。而采用单片机进行的设计,相对来说功能强大,用较少的硬件和适当的软件相互配合可以很容易地实现设计要求,且灵活性强,可以通过软件编程来完成更多的附加功能。本设计采用AT89S51单片机为主控器,以A44E霍尔传感器测距,实现对出租车的多功能的计价设计,采用AT24C02 实现在系统掉电的时候保存单价和系统时间等信息,输出采用8 段数码显示管。本次设计的计价器不但能实现基本的计价,而且还能根据白天、黑夜、中途等待来调节单价,同时在不计价的时候还能作为时钟为司机同志提供方便。 2.出租车计价器的发展 出租车行业在我国是八十年代初兴起的一项新兴行业,随着我国国民经济的高速发展,出租汽车已成为城市公共交通的重要组成部分。多年来国内普遍使用的计价器只具备单一的计量功能。目前全世界的计价器中有90%为台湾所生产。现今我国生产计价器的企业有上百家,主要是集中在北京,上海,沈阳和广州等地。我国第一家生产计价器的是重庆市起重机厂,最早的计价器全部采用机械齿轮构,只能完成简单的计程功能,可以说,早期的计价器就是个里程表。随着科学技术的发展,产生了第二代计价器。它采用了手摇计算机与机械结构相结合的方式,实现了半机械半电子化。此时它在计程的同时还可完成计价的工作。大规模集成电路的发展又产生了第三代计价器,也就是全电子化的计价器。它的功能也在不断完善。出租汽车计价器是一种专

单片机出租车计价器课程设计

嵌入式系统基础 课 程 说 明 书 设计题目:出租车计价器 学院:太原理工大学现代科技学院 班级:电子信息 姓名: 学号: 一、设计题目: 出租车计价器 二、设计思路: 如今单片机由于其体积小,性能完善,所以广泛应用于各个行业中。在出租车上,计价器便采用了单片机的应用技术,采用一系列的外部设备将出租车行驶以及停车等各个状态输入单片机,通过程序加以运算控制,再输出显示以及打印等。 我们试着用所学的知识,设计并模拟出租车计价器的工作方式,通过实践来掌握应用设备的工作原理。 三、设计任务 ●出租车计价器需要的主要外部设备有公里计数器,以及显示、定时装置,通过线路连 接构成一个完整的系统。 ●公里计数器设想:利用光电或者霍尔效应原理对车轮转过360°角位移产生一个脉冲 信号送给单片机作为一定距离的计数值。

●显示器:用LED显示,动态扫描显示,不断输出即时价格已及时间。 ●定时装置(本设计中未引入):记录在停车或某些情况下的时间,用于辅助计价。 四、里程计数器的原理(光电式) 在与车轴同步的轴上装有一隔光盘,上仅有以窄缝可以通光。在隔光盘两侧分别装有与车体固定的光源和感光元件。当隔光盘随轴转动时,光源发出的光被隔光盘隔离,只有在窄缝处感光元件接收到光信号,对后续电路产生一个脉冲。这就是对里程转换为计数值的基本原理。 其产生的脉冲信号则作为单片机计数器的输入信号,当单片机中计数器计到某一数量即为车行驶一公里,并对价格进行增加。在没有实际对这样计数装置试用,只能对其原理进行分析,在之下的程序设计中只取其脉冲信号作为单片机输入信号()。 五、LED显示电路 对Array设计总 体分析 下,只 需对其 价格进 行显示,选用四个LED数码管分别显示价格的百位、十位、个位以及十分位(单位:元)。显示方式采用动态扫描的方式,数据输出为P0口,位选为P2口,共阴极(如图)。 六、计价器的计价要求 ●计价方式:起价(两公里)白天8元,晚上元;由一开关进行选择。每公里元。 ●转数与公里数:汽车轮胎周长近似为1.5米,故一百米需要转过67圈,计67个数产 生一个溢出中断。 七、电路原理图及引脚 八、源程序 ORG 0000H ;起始地址 AJMP START ORG 001BH ;计数中断地址 LJMP CNT1 ORG 0030H ;主程序地址 START: MOV PSW, #00H MOV IE, #88H ;IE=B MOV TMOD, #60H ;TMOD=01100000B,T1工作方式2 MOV TH1, #0BDH ;自动重装 MOV TL1, #0BDH ;计67个数 SETB TR1 ;计数器启动 CLR ;点亮小数点dp MOV R4, #0FFH ;置数-1

出租车计价器课程设计

. 摘要 本设计的是一个基于单片机STC89C52的出租车自动计费设计,附有复位电路,时钟电路,键盘电路等。复位电路是单片机的初始化操作,除了正常的初始化外,为摆脱困境,通过复位电路可以重新开始。时钟电路采用12MHz的晶振,作为系统的时钟源,具有较高的准确性。 在上电时字符型液晶1602显示最初的起步价,里程收费,等待时间收费三种收费,通过按键可以调整起步价,里程收费,等待时间收费。通过按键模拟出租车的运行,暂停,停止。在1602液晶上可以显示运行的时间,运行时暂停的时间,通过计算可以得出总共的费用和总的路程。在这里主要是以STC89C52单片机为核心控制器,P1口接1602液晶显示模块。 关键字STC89C52;1602液晶;出租车计费器

第一章绪论 1.1 出租车计价器概述 我国在70年代开始出现出租车,但那时的计费系统大都是国外进口不但不够准确,价格还十分昂贵。随着改革开放日益深入,出租车行业的发展势头已十分突出,国各机械厂家纷纷推出国产计价器。出租车计价器的功能从刚开始的只显示路程(需要司机自己定价,计算后四舍五入),到能够自主计费,以及现在的能够打一发票和语音提示、按时间自主变动单价等功能。随着城市旅游业的发展,出租车行业已成为城市的窗口,象征着一个城市的文明程度。 本次设计的目的在于现在各大中城市出租车行业都已普及自动计价器,所以计价器技术的发展已成定局。而部分小城市尚未普及,但随着城市建设日益加快,象征着城市面貌的出租车行业也将加速发展,计价器的普及也是毫无疑问的,所以未来汽车计价器的市场还是十分有潜力的。 1.2 单片机的概述 计算机系统已明显地朝巨型化、单片化、网络化三个方向发展。巨型化发展的目的在于不断提高计算机的运算速度和处理能力,以解决复杂系统计算和高速数据处理,比如系统仿真和模拟、实时运算和处理。单片化是把计算机系统尽可能集成在一块半导体芯片上,其目的在于计算机微型化和提高系统的可靠性,这种单片计算简称单片机。单片机的部硬件结构和指令系统主要是针对自动控制应

相关主题
文本预览
相关文档 最新文档