数字逻辑专题实验报告.docx
《数字逻辑专题实验报告.docx》由会员分享,可在线阅读,更多相关《数字逻辑专题实验报告.docx(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数字逻辑专题实验实验报告基于CPLDFPGA的出租车计费器的设计一. 实验题目设计一个基于CPLDFPGA的出租车计费器,并实现如下功能:1. A计数器对百米脉冲进行累加,并输出实际公里数的BCD码给译码动态扫描模块。每计满500送出一个脉冲给B计数器。同时可以设置起步公里数。2. B计数器实现步长可变(即单价可调)的累加计数,每500米计费一次。可以设置起步价格、每公里价格等。3. 译码动态扫描将路程与计费的数值译码后用动态扫描的方式驱动数码管显示。4. 数码管显示将公里数和计费金额分别用三位LED数码管显示(两位整数,1位小数)。二. 实验目的1. 学会综合运用组合逻辑、时序逻辑设计数字系
2、统电路的方法2. 学会使用EDA软件(MAX+PLUSII)设计调试电路的方法3. 掌握CPLD(复杂可编程逻辑器件)技术的层次化电路设计4. 掌握计数器、加法器、寄存器、锁存器及各种门的综合应用三. 系统设计方案1. 系统设计总体图图 1 系统设计总体图2. 系统整体输入输出定义1) 10hz_input_by_wheet系统从这里输入出租车前进时轮胎上传感器发出的信号,本系统中假设出租车每前进一米,该输入收到一个脉冲。2) 1khz系统从这里输入1kHz信号,作为数码管的扫描信号。3) resetreset信号输入为0时,表示出租车空驶;为1时表示出租车上有乘客。4) a b c d e
3、f g及led1-6系统结果输出端,分别连接实验装置中数码管的a b c d e f g输入及各数码管的控制输入。3. 系统各模块功能简介1) Output_per100_inputs基本计数模块。每输入100个脉冲时,输出一个脉冲,即每100米输出一个脉冲。2) Distance_counter_output出租车路程计算及输出模块。每100米输入一个脉冲之后,自动按BCD码输出计价器中十公里位、公里位、百米位需要显示的数字。3) After_2km_output_per500m控制计费器模块什么时候开始计费。当出租车上乘客后,计费器只输出初始价,当车行进到2公里(可设置其他数值)时,计费器
4、才开始按每公里的单价累加计费。此需要模块每100米输入一个脉冲,同时还要车行进到2公里时输入一个买脉冲。4) Price_counter_output出租车计费及输出模块。需要两公里之后每500米输入一个脉冲,自动按BCD码输出计价器中十元位、元位、角位需要显示的数字。5) Display_to_6led将路程及计费模块输出的数字显示到数码管中的模块,输入BCD码的各位,输出为数码管显示时需要的信号。4. 各模块功能图及输入输出分析图1) Output_per100_inputsa 模块功能图图 2 output_per100_inputs 模块功能图此模块使用74162作为主要元件,经过实验
5、,我发现将RCO接在高位计数器的ENT端后,虽然进位不会错,但是仍然为每输入99次输出一个脉冲,达不到实际要求。故此处从另外一个思路进行设计:当所有的数字都是0的时候, 输出一个脉冲。同时为了控制第一个脉冲的输出时间,避免在开始计数前所有输出位都是0的时候output_per100inputs输出脉冲,通过一个JKFF2控制。当输出行进10米时,JKFF2的Q输出才变为1,这时output_per100inputs才能输出脉冲,准确的控制了输出。b 输入输出分析图图 3 output_per100inputs 模块输入输出分析图1从图中可以看到,在reset为0及刚刚变为1时,output_p
6、er100inputs并没有输出脉冲,符合需要。图 4 output_per100inputs 模块输入输出分析图2从图中可以看到,在distance_10m,distance_1m输出都为9(即99米)时,output_per100inputs并没有进位,当再输入一个脉冲即到达100米后,output_per100inputs立刻输出一个脉冲,完成了在到达100米时输出一个脉冲的功能,准确无误。而此处如果为每99米输出一个脉冲的话,对后续里程及价格计算将会有很大影响。2) Distance_counter_outputa 模块功能图图 5 Distance_counter_output 模块
7、功能图将前一个模块每一百米输出一个脉冲的信号接在此模块的input_per100m输入端,输出即为可以直接用于显示输出的十进制BCD码十公里、公里、百米数字。此模块仍使用74160作为主要元件,并用和前一模块相同的连接方法。b 输入输出分析图 图 6 Distance_counter_output 模块输入输出分析图从两幅图中可以看到,在reset为0时,系统没有计算里程,达到要求。而且进位准确,9.9公里时并没有进位,当再前进100米时,变为10公里,准确无误,达到要求。3) After2km_output_per500ma 模块功能图图 7 after2km_output_per500m
8、模块功能图此模块使用JKFF2,使出租车行进到2公里时输出的信号能够保持,从而使74162的使能端从出租车行进到2公里时开始有效,即从两公里时开始每5次输入输出一次。经过实验将74162的A端接VCC后,可正确的实现每500米输出一个脉冲。这个模块在输入100米脉冲及2公里信号后,可以实现在出租车行进到2公里之后,每前进500米输出一个脉冲(从output_per500m),此脉冲用于后面的计费模块。b 模块输入输出分析图图 8 after2km_output_per500m 模块输入输出分析图由图中可以看出,在reset置1且input_2km输入一个信号(即出租车行进到2公里)之后,每5次
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字 逻辑 专题 实验 报告
限制150内