2010_出租车计价器解析

2010_出租车计价器解析
2010_出租车计价器解析

一、方案设计

1.1 功能要求

1. 用前4位数码管实时显示里程数(Z),单位为公里,最后一位为小数位;用后4位数码管时时显示金额数(J),单位为元,最后一位为小数位。

2. 规定出租车单程价格为2元/公里,往返则价格为1.5元/公里;单程/往返分别由“单程”按键和“往返”按键设定。

3. 车速<5公里/小时的时间累积为总等待时间T(分钟),每5分钟等待时间相当于里程数增加1公里。

4. 起步公里数为3公里,价格为8元;若实际运行大于3公里,按“设计任务2”计算价格。

5. 必须充分利用比赛指定的硬件平台上的资源进行设计。

6. 用单片机控制电机转动,并用光电传感器检测转盘转动模拟车速,车速与转盘转速成正比。转盘转速为5转/秒对应车速为5公里/小时,转盘转速为50转/秒对应车速为50公里/小时,依此类推。

7. 要求公里数检测误差不超过±10%。

8. 到达目的地后,按“暂停”键,计价器可暂停计价。

9. 按“清除”键,计价器能将记录数据(里程、等待时间与价格等)自动清0。

10.按“查询”键,能自动显示总等待时间T,再按下该键回到显示里程数、金额状态。

1.2系统工作原理及其组成

出租车计价是根据车所行驶的路程以及乘客乘车的方式综合决定的。出租车行驶总路程可以通过车轮的周长乘车轮旋转圈数得到。即可计算得到车轮旋转几周出租车能行驶一公里的路程。因此,使用槽型光耦的目的就是方便地计量车轮旋转的圈数。可在车轮转轴涂上白色条纹,其余部分涂成黑色,发光管照射转轴。当转轴转动时,反光与不反光交替出现,所以槽型光耦间断地接收光的反射信号,

输出电脉冲。再经过整形电路,输出标准TTL信号。输出的脉冲信号被接入到STC89C52单片机系统中,通过计算接收到的脉冲个数,计算出当前所行驶的路程。同时,根据不同的收费标准,选择相应的起步价、单价等收费标准进行计算。HD 7279管理键盘和数码显示,通过键盘能够实现启动、暂停、停止计价器、切换显示当前的行驶里程和需支付的车费。

出租车计价器用于记录里程、等待时间、是否往返、起步公里数与价格的关系,它能有效地避免司机与乘客间的矛盾,保障双方的利益。

模拟出租车计价器能根据总里程数、总等待时间长短、是否往返、起步公里数的情况作出相应报价等。当然实际的出租车计价器还具有能打印出车票等功能。总体模块如图1.2所示。

图1.2 电路的组成部分

二、硬件设计

2.1 单片机最小系统单元

主控机系统采用了Atmel 公司生产的 STC89C52单片机,它含有256 字节数据存储器,内置8K 的电可擦除FLASH ROM,可重复编程,大小满足主控机软

电容组成系统的内部时钟电路。

2.2 光电开关单元

传耦合器以光为媒介输电信号。它对输入、输出电信号有良好的隔离作用,所以,它在各种电路中得到广泛的应用。目前它已成为种类最多、用途最广的光电器件之一。光耦合器一般由三部分组成:光的发射、光的接收及信号放大。输入的电信号驱动发光二极管(LED),使之发出一定波长的光,被光探测器接收而产生光电流,再经过进一步放大后输出。这就完成了电—光—电的转换,从而起到输入、输出、隔离的作用。由于光耦合器输入输出间互相隔离,电信号传输具有单向性等特点,因而具有良好的电绝缘能力和抗干扰能力。又由于光耦合器的输入端属于电流型工作的低阻元件,因而具有很强的共模抑制能力。所以,它在长线传输信息中作为终端隔离元件可以大大提高信噪比。在计算机数字通信及实时控制中作为信号隔离的接口器件,可以大大增加计算机工作的可靠性。而槽型光耦为中断槽隙透视式光电传感器。

①.槽型光耦的特点:

信号单向传输,输入端与输出端完全实现了电气隔离,输出信号对输入端无影响,抗干扰能力强,工作稳定,无触点,使用寿命长,传输效率高。光耦合器是70年代发展起来产新型器件,现已广泛用于电气绝缘、电平转换、级间耦合、驱动电路、开关电路、斩波器、多谐振荡器、信号隔离、级间隔离、脉冲放大电路、数字仪表、远距离信号传输、脉冲放大、固态继电器(SSR)、仪器仪表、通信设备及微机接口中。在单片开关电源中,利用线性光耦合器可构成光耦反馈电路,通过调节控制端电流来改变占空比,达到精密稳压目的。

②.槽型光耦的工作原理:

槽隙两边分别装有红外发射器和接收器。当槽内无物体时,红外发射管的光直接照在硅光敏三极管的窗口上,从而产生大的电流输出;当有物体经过槽隙时,切断了光路,阻挡了信号的传输,这时光敏三极管无输出,这样可以辨别物体的有无。

③.槽型光耦的应用:

(1) 在逻辑电路上的应用

光电耦合器可以构成各种逻辑电路,由于光电耦合器的抗干扰性能和隔离性能比晶体管好,因此,由它构成的逻辑电路更可靠。

(2) 作为固体开关应用

在开关电路中,往往要求控制电路和开关之间要有很好的电隔离,对于一般的电子开关来说是很难做到的,但用光电耦合器却很容易实现。

(3) 在触发电路上的应用

将光电耦合器用于双稳态输出电路,由于可以把发光二极管分别串入两管发射极回路,可有效地解决输出与负载隔离地问题。

(4) 在脉冲放大电路中的应用

光电耦合器应用于数字电路,可以将脉冲信号进行放大。

(5) 在线性电路上的应用

线性光电耦合器应用于线性电路中,具有较高地线性度以及优良地电隔离性能。

(6) 特殊场合的应用

光电耦合器还可应用于高压控制,取代变压器,代替触点继电器以及用于A/D电路等多种场合。

光电脉冲的转换电路如图2.2所示:

图2.2光电脉冲的转换电路

槽型光耦用VCC=5V电源(如图2-2),可以安装在出租车车轮处。当出租车在行进过程中,则车轮就会不断对它遮挡,从而产生一系列脉冲。由于这些脉冲可能会被干扰,或者电平不稳定,因此就需要增加一个三级管(Q1)对信号进行放大。而74LS14是作为反相器的功能来使用,可以使OUT口输出的脉冲符合TTL 电平,直接可输入到STC89C52的INT0口。

计算:由于槽型光耦中的二极管的导通电压为0.7V,流过的电流为10mA,而电压源为5V电压,故R1两端电压为U=4.3V,流过的电流为I=10mA,因此R1=U/I=4.3V/10mA=430Ω≈500Ω。

而上拉电阻R2是用来限流,故R2≥10KΩ,故R2=10KΩ。

设计中以槽型光耦作为传感器元件,并且在实现阶段用函数信号发生器模拟光电传感器实现计程脉冲的形成。

2.3 键盘调整单元

当单价等信息需要进行修改时,就要用到键盘进行修改。由于调节信息不多,故采用4个独立键盘即可,分别实现显示金额和公里数、清零、暂停、单程和往返功能等作用。

键盘采用4*4矩阵按键,接在STC89C52的P3口,当有键按下时,相对应的接口被置0。矩阵键盘又称为行列式键盘,它是用4条I/O线作为行线,4条I/O 线作为列线组成的键盘。在行线和列线的每一个交叉点上,设置一个按键。电路原理图如图2.3所示,行线接P3.0~P3.3,列线接P3.4~P3.7。

S8:按1次,显示金额和公里数;按2次,进入调整中途等待计价。

S9:对上一次的计费进行清零,为下次载客准备。

S10:停止计价,方便客户查看金额。

S11:实现单程和往返单价的切换。

图2.3 键盘调整单元接线图

2.4 7279键盘、显示接口

采用HD7279芯片构成键盘显示电路,HD7279是一片具串行接口的,可同时驱动8位共阴式数码的智能显示驱动芯片,该芯片同时还可以连接多达64键的键盘矩阵,单片即可完成LED显示、键盘接口的全部功能。DIG0~DIG7和SA~S G键盘的列线和行线端口,用来完成对键盘的监视,译码和键值的识别。DIG0~DIG7为8个LED管的位驱动输出端,SA~SG分别为LED数码管的A段~G段的输出端,DP为小数点的驱动输出端。。HD7279与单片机仅需4跟接口线,

其中的CS为片选信号,当单片机访问HD7279即读键号或写指令时,应将片选端置为低电平,低电平有效。

CLK为数据串行传送的同步时钟输入端,时钟的上升沿表示数据有效。

DATA为串行数据端,当向HD7279发送数据时,DATA为输入端;当HD7279输出键盘代码时,DATA为输出端。

KEY为按键信号输出端,在无键按下时为高电平;而有键按下时此引脚变为低电平并且一直保持到键释放为止。在64阵列键盘中每个键的键码是用十六进制表示的,可用读键盘数据指令读出,其范围是00H~3FH。

HD7279需要一外接的RC震荡电路以供系统工作,其典型值R=1.5kΩ,C=15 pF。RESET为复位端。该端口由低电平变成高电平并保持25ms即复位结束。HD7 279A片内具有驱动电路,它可以直接驱动LED数码管,使外围电路变得简单可靠。HD7279键盘、显示接口电路如图2-4:

图2.4 7279键盘显示接口电路

三、软件设计

软件是单片机系统的灵魂,根据设计的要求,在本系统中主要有主程序、中断服务程序和键盘显示子程序、计算子程序等。在主程序中主要完成了寄存器的初始化部分以及对键盘和显示的控制。

3.1系统主程序

在主程序模块中,需要完成对各参量和接口的初始化、出租车起价和单价的初始化以及中断、计算、循环等工作。另外,在主程序模块中还需要设置启动/清除标志寄存器、里程寄存器和价格寄存器,并对它们进行初始化。然后,主程序将根据各标志寄存器的内容,分别完成启动、清除、计程和计价等不同的操作。

当汽车运行起来时,就启动计价,根据里程寄存器中的内容计算和判断行驶里程是否已超过起步价公里数。若已超过,则根据里程值、每公里的单价数和起步价数来计算出当前的总金额,并将结果存于总金额寄存器中;中途等待时,无脉冲输入,不产生中断,当时间超过等待设定值时,开始进行计时,并把等待价格加到总金额里,然后将总金额、里程和单价、往返价格送数码管显示出来。程序流程如图3.1所示。

、、

图3.1 主程序流程图

3.2 中断程序

每当光电传感器输出一个低电平信号就使单片机中断一次,当里程计数器对里程脉冲计满3600次时,进入里程计数中断服务程序中,里程变量加一。主函数中总金额也相应地变化。在中途等待中断程序中,每1ms产生一次中断,将由当前里程计算出速度值送入某个缓存变量,每5分钟将缓存变量中的值和当前速度值比较,当汽车小于设定的车速,光电传感器5分钟输出信号,当前速度值小于缓存变量内的值,则进入等待计时,每5分钟记一次价格。如图3.2

图3.2 中断服务程序

3.3 计算程序

计算程序根据里程数分别进入不同的计算公式。如果里程大于3公里,则执行公式:总金额=起步价+(里程-3)*单价+等待时间*等待单价;否则,执行公式:总金额=起步价+等待时间*等待单价;程序框图如3.3所示。

图3.3 计算程序框图

3.4 显示程序

程序利用定时器每1ms产生一次中断,相应变量置位,点亮一个数码管,显示一位数据,利用主函数内的循环,实现动态扫描显示,同时根据数码管余辉和人眼暂留现象,即可实现显示。

{0x1c,0x1d,0x1e,0x1f,0x14,0x15,0x16,0x17,

0x0c,0x0d,0x0e,0x0f,0x04,0x05,0x06,0x07}; //实际电路当中所测得键值编码s0-s15

图3.4 键盘显示子程序

四、系统测试

4.1调试与测试

采用KeilC51编译器进行源程序编译及仿真调试,同时进行硬件电路板的设计制作。硬件电路制作完毕,用万用表检测有无短路开路等现象,确定硬件电路没有问题后,用仿真头与硬件电路相连,运行程序进行调试。

若调试不成功,则可再单独调试程序和硬件电路。程序用软件仿真运行,硬件电路再次检查有无焊错,或者元件与插座接触不良等方面问题;确认均无问题后,再次把软件和硬件联机调试,直至功能正常。把程序烧录进单片机STC89C52结束调试。

4.2 里程计价测试

采用光电传感器产生外部中断,设定中断间隔为10ms,假定3600个脉冲为1公里,则此时车速为1km/h=5圈/S.整个系统以此为基础,通过计费程序完成中金额的计算。表4.1的测试条件是:假设单程的单价是1.5元,起步价为8元(包含3公里),分别不公里程测试得数据如表:

表4.1 实际金额和里程数

表 4.2的测试条件是:假设在单程运行中的单价 1.5元的情况下行驶了10km,进行中途等待,分别等待不同的时间(5分钟为一个单位计费1元),起步价为8元(包含3km)。

表4.2 总金额对比

附录A:系统原理图

附录B:源程序及注释

#include

#define uchar unsigned char

#define uint unsigned int

/*7279指令*/

#define com_read 0x15 //读键盘数据指令

/*变量及I/O口定义 */

sbit cs= P1^0; //cs 连接于 P1.0,低电平有效

sbit clk=P1^1; //clk 连接于 P1.1

sbit key=P1^3; //dat 连接于 P1.2

sbit dat=P1^2; //key 连接于 P1.3,低电平有效

/*函数原型声明 */

void write7279(uchar,uchar); //写入到HD7279

uchar read7279(uchar); //从HD7279读出

void send_byte(uchar); //发送一个字节

uchar receive_byte(void); //接收一个字节

void short_delay(void); //延时约8us

void long_delay(void); //延时约50us

void delay_10ms(uchar times); //延时约times*10ms

void delay_1ms(uchar times) ; //延时约times*1ms

void Init_date();

uchar qianwei,baiwei,shiwei,gewei;

uint tt,aa,aaa,wait,dengdai,gongli,jiage,jg;

bit flag0,flag1,flag2,flag3;

uchar led[]={0x1c,0x1d,0x1e,0x1f,0x14,0x15,0x16,0x17,

0x0c,0x0d,0x0e,0x0f,0x04,0x05,0x06,0x07}; //键值编码s0-s15

/*发送字节函数发送的字节为out_byte*/

void send_byte(uchar out_byte)

{

uchar i;

cs=0;

long_delay();

for(i=0;i<8;i++)

{

if(out_byte&0x80)

dat=1;

else

dat=0;

clk=1;

short_delay();

clk=0;

short_delay();

out_byte=out_byte*2; //左移一位 }

dat=0;

}

/*接收字节函数接收的字节in_byte*/

uchar receive_byte(void)

{

uchar i,in_byte;

dat=1;

long_delay();

for(i=0;i<8;i++)

{

clk=1;

short_delay();

in_byte=in_byte*2;

if(dat)

in_byte=in_byte|0x01;

clk=0;

short_delay();

}

dat=0;

return(in_byte);

}

/*发送带数据指令函数*/

void write7279(uchar commond,uchar date)

{

send_byte(commond);

send_byte(date);

}

/*读指令函数*/

uchar read7279(uchar commond)

{

send_byte(commond);

return(receive_byte());

}

/*短延时函数1*/

void short_delay(void) //延时约8us {

uchar i;

for(i=0;i<2;i++);

}

/*短延时函数2*/

void long_delay(void) //延时约50us {

uchar i;

for(i=0;i<12;i++);

}

void zting() //停止子程序

{

flag1=!flag1;

if(flag1)

{

EX0=0; //关闭中断定时器

TR0=0;

}

else

{

EX0=1;

TR0=1;

}

}

uchar read_key_code(void) //读键值

{

uchar i_code;

if(!key)

{

i_code=read7279(0x15);

while(!key); //消除键盘抖动

return i_code; //读键盘值}

else

return 0xff; //无键盘按下

}

uchar read_key_number(void) //读键盘号

{

uchar l_o;

uchar i;

l_o=read_key_code();

if(l_o!=0xff) //判断是否有键盘按下{

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

昆明理工大学信息工程与自动化学院学生实验报告 (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记录,结果由数码管显示出来。

课程设计-出租车自动计费器设计

新疆大学 课程设计报告 所属院系:电气工程学院 专业:电气工程及其自动化课程名称:电子技术基础B 设计题目:出租车自动计费器班级:电气#####班 学生姓名:要要 学生学号:@@@@@@ 指导老师: 常翠宁刘兵完成日期:2013. 1. 4

出租车自动计费器 一、总体方案的选择 1.拟定系统方案框图: 方案一: 汽车在行驶时,里程传感器将里程数转换成与之成正比的脉冲个数,然后由计数译码电路变成收费金额。里程传感器由磁铁和干簧管组成,磁铁置于变速器涡轮上,每行驶100米,磁铁与干簧管重合一次,即输出一个脉冲信号,则10个脉冲/公里(设为P3)。里程单价(设2.1元/公里)可由两位(B2=2、B1=1)BCD拨码开关设置,经比例乘法器(如J 690)后将里程计费变换成脉冲数P1=P3(1B2+0.1B1)。由于P3=10,则P1为21个脉冲,即脉冲当量为0.1元/脉冲。 同理,等车计费也可以转换成脉冲当量,这需要由脉冲发生器产生10个脉冲/10分钟(设为P4),如果等车单价为0.6元/10分钟(置B4=0、B3=6),经比例乘法器后将等车计费变换成脉冲数P2=P4(0B4+0.1B3)。由于P4=10,则P2为6个脉冲,即得到相同的脉冲当量为0.1元/脉冲。同理,起步价(设3元)也可以转换成脉冲数(P0= 单价/当量=5/0.1=50个脉冲)或者将P0作为计数器的预置信号(框图所示)。最后行车费用转换成脉冲总数P=P0+P1+P2,其结果用译码显示器显示。 图1:出租车自动计费器方案一框图

脉冲,行程里程及起步电路则是60毫秒/脉冲。而等候电路为6秒/脉冲。实现此电路我用555多谐振荡器构成。为了减少实验测量时间,我把脉冲周期都缩小了1000倍,即0.06毫秒/脉冲和6毫秒/脉冲。设计电路图及仿真波形图如下: 图3:0.06毫秒555多谐振荡脉冲电路 图4:0.06毫秒脉冲波形图

出租车计价器收费方法的算法设

《出租车计价器收费方法的算法设计》 教学设计 一、教学设计说明 [现状分析] 算法作为信息科技课程教学内容,旨在培养和提高学生的逻辑思维能力,以及用计算机去分析问题、解决问题的能力。然而算法的相关概念比较枯燥,理论过于抽象,对学生的能力要求较高,所以在教学过程中往往难以把握,也不容易引发学生的兴趣。因此需要教师在教学设计和课堂教学中,运用各种手段,使教学内容生动起来,活起来。 [关于教学目标] 在知识目标方面,通过对出租车计价器收费方法的算法设计,使学生理解分支结构解决问题的基本思想,能用分支结构算法来解决实际问题。 在能力目标方面,通过对出租车计价器收费方法的算法设计,培养和提高学生逻辑思维能力以及培养学生在算法研究中的自学探究能力和解决具体问题的能力。 在情感目标方面,通过对出租车计价器收费方法的算法设计,激发学生兴趣,提高学生学习的主动性和积极性。让学生知道算法设计在现实生活中的重要性和程序设计的实用性。同时也倡导同学间的相互研究

讨论的风气,逐步养成合作学习的好风气,取长补短、共同提高。[关于教学设计] 中小学信息科技课程既承担着让中小学生了解、熟悉、掌握信息科技的基础知识和基本操作技能的任务,又承担着通过学习,学会利用信息技术发展创造性思维,培养解决真实、开放问题能力的任务。 因此以项目式学习的方法来展开教学,学生以小组为单位进行选择,开展项目式学习。以生活中的实际情况为例,激发学生的学习热情与兴趣。 整个教学过程如下: 1、引入问题 2、布置任务 3、建立数学模型 4、确定算法画出流程图: 5、编写应用程序 6、进行作品展示 7、活动反思 [关于教学策略]

数字电路出租车计价器设计

时序逻辑电路课程设计 引言: 我们组选择了题目一,设计出租车计价器,通过对课本、资料的查阅,再经过构思,设计,搭建电路,仿真,得出了结果,虽然不够完美,但是也掌握了一些知识,增加了对各种原件的印象。下文将详细给出设计。 一、资料查阅 通过参考数字电路课本,以及数字电路实验书,再经过网络查阅,也参考了网上有的类似的设计,想出了电路的基本思路。 二、对于要求的实现 要求1:根据出租车上的速度传感器传来的脉冲个数和设置的里程单价来计算对应的总价格,并将总价格通过LED实时显示。 对于此要求的实现,通过查阅,我们发现了74LS160十位计数器,有预制与清零功能,能进行0-9重复计数。功能表如下 要求2:起步价可以设置:。 由于74LS160有置数功能,所以可以置数,能够要求其从一个确定的数开始计数,所以可以设置起步价。对于从要过了起步价里程才开始计数,因为每一个单位里程是一次脉冲,而芯片又是每一次脉冲才记一次数,所以应用触发器的存储功能来使前几次脉冲无法传至芯片。 要求3:里程单价可以设置。 运用比例乘法器,可以实现脉冲的改变。比如用CC4527比例乘法器,输入一个BCD 数,其输出的脉冲为输入脉冲的BCD的十分之一倍。比如速度传感器的每个脉冲为1km,单价为2元,那么就输入20的BCD数,那么比例乘法器就会输出一个2倍速度传感器脉冲的脉冲信号,以此脉冲作为后面电路的时钟信号,可以实现单价2元。其他单价以此类推,但是由于仿真软件中没有找到比例乘法器,所以仿真中没有单价设置这一项。 要求4:可以对总价格进行复位,从而为下次计费做好准备。

运用74LS160的置数功能,重新对其进行置数即可实现下次重新开始计费。 三、具体电路 时序逻辑:左下角U1为里程脉冲发生器,经过N个D锁存器的延时,才可以传至上面的74LS160芯片,芯片开始计数,显示在右上方的两位显示器上,即计程车的价钱。电路中有两个单刀单置开关,上面的S1和下面的S2。S1的作用为每次重新搭载乘客后的清零和重新显示起步价,S2的功能为开启里程传感器,为计程车进行计价。下面对电路各个部分进行解释: 1.计数部分: 用N块74LS160芯片,即可显示N位十进制数,本次仿真以2位为例,也就是只可以显示0-99元的价格。上图七段显示管U5为十位,U3为个位。如图通过开关S5进行起步价设置控制,芯片有CR和LD引脚,CR为1,LD为0时可以进行置数,入上图,设置起步价为5元。由于当有脉冲时候,才会执行置数功能,而又不能和里程传感器用同一个时钟信号,所以单独设置了一个信号源,通过S1开关,既控制LD电位,又通过与门或门非门作为选择开关控制U16信号源的信号是否输入芯片。当开关断开,LD电位为0,U16信号导通到U2芯片,执行置数功能。当S1开关闭合,CR和LD电位都为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;

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

摘要 出租车已经是城市交通的重要组成部分,从加强行业管理以及减少司机与乘客的纠纷出发,具有良好性能的计价器对出租车司机和乘客来说都是很必要的。而采用模拟电路和数字电路设计的计价器整体电路的规模较大,用到的器件多,造成故障率高,难调试。而采用单片机进行的设计,相对来说功能强大,用较少的硬件和适当的软件相互配合可以很容易地实现设计要求,且灵活性强,可以通过软件编程来完成更多的附加功能。本设计的是一个基于单片机AT89S52的出租车自动计费设计,附有复位电路,时钟电路,键盘电路等。复位电路是单片机的初始化操作,除了正常的初始化外,为摆脱困境,通过复位电路可以重新开始。时钟电路采用12MHz的晶振,作为系统的时钟源,具有较高的准确性。 在上电时LED数码管显示最初的起步价,里程收费,等待时间收费三种收费。按暂停键,计价器可暂停计价,按查询键,在LED数码管上可以显示运行时等待的时间。通过计算可以得出总共的费用和总的路程。在这里主要是以AT89S52 单片机为核心控制器,P0口、P2 口接两片四合一数码管,P1口接按键,通过按键输入。 关键词:单片机 AT89S52;LED数码管;出租车计费器;

目录 1 概述 (1) 1.1 课题简介 (1) 1.2 功能要求 (1) 2 系统总体方案及硬件设计 (2) 2.1 系统工作原理及总体方案 (2) 2.2 单片机最小系统单元 (3) 2.3 霍尔传感器检测单元 (3) 2.4 键盘调整单元 (5) 2.5 显示单元 (5) 3 软件设计 (7) 3.1系统主程序 (7) 3.2 按键扫描程序 (8) 3.3 中断程序 (9) 3.4 计算程序 (10) 3.5 显示程序 (10) 4 实验仿真 (12) 4.1 Proteus介绍 (12) 4.2 调试与测试 (12) 4.3 里程计价测试 (12) 5 课程设计体会 (14) 参考文献 (15) 附1:系统原理图 (16) 附2:源程序代码 (16)

出租车计价器系统完整版

智能电子产品设计与制作 课程设计(论文) 题目: 《出租车计价器系统设计》 学院:电气与电子信息工程学院 专业名称: 学号: 学生姓名: 同组成员: 指导教师: 课设时间: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、单片机模块

(VHDL实验报告)出租车计费器的设计

电子科技大学成都学院学院

一、实验名称 出租车计费器的设计 二、实验目的 1、了解出租车计费器的工作原理。 2、学会用V HDL 语言编写正确的七段码管显示程序。 3、数量掌握用V HDL 编写复杂功能模块。 4、进一步数量状态积在系统设计中的应用。 三、实验原理 出租车计费器一般都是按公里计费,通常是起步价 xx元(xx元可以行走x公里),然后再是x x元/公里。所以要完成一个出租车计费器,就要有两个计数单位,一个用来计公里,另外一个用来计费用。通常在出租车的轮子上都有传感器,用来记录车轮转动的圈数,而车轮子的周长是固定的,所以知道了圈数自然也就知道了里程。在这个实验中,就要模拟出租车计费器的工作过程,用直流电机模拟出租车轮子,通过传感器,可以得到电机每转一周输出一个脉冲波形。结果的显示用 8 个七段码管,前四个显示里程,后三个显示费用。 在设计VHDL程序时,首先在复位信号的作用下将所有用到的寄存器进行清零,然后开始设定到起步价记录状态,在此状态时,在起步价规定的里程里都一直显示起步价,直到路程超过起步价规定的里程时,系统转移到每公里计费状态,此时每增加一公里,计费器增加相应的费用。 为了便于显示,在编写过程中的数据用BCD码来显示,这样就不存在数据格式转换的问题。比如表示一个三位数,那么就分别用四位二进制码来表示,当个位数字累加大于9时,将其清零,同时十位数字加1,依此类推。 四、实验内容 本实验要完成的任务就是设计一个简单的出租车计费器,要求是起步价3元,准行1公里,以后1元/公里。显示部分的七段码管扫描时钟选择时钟模块的

1KHz,电机模块的跳线选择GND端,这样通过旋钮电机模块的电位器,即可达到控制电机转速的目的。另外用按键模块的S1来作为整个系统的复位按钮,每复位一次,计费器从头开始计费。直流电机用来模拟出租车的车轮子,没转动一圈认为是行走1米,所以每旋转1000 圈,认为车子前进1公里。系统设计是需要检测电机的转动情况,每转一周,计米计数器增加 1。七段码管显示要求为前 4个显示里程,后3个显示费用。 五、实验步骤 1、打开Q UARTUSII 软件,新建一个工程。 2、建完工程之后,再新建一个V HDL File,打开V HDL 编辑器对话框。 3、按照实验原理和自己的想法,在V HDL 编辑窗口编写V HDL 程序。其 程序如下所示:

出租车计价器设计与实现

沈阳航空航天大学 课程设计报告 课程设计名称:微机系统综合课程设计 课程设计题目: 出租车计价器的设计与实现 院(系): 计算机学院 专 业 : 计算机科学与技术 班 级: 24010104 学 号: 2012040101037 姓 名: 程里 指导教师: 罗振 说明:结论(优秀、良好、中等、及格、不及格)作为相关教环节考核必要依据;格式不符合要 求;数据不实 ,不予通过。报告和电子数据必须作为实验现象重复的关键依据。

学术诚信声明 本人声明:所呈交的报告(含电子版及数据文件)是我个人在导师指导下独立进行设计工作及取得的研究结果。尽我所知,除了文中特别加以标注或致谢中所罗列的内容以外,报告中不包含其他人己经发表或撰写过的研究结果,也不包含其它教育机构使用过的材料。与我一同工作的同学对本研究所做的任何贡献均己在报告中做了明确的说明并表示了谢意。报告资料及实验数据若有不实之处,本人愿意接受本教学环节“不及格”和“重修或重做”的评分结论并承担相关一切后果。 本人签名: 日期:年月

沈阳航空航天大学课程设计任务书

课程设计总结:

目录 1 引言 0 1.1出租车计价器概述 0 1.2计价器整体功能描述结构 0 1.3各部分电路功能描述 (1) 2计价器硬件设计 (1) 2.1系统的硬件构成及功能 (1) 2.2MCS-51系列单片机内部结构及功能部件 (3) 2.2.1MCS-51系列单片机的内部结构框图 (3) 2.2.2单片机外部引脚说明 (4) 2.2.3并行输入/输出接口 (6) 3系统的软件设计 (6) 3.1软件总体设计 (6) 3.2系统主程序设计 (8) 3.3显示子程序服务程序 (9) 3.4按键服务程序 (9) 4系统调试与测试结果分析 (10) 4.1系统调试 (10) 4.1.1硬件调试 (10) 4.1.2软件调试 (10) 4.1.3软硬件联调 (10) 4.2 电路图 (11) 参考文献 (10) 附录(关键部分程序清单) (13)

出租车自动计费器设计(课程设计报告模板)

目录 1 绪论 (1) 1.1设计背景 (1) 1.2QUARTUS II简介 (1) 1.3VHDL语言基础 (2) 2 出租车计费器总体设计结构 (2) 2.1系统设计要求和目的 (2) 2.2.1 系统设计要求 (2) 2.2.1 系统设计目的 (2) 2.2设计思路 (3) 2.3系统总体结构 (3) 2.4出租车计费器系统工作流程图 (4) 3 出租车计费器的实现 (5) 3.1出租车计费器的顶层原理图 (5) 3.2系统各功能模块的实现 (5) 3.2.1 计费模块JIFEI (5) 3.2.2 计量模块JILIANG (6) 3.2.3 显示控制模块SELTIME (7) 3.2.4 显示模块DELED (7) 4 出租车计费器系统仿真及分析 (8) 4.1计费系统的仿真 (8) 4.2单元模块的仿真及分析 (10) 4.2.1 译码显示模块的仿真及分析 (10) 4.2.2 显示控制模块的仿真及分析 (12) 4.2.3 计量模块的仿真及分析 (13) 4.2.4 计费模块的仿真及分析 (13) 5 锁定管脚及硬件实现 (14) 5.1锁定管脚图 (14) 5.2硬件实现 (14) 5.2.1 显示结果的几种情况 (15) 5.2.2 硬件实现总结 (16) 6 设计体会与总结 (17) 参考文献 (18) 附录 (19) 1JILIANG模块的VHDL编程 (19) 2JIFEI模块的VHDL编程 (21) 3SELTIME控制模块的VHDL编程 (22) 4DELED模块的VHDL编程 (23)

1 绪论 1.1 设计背景 随着我国社会经济的全面发展,各大中小城市的出租车营运事业发展迅速,出租车已经成为人们日常出行选择较为普通的交通工具。于是,出租车行业以低价高质的服务给人们带来了出行的享受。但是总存在着买卖纠纷困扰着行业的发展。而在出租车行业中解决这一矛盾的最好方法就是改良计价器。汽车计价器是乘客与司机双方的交易准则,它是出租车行业发展的重要标志,是出租车中最重要的工具,它关系着交易双方的利益。具有良好性能的计价器无论是对广大出租车司机朋友还是乘客来说都是很必要的。因此,汽车计价器的研究也是具有一定意义的。出租车计费器是出租车营运收费的专用智能化仪表,是出租车市场规范化,标准化以及减少司机与乘客之间发生纠纷的重要设备。一种功能完备,简单易用,计量准确的出租车计费器是加强出租车行业管理,提高服务质量的必需品。本设计就是采用VHDL硬件描述语言作为设计手段,采用自己的设计思路,得到一种出租车计价系统的软件结构,通过Quartus II 6.0软件下进行仿真,证明所设计的电路系统完成了出租车计价的功能,各项指标符合设计要求,具有一定的实用性。 1.2 QUARTUS II简介 QUARTUS II 是Altera公司的综合性CPLD/FPGA开发软件,支持原理图、VHDL、VerilogHDL等多种设计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整CPLD设计流程。QUARTUS II 支持Altera的片上可编程系统(SOPC)开发,集系统级设计、嵌入式软件开发、可编程逻辑设计于一体,是一种综合性的开发平台。Altera QUARTUS II 作为一种可编程逻辑的设计环境, 由于其强大的设计能力和直观易用的接口,越来越受到数字系统设计者的欢迎。

出租车自动计费器EDA设计

出租车自动计费器EDA设计 6.7.1 设计要求 设计一个出租车自动计费器,计费包括起步价、行车里程计费、等待时间计费三部分,用三位数码管显示金额,最大值为元,最小计价单元为元,行程 3公里内,且等待累计时间3分钟内,起步费为8元,超过3公里,以每公里元计费,等待时间单价为每分钟1元。用两位数码管显示总里程。最大为99公里,用两位数码管显示等待时间,最大值为59min。 6.7.2原理描述 根据层次化设计理论,该设计问题自顶向下可分为分频模块,控制模块计量模块、译码和动态扫描显示模块,其系统框图如图6-63所示,各模块功能如下: 图6-63出租车自动计费器系统框图 1分频模块 & 分频模块对频率为240Hz的输入脉冲进行分频,得到的频率为16Hz,10Hz和1Hz的三种频率。该模块产生频率信号用于计费,每个1HZ脉冲为元计费控制,10HZ信号为1元的计费控制,16Hz信号为元计费控制。 2 计量控制模块 计量控制模块是出租车自动计费器系统的主体部分,该模块主要完成等待计时功能、计价功能、计程功能,同时产生3分种的等待计时使能控制信号en1, 行程 3公里外的使能控制信号en0。其中计价功能主要完成的任务是:行程 3公里内,且等待累计时间3分钟内,起步费为8元;3公里外以每公里元计费,等待累计时间3分钟外以每分钟1元计费;计时功能主要完成的任务是:计算乘客的等待累计时间,计时器的量程为59分,满量程自动归零;计程功能主要完成的任务是:计算乘客所行驶的公里数。计程器的量程为99公里,满量程自动归零。 3 译码显示模块 该模块经过8选1选择器将计费数据(4位BCD码)、计时数据(2位BCD码)、计程数据(2位BCD码)动态选择输出。其中计费数据jifei4~ jifei1~送入显示译码模块进行译码,最后送至百元、十元、元、角为单位对应的数码管上显示,最大显示为元;计时数据送入显示译码模块进行译码,最后送至分为单位对应的数码管上显示,最大显示为59秒;计程数据送入显示译码模块进行译码,最后送至以公里为单位的数码管上显示,最大显示为99公里。

出租车计价器说明

出租车计价器 1功能描述 出租车计价器是有液晶显示,按键控制,进行价格的设定,实现模拟出租车计价器的控制。 2产品模块配置 1. EDM606-12864点阵液晶 2. EDM001-MCS51单片机主板 3. EDM403-8位独立按键 4. EDM502直流电机 5. EDM405 PNP三极管驱动 6. EDM314+-5V,+-12V直流电源模块 3 单元模块电路及功能 1. EDM314+-5V,+-12V主流电源模块为各模块提供电源。 4产品模块连线 各模块都连接电源 5V,GND。 EDM001-MCS51主机:P00~P07 连EDM606-12864点阵液晶: DB0~DB7 EDM001-MCS51主机:P10~P17 连EDM606-12864点阵液晶: RST~NC EDM001-MCS51主机:P20~P27 连 EDM403-8位独立按键: F2~左 EDM001-MCS51主机:P30 连 EDM405 PNP三极管驱动: IN EDM001-MCS51主机:P32 连 EDM502直流电机:PULSE EDM405 PNP三极管驱动:OUT 连 EDM502直流电机:M- EDM502直流电机:M+ 连 VCC 产品原理图:

6 实验步骤及调试 F2为开机键 F1为菜单设置保存键 SET为启动键 0K按一次为暂停键按二次为完成键 上为菜单设置键 下为菜单设置键 左为菜单设置键 右为菜单设置键 功能使用说明:连线完成上电 按F2开机过五秒后进入出租车计价器菜单按F1 设置菜单此时设置的菜单会变黑,按左右键进行加减(只有价格可以修改)当要修改其他的参数的时候会提示不能操作,(因为路程等其他参数是不能进行修改的不符合实际)价格设置完成后按F1保存按SET启动电机转动当遇到堵车或其他原因要暂时停车可按OK键在此行驶时按SET键即可继续启动, 停止时按OK键,按F1键查看菜单行驶》单价》总价》时间》总路程》载人次数》工作时间》累计金额。 再按OK,清零。 当提示无权操作的时候,按F1返回。

出租车计价器电路设计

. . . . 中北大学 课程设计说明书 学生:学号: 学院: 仪器与电子学院 专业: 微电子科学与工程 题目: 出租车计价器电路设计 指导教师: 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设计思路 出租车自动计费器是根据客户用车的实际情况而自动显示用车费用的数字仪表。仪表根据用车起价、行车里程计费及等候时间计费三项求得客户用车的总费用,通过数码自动显示。里程传感器可用干簧继电器实现,安装在与汽车车轮相连接的涡轮变速器上的磁铁使干簧继电器在汽车每前进十米闭合一次,即输出一个脉冲信号,实验用一个脉冲源模拟。

基于单片机的出租车计价器设计报告

《单片机应用与仿真训练》设计报告出租车计价器设计 姓名学号: 专业班级: 指导老师: 所在学院: 2012年6月25日

摘要 本设计用直流电机转动模拟出租车车轮转动,实现出租车多功能地计价功能.设计采用AT89S52单片机为主控芯片,用光电对管检测电机转盘转速,采用24C02芯片为系统在掉电时路程、钱数等重要信息提供存储保护,采用两个四位8段共阴数码管显示里程、总价格和等待时间等信息.本设计可以实现单双程设置、系统暂停、空车指示、信息显示、掉电保护等功能. 出租车计价是根据车所行驶地路程以及乘客乘车地方式综合决定地.出租车行驶总路程可以通过车轮地周长乘车轮旋转圈数得到.即可计算得到车轮旋转几周出租车能行驶一公里地路程.使用光电对管能方便地计量车轮旋转地圈数,输出地脉冲信号被接入到AT89S52单片机系统中,通过计算接收到地脉冲个数,计算出当前所行驶地路程,并且可以计算实时地速度.与此同时,根据不同地收费标准计算收费.通过键盘能够实现往返设置,启动、暂停、停止计价器、设置单返程等. 关键字:出租车计价器,AT89S52,24C02,光电对管 Abstract This design with DC motor to rotate the analog taxi wheels turning, multi-purpose taxi pricing function. Design using AT89S52 MCU for master chip with a photoelectric tube test motor turntable speed, AT24C02 chip to make the system power-down distance, money and other important information on the storage protection, the use of two four-segment common cathode digital display tube mileage, the total price and waiting time information. This design enables single and double-way set, system halted, empty instructions, information display, power-down protection and other functions. The taxi meter according to the distance traveled by the vehicle and passengers ride the decision. Taxi driving the total distance by the circumference of the wheel drive wheel rotation laps. Can be calculated by the wheel rotation a few weeks a taxi to travel one kilometer away. The use of opto-the number of turns of the tube can be easily measured wheel rotation, the output

出租车自动计费器EDA设计

6.7出租车自动计费器EDA设计 6.7.1 设计要求 设计一个出租车自动计费器,计费包括起步价、行车里程计费、等待时间计费三部分,用三位数码管显示金额,最大值为999.9元,最小计价单元为0.1元,行程3公里内,且等待累计时间3分钟内,起步费为8元,超过3公里,以每公里1.6元计费,等待时间单价为每分钟1元。用两位数码管显示总里程。最大为99公里,用两位数码管显示等待时间,最大值为59min。 6.7.2原理描述 根据层次化设计理论,该设计问题自顶向下可分为分频模块,控制模块计量模块、译码和动态扫描显示模块,其系统框图如图6-63所示,各模块功能如下: 图6-63出租车自动计费器系统框图 1分频模块 分频模块对频率为240Hz的输入脉冲进行分频,得到的频率为16Hz,10Hz和1Hz的三种频率。该模块产生频率信号用于计费,每个1HZ脉冲为0.1元计费控制,10HZ信号为1元的计费控制,16Hz信号为1.6元计费控制。 2 计量控制模块 计量控制模块是出租车自动计费器系统的主体部分,该模块主要完成等待计时功能、计价功能、计程功能,同时产生3分种的等待计时使能控制信号en1, 行程 3公里外的使能控制信号en0。其中计价功能主要完成的任务是:行程 3公里内,且等待累计时间3分钟内,起步费为8元;3公里外以每公里1.6元计费,等待累计时间3分钟外以每分钟1元计费;计时功能主要完成的任务是:计算乘客的等待累计时间,计时器的量程为59分,满量程自动归零;计程功能主要完成的任务是:计算乘客所行驶的公里数。计程器的量程为99公里,满量程自动归零。 3 译码显示模块 该模块经过8选1选择器将计费数据(4位BCD码)、计时数据(2位BCD码)、计程数据(2位BCD码)动态选择输出。其中计费数据jifei4~ jifei1~送入显示译码模块进行译码,最后送至百元、十元、元、角为单位对应的数码管上显示,最大显示为999.9元;计时数据送入显示译码模块进行译码,最后送至分为单位对应的数码管上显示,最大显示为59秒;计程数据送入显示译码模块进行译码,最后送至以公里为单位的数码管上显示,最大显示为99公里。

基于Verilog HDL设计的出租车计价器.doc

西华大学课程设计说明书 题目:出租车计价器 专业:信息工程 年级:2009级 学生:潘帅 学号:33200908020**** 指导教师:林竞力 完成日期: 2012 年 6 月 6 日

摘要:本文介绍了一种采用可编程逻辑器件(FPGA/CPLD)进行出租车计费器的设计思想以及实现方法。本设计实现了出租车计费器所需的一些基本功能,计费金额包括起步价、里程计费、等待计时计费等。该设计采用模块化设计,在Quartus II9.0软件平台下,采用Verilog HDL 硬件描述语言描述和模拟仿真了分频模块、计程模块、计费模块、计时模块,译码以及动态扫描显示模块,完成了出租车计费器仿真设计和硬件电路的实现。 关键词:FPGA,出租车计费器,Quartus,Verilog HDL Abstract:This article describes the design ideas and methods of the taximeter, through the programmable logic device (FPGA/CPLD).The design of a taximeter to achieve the required basic functions,The total of billing included the starting price, metered, and wait for time billing.Through the Quartus II 9.0 Software Platform,Using Verilog HDL language completed the description and simulation of frequency module, the meter module, Billing module, timing modules, decoding, dynamic scanning display module. IT It has completed the taxi meter simulation and the hardware circuit. Keywords:FPGA, Taximeter, Quartus, Verilog HDL

出租车计价器控制电路的设计方案

数字电子课程设计 课题名称出租车计价器控制电路的设计 所在院系机电学院 班级07自动化<2)班 学号200710320227 姓名龚涛 指导老师张玲 时间2009-12-27

景德镇陶瓷学院 数字电子课程设计任务书 班级:07自动化<2)班姓名:龚涛指导老师:张玲

教研室主任签字:年月日 目录 0.前言4 1.设计要求及原理4 1.1 设计要求4 1.2 基本原理4 2.各单元设计说明5 2.1 单片机最小系统单元5 2.2 A44E霍尔传感器检测单元6 2.3 AT24C01存储单元7 2.4 键盘调整单元8 2.5 显示单元9 3程序设计9 3.1 系统主程序9 3.2 中断程序10 3.2.1 里程计数中断程序10

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

出租车计费器的设计

电子科技大学成都学院学院 标准实验报告 (实验)课程名称数字电路EDA设计与应用 姓名乱弹的枇杷 学号1240830 专业电气工程及其自动化 指导教师张

一、实验名称 出租车计费器的设计 二、实验目的 1、了解出租车计费器的工作原理。 2、学会用V HDL 语言编写正确的七段码管显示程序。 3、数量掌握用V HDL 编写复杂功能模块。 4、进一步数量状态积在系统设计中的应用。 三、实验原理 出租车计费器一般都是按公里计费,通常是起步价 xx元(xx元可以行走x公里),然后再是x x元/公里。所以要完成一个出租车计费器,就要有两个计数单位,一个用来计公里,另外一个用来计费用。通常在出租车的轮子上都有传感器,用来记录车轮转动的圈数,而车轮子的周长是固定的,所以知道了圈数自然也就知道了里程。在这个实验中,就要模拟出租车计费器的工作过程,用直流电机模拟出租车轮子,通过传感器,可以得到电机每转一周输出一个脉冲波形。结果的显示用 8 个七段码管,前四个显示里程,后三个显示费用。 在设计VHDL程序时,首先在复位信号的作用下将所有用到的寄存器进行清零,然后开始设定到起步价记录状态,在此状态时,在起步价规定的里程里都一直显示起步价,直到路程超过起步价规定的里程时,系统转移到每公里计费状态,此时每增加一公里,计费器增加相应的费用。 为了便于显示,在编写过程中的数据用BCD码来显示,这样就不存在数据格式转换的问题。比如表示一个三位数,那么就分别用四位二进制码来表示,当个位数字累加大于9时,将其清零,同时十位数字加1,依此类推。 四、实验内容 本实验要完成的任务就是设计一个简单的出租车计费器,要求是起步价3元,准行1公里,以后1元/公里。显示部分的七段码管扫描时钟选择时钟模块的

EDA课程设计出租车自动计费器

课程设计 课程设计名称: EDA课程设计 专业班级:电科1002班 学生姓名:XXX 学号: 2010483602XX 指导教师: XXX 课程设计时间:2013-2-25~2013-3-8

电子信息科学与技术专业课程设计任务书

审查意见指导教师签字: 教研室主任签字:庆辉 2013年 2月 25日 一、设计任务及要求 设计一个出租车计价器:计费包括起步价、行车里程计费、等待时间计费3部分。用3位数码管显示金额,最大值为999.9元,最小计价单元为0.1元;行程3公里,且等待时间累计3分钟,起步价10元,超过3公里,以每公里1.6元计费,等待时间单价为每分钟 1.5元;用两位数码管显示总里程,最大值为99公里用两位数码管显示等待时间,最大值为59min。 二、设计原理及总体框图 出租车自动计费器分为分频模块、控制模块、计量模块、计费模块、译码和显示模块。 A)、设计原理: (1)分频模块 分频模块对频率为240HZ的输入脉冲进行分频,得到的频率为16HZ、15HZ、和1HZ的3种频率。该模块产生频率信号用于计费,每个脉冲为0.1元计费控制,其中15Hz信号为1.5元的计费控制,16Hz信号为1.6元计费控制。 (2)计量控制模块 计量控制模块式出租车自动计费器系统的主体部分,该模块主要完成等待计时功能、计价功能、计程功能,同时产生3分钟的等待计时使能控制信号en1、行程3公里外的使能控制信号en0。其中计价功能主要完成的任务是:行程3公里且等待累计时间在3分钟起步价为10元3公里以外每公里1.6元计费,等待时间3分钟以外每分钟1.5元计费。计时功能主要完成的任务是:计算乘客的等待累计时间,计时器的量程为59分,满量程自动归零。计程主要完成的任务是:计算乘客所行驶的公里数,计价器的量程为99公里,满量程自动归零。

相关文档
最新文档