EDN首页   博客首页

日志档案

发表于 2008-6-9 22:29:16

2

标签: 小蒲&小芳blog  

出租车计价器(FPGA课程设计)

     最近,学习了EDA这门课后,做了出租车计价器这个课程设计,虽然很简单,但也算练了一下手,把整个流程熟悉了一遍~~

       设计要求:1、行程大于基本里程(如预置5公里)时,每多行1公里 在起步价(此处设为7元)上增加一个单价;2、当出租车到达某地需要等待(如红灯、中途停车等候等)按下“等候键”,便从计程转入计时(注意:计程和计时本来要用到传感器,检测轮胎的转数,这里因无法产生汽车的传感信号,故用CLK的不同分频代替)

     输入和输出信号:CLK、reset、start、wait、数码管显示输出价格;

程序设计:设计一个50000分频的分频器,把50MHZ分成1KHZ的时钟,提供给动态显示模块及另一分频器2.分频器2的功能是输出两种不同的分频脉冲,一种代表计程,一种代表计时。

 选择器:当输入WAIT信号为0时,(键按下)代表等待,此时每5个脉冲产生一个计数脉冲;当输入WAIT信号为1时,(键按下)代表等待,此时每10个脉冲产生一个计数脉冲

计价器:从选择器出来的计数脉冲作为计价器的时钟输入。
另有RES和START两个输入,当按下START键时,计价器预置起步价,并开始计数,当超过预置公里数时,每一公里,加上一个单价(这里是一元)

 显示模块:这里采用4个七段数码管显示
从计价器出来的数值经过十进制到BCD码的转换,送入显示模块。
显示模块采用动态扫描的方式,利用人眼的视觉停留就可以实现同时显示,资料表明只要扫描频率超过24HZ就能实现,这里我们采用分频器1出来的1KHZ。

BCD码送进后,分别编写段选和位选的程序。
段选程序根据数码管的共阴和共阳而定。

 最后编辑顶层模块把各个模块综合起来,实现设计

 本设计采用Verilog编程,在火龙刀板上实现设计。

如需要程序,请留言说明~~
 

n


 

n
n

系统分类: CPLD/FPGA   |   用户分类: 小芳的生活   |   来源: 原创   |   【推荐给朋友】   |   【添加到收藏夹】

    阅读(736)    回复(5)  

投一票您将和博主都有获奖机会!

最新评论

  • eda8888

    2008-6-10 12:27:24

    怎么不来个精华啊。现在精华怎么这么难了。

  • cocappjj

    2008-6-10 14:52:17

    呵呵,加入我们的原创QQ群和原创小组吧。回踩一下我的博客就能看到。

  • 78444268

    2008-6-18 14:23:41

    能把程序发到我的邮箱里吗? gnsylwf@126.com 谢谢!

  • mary1999

    2008-6-20 10:50:45

    wanghuiying1999@163.com

  • mary1999

    2008-6-20 10:54:13

    wanghuiying1999@163.com 谢谢