- 1、本文档共25页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
嵌入式系统与智能检测第3组课程报告组员邢思远王仁杰曹世岳赵雅萍1.人员分工姓名分工邢思远分析题目,设计方案,画电路图,提出算法王仁杰实物操作,电路连接,改进程序,BUG调试曹世岳分析题目,设计方案,提出算法,编写程序赵雅萍测试仿真结果,实物操作,撰写报告2.设计方案2.1.题目我们的题目是:自动售饮料控制器的设计。2.2.设计任务和要求采用EDA自上而下的层次化设计方法,基于VHDL设计一个自动售饮料控制器系统。具体要求如下:该系统能完成货物信息存储、进程控制、硬币处理、余额计算、显示等功能。该系统可以销售4种货物,每种的数量和单价在初始化时输入,并可以在存储器中保存,用户用硬币进行购物,按键进行选择。系统根据用户的货币,判断钱币是否够,钱币足够则根据顾客的要求自动提货,钱币不够则给出提示,增加钱币或进行退币操作。系统自动计算出应找钱币余额、库存数量并提示。2.3.总体框图系统按功能分:分频模块、控制模块、译码模块、显示模块。系统组成框图如图所示。在软件下设计,将整个电路划分成若干子模块分别描述度设计成若干个相对独立的程序,分别编译仿真。2.4.总体设计思路(1)该机销售3种罐装饮料:纯净水、可乐和营养快线(以00、01、10表示这3种饮料),售价分别为2元、3元、4元,设数量无限。购买时通过3个按键select_0、select_1、select_2选择。(2)该饮料机设有两个投币孔,分别接受5角和1元两种硬币,顾客可分别投入一种或两种面额的值多枚,但投入的总币值不可超过9元。(3)该饮料机设有一个输出口,每次只能出一罐饮料,设有提示灯。当出货时,对应提示灯会以1Hz的频率闪烁。(4)为明确具体的投币或退币金额,本机采用1个数码管来显示已投入的金额或退还的金额,并有3个指示灯led_total、led_rest、led_change显示当前的数码管状态。led_total亮表示当前显示已投入的总金额,led_rest亮表示当前显示选择饮料之后的剩余金额,led_change亮表示当前显示找零或退币过程。3个指示灯在同一时间只能有一只灯亮。(5)本机设有set键和sel键,首先由售货员把自动售货机里的每种商品的数量和单价通过set键置入到RAM中,然后顾客通过sel键对所需要购买的商品进行选择,选定后通过get键进行购买,再按finish键取回找币,同时结束此次交易。(6)本机以1024Hz的时钟信号控制,时钟的输入端由外加的时钟发生器提供,上升沿有效。按get键时,如果投的钱数等于或大于所购买的商品单价,则自动售货机会给出所购买的商品;如果投的钱数不够自动售货机不做响应,继续等待顾客的下次操作。顾客的下次操作可以继续投币,直到钱数到达所要的商品单价进行购买,也可以直接按finish键退币。本机设有复位键,高电平有效。 3.电路图3.1.简介我们的作品主要由三部分组成:控制板,按钮和显示器。3.2.控制板我们采用的是Arduino Mega 2560控制板。Arduino Mega2560也是采用USB接口的核心电路板,它最大的特点就是具有多达54路数字输入输出,特别适合需要大量IO接口的设计。Mega2560的处理器核心是ATmega2560,同时具有54路数字输入/输出口(其中16路可作为PWM输出),16路模拟输入,4路UART接口,一个16MHz晶体振荡器,一个USB口,一个电源插座,一个ICSP header和一个复位按钮。3.3.按钮投币按钮:“0.5”按钮和“1”按钮分别模拟五角硬币和一元硬币投币。功能按钮:本机设有set键和sel键,首先由售货员把自动售货机里的每种商品的数量和单价通过set键置入到RAM中,然后顾客通过sel键对所需要购买的商品进行选择,选定后通过get键进行购买,再按finish键取回找币,同时结束此次交易。3.4.显示器显示器会滚动显示每种商品的数量和单价,投币后会显示当前余额。4.程序流程图5.程序清单5.1.头文件#includestdlib.h#includestring.h#includeSCoop.h#includestdio.h5.2.定义变量和引脚intsel=22;int got=23;int finish=24;int set=25;int one=27;int half=26;intsel_p=0;int x=0,k=0,j=0;float money=0.0;int cola=0;int water=0;intnutri_express=0;int p_[3]={0};intset_p=0;int Enable = 2;5.3.按钮的控制defineTask(Task2);void Task2::setup(){pinMode(got,INPUT_P
您可能关注的文档
- 第13章_龟兔赛跑——多线程选读.pptx
- 厨房卫生间防渗漏作业指引选读.docx
- 川农《建筑施工技术(本科)》16秋在线作业选读.docx
- 第13章、变量作用域和生存期(理论课)选读.pptx
- 第16课中外的交往与冲突选读.pptx
- 第16章_信用风险:估测违约概率选读.pptx
- 川商常见报错问题解答选读.docx
- 第八届大学生职业规划大赛(静态版)选读.pptx
- 传感器期中_基于现代传感器技术的汽车自助驾驶系统设选读.docx
- 传感器实验报告选读.docx
- 职业技术学院2024级工业机器人技术(安装与维护)专业人才培养方案.docx
- 职业技术学院2024级应用化工技术专业人才培养方案.pdf
- 职业技术学院2024级软件技术(前端开发)专业人才培养方案.pdf
- 职业技术学院2024软件技术专业人才培养方案.docx
- 职业技术学院2024级信息安全技术应用(安全运维)专业人才培养方案.docx
- 职业技术学院2024级新能源汽车检测与维修技术(车辆鉴定与评估)专业人才培养方案.pdf
- 职业技术学院2024级石油炼制技术专业人才培养方案.pdf
- 职业技术学院2024级环境监测技术专业人才培养方案.docx
- 职业技术学院2024级汽车制造与试验技术专业人才培养方案.pdf
- 职业技术学院2024级信息安全技术应用专业人才培养方案.pdf
文档评论(0)