基于FPGA的简单自动邮票销售机系统电子设计报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于FPGA的简单自动邮票销售系统的设计
章节目录
第一章设计指标 (1)
第二章系统概述 (1)
2.1设计思想 (1)
2.2可行性论证 (2)
2.3各功能的组成 (2)
2.4总体工作过程 (3)
第三章单元电路设计与分析 (4)
3.1各单元电路的选择 (4)
3.2设计及工作原理分析 (11)
第四章电路的组构与调试 (13)
4.1 遇到的主要问题 (13)
4.2 现象记录及原因分析 (13)
4.3 解决措施及效果 (13)
4.4 功能的测试方法、步骤、设备、记录的数据 (15)
第五章结束语 (16)
5.1对设计题目的结论性意见及进一步改进的意向说明 (16)
5.2 总结设计的收获与体会 (18)
附图(电路总图) (20)
参考文献 (21)
第一章设计指标
设计指标:
设计一个简易投币式邮票自动销售控制电路:
(1)系统允许投入0.5元和1元两种硬币,售出面值为2元的邮票。
(2)当硬币投入后,系统用七段LED数码管显示已投入的累计币值。
(3)当投币累计等于2元时,输出邮票;当投币累计大于2元时,输出邮票并输出找零币值。
(4)输出信号有效电平维持3s时间,输出信号无效后系统回到初始状态(累计币值为0。)
输出信号维持期间,不能允许再投入硬币(封锁投币信号,实际产品可封锁投币口)。
(5)输出信号有效时蜂鸣器以0.5s鸣响、0.5s间隔的方式发出提醒音,输出邮票时蜂鸣器的鸣响频率为1KHz,输出邮票并找零时蜂鸣器的鸣响频率为2KHz。
(6)为了保证系统上电时处于初始状态,设置一个状态机复位键。
第二章系统概述
2.1设计思想
用FPGA实现控制系统,用两个脉冲分别模拟0.5元和1元两种硬币,投入0.5元时X1=“1”,投入1元时X2=“1”,两个信号同时为“1”时无效,状态保持不变;用两个发光二极管分别指示输出邮票和找零,邮票输出信号为Z1,邮票输出并找零的信号为Z2,用时序逻辑电路记忆累计币值,累计币值用两个七段LED数码管显示,通过LP—2900开发装置显示。
2.2可行性论证
通过两个脉冲可分别模拟0.5元与1.0元两种币值的投入,在币值达到邮票输出前需要记忆已输入币值的状态,以确保总币值的准确性,完成整个电路系统的要求。而系统的累计币值最多为0元、0.5元、1.0元、1.5元、2元、2.5元共6种状态,若采用米利型时序电路实现,仅需记忆0元、0.5元、1.0元、1.5元共4种状态,通过触发器结合时序逻辑电路完全可以实现状态的保持与记忆,完成币值的累加,再结合其他电路单元,此设计系统完全可以实现。
2.3各功能的组成
1)币值投入(即信号输入):
用两个按键分别模拟两种不同币值的硬币,产生两路开关量脉冲信号,将两路信号综合为一路,经过数字单稳态触发电路对信号进行同步化处理,消除按键抖动,并可将综合后的投币信号归化为宽度是一个CP脉冲周期的状态触发信号,保证系统需要在任一按键作用时都要产生一个状态机的触发脉冲信号,同时输入端触发器的清零做清零用,使能端由Z1输出接反向器控制达到输出时封锁输入的目的;
2)币值累计及状态变化判断:
由状态机实现,用ROM方式实现状态机的激励控制,触发器的每个激励和电路的每个输出都由存储器的一位数据输出端控制,存储器地址由电路的输入X 和状态机的状态变量Q控制,存储器中每个单元的存储内容是对应电路输入和状态机现态某个组合时的次态和输出逻辑值,此实验用ROM实现米利型状态机的组合逻辑关系,ROM的容量为16×4,以电路输入X2X1和触发器Q1Q0控制ROM的地址A3—A0,ROM的数据输出q3-q0控制电路输出Z2Z1和触发器激励D1D0;
3)邮票及找零输出:
当累计币值达到2元时,由Z1控制的发光二极管亮表示输出邮票,当累计币值达到2.5元时,Z2Z1控制的两个发光二极管都亮,表示输出邮票并找零,同时由Z2Z1控制分频器使输出邮票时蜂鸣器的鸣响频率为 1KHz,输出邮票并找零时蜂鸣器的鸣响频率为 2KHz;
4)定时电路:
采用触发器维持输出信号Z2Z1不变,通过74LS161的计数功能,以1Hz脉冲信号作为时钟信号,进行模3计数,使灯亮维持三秒,即输出邮票和找零操作提示维持3S;
5)累计币值显示电路:
由于采用米利型控制方式,则用状态码Q1Q0控制七段译码显示电路,输出累计币值0、0.5、1、1.5元4个状态,当累计币值达2元或2.5元时清零。
2.4总体工作过程
刚开始未输入硬币时,七段显示译码显示0.0,;当按下按键表示输入0.5元时,七段显示译码显示0.5;当输入累计达到1元时七段显示译码显示1.0;当输入累计达到1.5元时,七段显示译码显示1.5;再输入,当输入累计达到2.0元时七段显示译码清零,同时表示输出邮票的发光二极管亮,蜂鸣器以1KHz的频率进行0.5S鸣响,0.5S间隔的方式鸣响;当累计币值是2.5元时,七段显示译码清零,同时表示输出邮票和表示找零的发光二极管蜂同时亮,并且蜂鸣器以2KHz 的频率进行0.5S鸣响,0.5S间隔的方式鸣响,二极管亮和蜂鸣器响的时候输入端被封锁,输入无效,输出状态维持3S时间,时间到自动复位清零,发光二极管灭同时蜂鸣器停止鸣响。
第三章单元电路设计与分析3.1各单元电路的选择
1) 输入信号及信号处理电路:
单路输入信号经数字单稳态电路处理:
:
双路输入信号经数字单稳态电路处理:
2)状态机实现币值的累计及状态变化电路:
其中ROM的存储数据表可根据状态转移表得出如下:
3)分频电路: