硬件课设实验报告-自动售货机

合集下载

自动售卖机设计实训报告

自动售卖机设计实训报告

一、实训背景与目的随着科技的不断发展,自动售卖机已经成为现代生活中不可或缺的一部分。

为了更好地了解自动售卖机的原理和设计,提高我们的创新能力和实践能力,我们进行了为期两周的自动售卖机设计实训。

本次实训旨在通过实际操作,掌握自动售卖机的结构设计、功能实现、系统调试等关键技术,培养我们的工程实践能力和团队协作精神。

二、实训内容与过程1. 实训内容本次实训主要包括以下内容:(1)自动售卖机结构设计:了解自动售卖机的整体结构,包括机身、货架、取货装置、支付模块等。

(2)功能模块实现:学习并实现自动售卖机的核心功能,如商品识别、取货、支付等。

(3)系统调试与优化:对自动售卖机进行系统调试,确保各功能模块正常工作,并对系统进行优化。

(4)团队协作与沟通:在实训过程中,团队成员之间需要密切配合,共同完成设计任务。

2. 实训过程实训过程分为以下几个阶段:(1)前期准备:查阅相关资料,了解自动售卖机的基本原理和设计要求。

(2)结构设计:根据实训要求,设计自动售卖机的整体结构,绘制相关图纸。

(3)功能模块实现:选择合适的硬件和软件,实现自动售卖机的各项功能。

(4)系统调试:对自动售卖机进行系统调试,确保各功能模块正常工作。

(5)优化与改进:根据调试过程中发现的问题,对自动售卖机进行优化和改进。

三、实训成果经过两周的实训,我们成功设计并实现了一款自动售卖机。

以下是我们的实训成果:1. 结构设计(1)机身:采用不锈钢材质,具有良好的耐腐蚀性和稳定性。

(2)货架:采用可调节式货架,可根据商品尺寸进行调整。

(3)取货装置:采用机械臂式取货装置,可实现商品自动取货。

(4)支付模块:采用非接触式支付,支持多种支付方式。

2. 功能模块实现(1)商品识别:采用条形码扫描技术,实现商品信息的快速识别。

(2)取货:通过机械臂式取货装置,实现商品的自动取货。

(3)支付:支持非接触式支付,如微信、支付宝等。

3. 系统调试与优化在系统调试过程中,我们发现了以下问题:(1)机械臂式取货装置的精度不够高,导致部分商品取货失败。

自动售卖机实训总结报告

自动售卖机实训总结报告

一、实训背景随着科技的飞速发展,自动售货机已经成为日常生活中不可或缺的一部分。

为了提高我们的专业技能,适应社会发展的需要,我们参加了为期一个月的自动售卖机实训。

本次实训旨在让我们深入了解自动售货机的原理、操作、维护以及市场前景,为今后的工作打下坚实的基础。

二、实训内容1. 自动售货机的基本原理实训期间,我们首先学习了自动售货机的基本原理。

自动售货机主要由以下几个部分组成:传感器、控制系统、显示系统、支付系统、机械臂、存储系统等。

传感器负责检测货物的位置和数量,控制系统负责协调各个部分的工作,显示系统用于显示商品信息,支付系统实现货币支付,机械臂负责取货,存储系统则用于存放商品。

2. 自动售货机的操作与维护实训中,我们亲自动手操作自动售货机,学习了如何上架、补货、清货、维护等基本技能。

通过实践,我们掌握了以下操作与维护方法:(1)上架:按照商品摆放要求,将商品整齐地放入货架上,确保商品可见、易取。

(2)补货:根据商品销售情况,及时补充库存,避免缺货。

(3)清货:定期清理货架,确保商品卫生、整洁。

(4)维护:定期检查自动售货机各部件,发现问题及时解决,确保设备正常运行。

3. 自动售货机的市场前景随着人口老龄化加剧、快节奏生活以及消费升级,自动售货机市场前景广阔。

实训期间,我们了解到以下市场前景:(1)便捷性:自动售货机24小时营业,为消费者提供便捷的购物体验。

(2)智能化:随着人工智能技术的发展,自动售货机将更加智能化,为消费者提供个性化服务。

(3)多元化:自动售货机商品种类将更加丰富,满足消费者多样化需求。

三、实训收获1. 理论与实践相结合通过本次实训,我们深刻认识到理论与实践相结合的重要性。

在理论知识学习的基础上,通过实际操作,我们更好地掌握了自动售货机的原理、操作与维护。

2. 团队合作意识实训过程中,我们与同学们共同协作,共同完成任务。

这让我们意识到团队合作的重要性,为今后的工作积累了宝贵经验。

自动售货机实验报告

自动售货机实验报告

自动售货机实验报告实验目的:本次实验的目的旨在了解自动售货机的工作原理和方法,掌握串口通信和图形化用户界面设计的技巧,实现一个基础的自动售货机模型并调试其功能。

实验环境和工具:硬件平台:Arduino UNO开发板、LCD液晶屏、矩阵键盘、电机、红外传感器等。

软件环境:Arduino IDE集成开发环境、Proteus电路仿真软件。

实验步骤:1. 硬件搭建2. 程序编写编写程序,实现自动售货机的基本功能,包括选择商品种类、投币、购买商品、找零等。

程序中以串口通信方式实现与PC端的通信,将运行状态和操作结果实时传输到PC端进行监测和反馈。

3. 软件仿真在Proteus电路仿真软件中,将硬件连线图导入,设置各个元件的型号和参数,构建完整的电路仿真模型,并运行模拟程序,进行自动售货机模型的完整验证和调试。

4. 调试运行将编写好的程序烧录到Arduino开发板中,将电路模型与实际硬件连接起来,进行硬件调试和运行测试。

在控制台上进行商品选择、投币、购买、找零等操作,并观察LCD屏幕反馈和PC端的串口通信,检测程序运行是否正常、反应是否及时、显示是否精准等。

实验结果:经过以上的实验操作和调试测试,我们成功实现了一个基础的自动售货机模型,其核心功能和操作结果均符合设计要求和实际需求。

通过电路仿真和硬件实验,我们深入了解了自动售货机的实际工作原理、运行机制和参数特性,掌握了串口通信和图形化用户界面设计等技巧,为今后相关工作提供了良好的基础。

同时,我们也发现了一些问题和待优化的方面,例如降低误操作率、提高售货速度、增加商品种类等,这些都将成为下一步改进的重点和方向。

本次实验是一项十分有趣和实用的工作,它不仅让我们明白了自动售货机的实现原理和工作方式,同时也展示了设计和制作电路的技能和能力。

在实验过程中,我们遇到了不少问题和困难,但我们也能够积极思考和动手解决,最终获得了可靠和优秀的成果。

从这份实验中,我们深入体验了科学与技术的魅力,感到对学习和未来发展的期望和信心,期望今后能够更好地发掘自身的潜力和优异实力,为社会和人类的发展做出建设性的贡献。

EDA实验报告---自动售货机

EDA实验报告---自动售货机

自动售货机的设计一.实验内容:本自动售货机系统,结合EDA技术,采用ALTERA公司可编程逻辑器件(CPLD)EPM7128SLC84-15芯片作为控制核心,再配以必要的外围电路从而实现只销售两种饮料,售价均为15元,可以找零和退币等功能的EDA应用系统。

芯片的设计是以MAX_PLUS II 作为开发平台,VHDL语言作为开发语言,使用掌宇公司CIC_310 CPLD/FPGA数字开发系统完成软件测试。

自己制作下载板与外围电路。

二.实验分析:本自动售货机只销售两种罐装饮料。

售价均为15元。

顾客可以由两个不同投币孔分别投入3个5元硬币或2个10元硬币。

一次交易只能买一罐,且自动找零。

只要按下取消键就会马上无条件退币。

本设计的硬件电路用2个按键电路代替2个投币孔,以LED点亮的数量显示各币种的投入数量,在以4Hz闪烁的LED来显示退币种类与数量。

因为投币是计次电路,应先经过抖动消除电路处理。

本设计采用1000Hz的系统时钟信号来控制所有买卖行为。

系统中设计的复位键为管理人员所用,并未在用户界面中设计。

三.系统设计流程图:四.自动售货机外观图:(为指示灯)五.电路原理图六.PCB图:根据PROTEL99画的系统原理图,成生PCB图。

然后进行布局与布线。

注意:布线时将晶振这种易产生噪声的器件的输出端与芯片时钟输入端的连线尽量布为直线;将电源与地线的宽度定为30mil到100mil之间。

本系统的电流不是很大,所以不用将板子的两面分别布成电源与地。

七.系统实物图:八.软件系统框图九.源程序:1.产生系统频率和退币信号电路首先要根据硬件电路的晶振频率确定分频系数,先产生系统频率,在进一步分频产生退币信号。

由于掌宇公司的开发系统上的晶振频率为20MHz,所以要分频系数分别为20000(COUNT)和250(COUNT1)。

(注:由于在自制的下载板上使用了1MHz的有源晶振,所以把程序中的COUNT的范围改为0到1000即可。

自动售货机实验报告

自动售货机实验报告

自动售货机实验报告自动售货机实验报告引言:自动售货机是一种现代化的商业销售设备,它通过自动化技术实现商品销售和支付功能,为消费者提供了便利和选择。

本实验旨在探究自动售货机的工作原理、销售模式以及对消费者行为的影响。

一、自动售货机的工作原理自动售货机通过内部的电子系统和机械结构实现商品的储存、选择、售卖和支付等功能。

其工作原理主要包括以下几个步骤:1. 商品储存:自动售货机内部设置有多个货道,每个货道可以储存一种商品。

商品通过传送带或弹簧等装置储存在货道中,保持整齐有序。

2. 商品选择:消费者通过触摸屏或按键选择所需商品。

自动售货机内部的电子系统会根据消费者的选择信号,控制相应货道的开关门,将商品送至取货口。

3. 商品售卖:当消费者选择的商品位于取货口时,自动售货机会打开门,消费者可以取走商品。

部分自动售货机还配备了自动找零功能,方便消费者支付。

4. 支付方式:自动售货机通常支持多种支付方式,如硬币、纸币、银行卡、移动支付等。

消费者可以根据自己的需求选择适合的支付方式。

二、自动售货机的销售模式自动售货机的销售模式主要分为自动售卖和自助选购两种。

1. 自动售卖:在这种模式下,自动售货机会事先设定好商品的价格,并通过内部的计算机系统实时监测库存和销售情况。

当商品售罄或库存不足时,自动售货机会停止销售并显示相应信息。

这种模式适用于一些固定价格和库存较少的商品,如饮料、零食等。

2. 自助选购:在这种模式下,自动售货机提供了更多的选择和定制化服务。

消费者可以根据自己的需求选择商品的种类、数量和价格等,并通过自动售货机完成支付。

这种模式适用于一些需要个性化定制的商品,如鲜花、礼品等。

三、自动售货机对消费者行为的影响自动售货机的出现改变了传统的购物方式,对消费者行为产生了一定的影响。

1. 购物便利性:自动售货机的24小时不间断运营,为消费者提供了更加便捷的购物体验。

消费者可以在任何时间和地点购买所需商品,无需排队等待。

FPGA实验报告 系统设计综合实践 自动售货机

FPGA实验报告 系统设计综合实践 自动售货机

FPGA实验报告系统设计综合实践自动售货机引言本实验报告旨在介绍FPGA实验中关于系统设计综合实践的内容,以及针对自动售货机的设计和实现过程。

本项目的目标是通过FPGA实现一个基本的自动售货机,能够接受货币投入并显示余额,实现商品选择和出货的功能。

设计概述在本项目中,我们使用FPGA作为硬件平台进行实现,采用VHDL语言进行编程。

整个设计主要分为三个模块:货币处理模块、商品选择模块和出货控制模块。

货币处理模块货币处理模块负责接收和处理投入的货币,并显示当前的余额。

具体实现过程如下:1.接收货币输入:使用FPGA板载的GPIO接口连接硬币接收器,将接收到的信息传递给FPGA。

2.处理货币信息:通过计算接收到的货币数量和面额,计算出当前的余额。

3.显示余额:使用FPGA板载的数码管显示当前的余额。

根据计算得到的余额,将其显示在数码管上。

商品选择模块商品选择模块负责接收用户的商品选择,并计算选中商品的价格。

具体实现过程如下:1.接收商品选择:使用FPGA板载的按键输入接口,接收用户按下的相应按键,确定用户选择的商品。

2.计算商品价格:根据用户选择的商品,从预先配置的商品价格表中查找相应的价格。

3.显示选中商品价格:使用FPGA板载的数码管显示选中商品的价格。

根据查找到的价格,将其显示在数码管上。

出货控制模块出货控制模块负责控制商品的出货和相关信息的提示。

具体实现过程如下:1.判断余额是否足够:根据当前余额和选中商品的价格,判断余额是否足够购买商品。

2.控制商品出货:如果余额足够购买商品,则触发相应的出货机构,实现商品的出货。

3.提示用户相关信息:根据出货情况,通过数码管显示相关信息,如余额不足、出货成功等提示。

实验结果经过对上述三个模块的设计和实现,我们成功地完成了自动售货机的基本功能。

在实验过程中,我们选取了几种常见的商品,并配置了相应的价格表。

通过按下相应的按键,用户可以选择购买的商品,并通过投币的方式支付。

29 自动售货机

29 自动售货机

自动售货机设计实验一、实验目的:1.了解自动售货机的工作原理。

2.熟悉编程环境;3.掌握变量定义方法;4.掌握梯形图语言的编程;5.掌握IL语言的编程;6.掌握PCC程序的调试过程。

7.了解PCC控制系统设计的基本原则。

8.掌握PCC控制系统设计的基本内容。

9.熟悉PCC控制系统设计的基本步骤。

二、实验内容:1.自动售货机控制的基本要求要求:有一台能供应8种不同货物的自动售货机,用梯形图(Ladder)编程实现选择不同商品的程序,每一种商品的选择与一个按钮相对应,1表示按钮按下,有此种商品可以售出;0表示没有。

2.电动机启动/停止电路如下图所示,编程用软件实现此控制功能,并要求有自锁功能。

3.选择输入设备、输出设备、输出设备的扩展对象(八个电机的控制)。

4.PCC模块的选择。

PCC模块是整个控制系统的核心部件,其选择包括机型容量、I/O模块、CPU模块、电源模块等。

5.连接PCC外部电路。

6.分配I/O点,绘制接线图。

7.设计控制程序。

控制程序是保障系统可靠运行的关键,需反复调试修改,直至满足自动售货机控制的基本要求。

三、实验步骤:1.深入、详细了解和分析自动售货机控制的基本控制规律和要求,建立自动售货机控制的基本模型。

2.根据自动售货机的基本控制要求,确定整个系统的输入、输出设备的数量,从而确定PCC的I/O点数,包括开关量I/O点数、模拟量I/O点数,以及特殊功能模块等。

3.确定选用的PCC机型。

4.绘制系统控制流程图。

5.选定程序语言,编写控制程序。

6.调试、修改程序,直至满足要求。

7.进行联机调试。

四、实验要求:1、认识、掌握PCC的基本结构、原理和工作过程。

2、掌握可编程控制中几种编程语言的用法,并能够进行相应的程序编写。

3、能够综合运用PCC的编程语言实现较复杂程序的编写、调试。

五、实验报告:1. 写出I/O分配表、程序梯形图。

2. 仔细观察实验现象,认真记录实验中发现的问题、错误、故障及解决方法。

课程设计报告自动售货机

课程设计报告自动售货机

《软件工程》课程设计报告目录:序 (2)一、问题描述 (3)(一)关于自动售货机 (3)(二)自动售货机的设计 (3)二、需求分析 (3)(一)UML自动售货机系统功能需求: (3)(二)UML自动售货机系统操纵要求: (4)(三)业务流程图 (6)(四)数据流程图 (7)三、各类UML图型及其分析 (8)(一)用例图 (8)(二)类图 (9)(三)序列图 (10)(四)协作图 (15)(五)状态图 (18)(六)活动图 (20)(七)组件图 (24)(八)配置图 (24)(九)数据模型图 (25)四、心得体会 (25)序一.目的软件工程课程设计是软件工程专业一个综合性的实践教学环节,其目的在于增进学生温习和巩固运算机软件设计知识,加深对软件设计方式、软件设计技术和设计思想的明白得,并能运用所学软件设计知识和面向对象技术进行综合软件设计,提高学生的综合应用能力。

通过这次课程设计,要把握UML(统一建模语言),并能运用UML在Rational Rose中建模。

二.要求:一人一组。

熟悉Rose开发环境。

把握UML的大体模型元素(如角色、用例、类等)。

熟悉UML,要紧了解UML中的9大图:Use case diagram(用例图)、Class diagram(类图)、Sequence diagram(序列图)、Collaboration diagram(协作图)、Statechart diagram(状态图)、Activity diagram(活动图)、Component diagram(组件图)、Deployment diagram(配置图)、datamodel diagram(数据模型图)。

进行系统需求分析与系统功能模块设计,绘出系统详细的业务流程图和数据流程图,成立完整的系统数据库的逻辑模型。

完成对系统的建模实现。

进行检查,并提交设计报告。

三.报告要求:实验题目、实验目的、实验要求、实验内容、系统设计的源程序和文档(包括说明)、心得体会四.参考资料:Wendy Boggs & Michael Boggs 著邱仲潘译《UML与Rational Rose2002从入门到精通》电子工业出版社Martin Fowler & Kendall Scott:UML Distilled Second Edition A Brief Guide to the Standard Object Modeling LanguageUML参考手册Jason T. Roff 著张瑜杨继萍等译《UML基础教程》清华大学出版社参见本中心效劳器ftp:\\s@172.16.38.223软件开发基础或《软件工程课程设计》目录下的相关文档。

EDA实习报告(自动售卖机)

EDA实习报告(自动售卖机)

EDA实习报告(自动售卖机)第一篇:EDA实习报告(自动售卖机)EDA技术及应用实习报告自动售卖机信息13-2班06号GMH北华大学电气信息工程学院目录一、设计任务功能简介 (2)1、设计任务 (2)2、主要功能 (2)二、原理、方案、框图及任务分解 (2)1、原理 (2)2、方案 (2)3、框图 (3)4、任务分解 (3)三、关键任务的设计代码及注释 (4)四、调试中出现的问题及解决方案 (8)1、问题一 (8)2、问题二 (8)五、产业化市场分析及预测 (8)六、测试及运行结果 (9)七、参考文献 (1)一、设计任务功能简介1、设计任务自动售货机设计。

利用软件QuartusII软件,使用VHDL语言结合硬件要求对本题目设计功能进行编程,并在完成整个硬件程序设计后,在软件平台上进行编译和电路仿真,最后生成的目标文件下载到DE2-70实验板上实现上述所有功能并验证程序的可行性。

2、主要功能本设计主要实现的功能为:货物信息存储功能、商品选择功能、输入钱数处理功能、货架商品更换功能、语音提示功能、信息显示等功能。

二、原理、方案、框图及任务分解1、原理自动售货机(Vending Machine,VEM)是能根据投入的钱币自动付货的机器。

自动售货机是商业自动化的常用设备,它不受时间、地点的限制,能节省人力、方便交易。

是一种全新的商业零售形式,又被称为24小时营业的微型超市。

能分为三种:饮料自动售货机、食品自动售货机、综合自动售货机。

自动售货机是台机电一体化的自动化装置,在接受到货币已输入的前提下,靠触摸控制按扭输入信号使控制器启动相关位置的机械装置完成规定动作,将货物输出。

2、方案根据题目要求机器设有2个投币孔,机器可以接受1元和5元的纸币,分别有八种商品,价格分别为1元,4元,2元,3元,6元,7元,5元,8元,机器采用拨码开关模拟机器的复位键、确认购买键和商品选择,并且通过开发板上的LED等分别显示购买的不同情况,数码管实时显示购买金额,包括投入的价钱,找零的价钱。

PLC自动售货机报告

PLC自动售货机报告

PLC自动售货机报告1.引言自动售货机在现代化社会中越来越受欢迎,为消费者提供了方便快捷的购物体验。

本报告旨在介绍一种基于PLC的自动售货机的设计和实现。

2.设计目标我们的设计目标是创建一个功能完善且可靠的自动售货机,具备以下特点:-支持多种支付方式,例如硬币、纸币和移动支付;-具备货物售空检测功能,及时通知管理人员补货;-具备购物篮检测功能,防止用户未支付而偷取商品。

3.硬件设计我们使用了以下硬件设备来实现自动售货机:-PLC控制器:作为核心控制单元,负责执行程序和与其他设备进行通信;-电子支付设备:集成硬币接收器、纸币接收器和条码扫描仪,支持多种支付方式;-货物储存系统:包括货道、电动门和传送带;-传感器:用于检测货道是否为空、购物篮是否存在等。

4.软件设计我们使用PLC编程软件进行自动售货机的程序设计,主要包括以下几个模块:-用户界面:通过触摸屏显示菜单和购物篮状态,用户可以选择商品和支付方式;-支付处理:根据用户选择的支付方式进行支付处理,验证支付金额是否足够;-货物管理:监测货道状态,当货道为空时通知管理人员及时补货;-购物篮检测:通过传感器检测购物篮状态,防止用户未支付而偷取商品;-交互控制:根据用户的选择和支付信息,控制电动门开启和传送带运行。

5.功能实现在实现过程中,我们成功地完成了自动售货机的所有功能要求:-用户能够通过触摸屏选择商品和支付方式,实现快速购物;-自动售货机能够支持硬币、纸币和移动支付,满足不同用户的支付需求;-通过传感器监测货道状态和购物篮状态,及时通知管理人员进行补货和防止商品偷取。

6.总结通过PLC技术的应用,我们成功地实现了一个功能完善且可靠的自动售货机。

通过合理的硬件设计和软件编程,我们实现了多种支付方式、货物售空检测和购物篮检测等功能。

该自动售货机提供了方便快捷的购物体验,减少了人力资源的浪费。

未来,我们将进一步改进该系统,提升其性能和稳定性。

自动售货机程序实训报告

自动售货机程序实训报告

一、实训背景随着科技的不断进步,自动售货机已经成为了人们生活中不可或缺的一部分。

它以其便捷、高效、智能的特点,为广大消费者提供了极大的便利。

为了更好地掌握自动售货机程序的设计与开发,提高自身的实践能力,我参加了本次自动售货机程序实训。

二、实训目的1. 学习自动售货机程序的设计原理和开发方法;2. 掌握C++编程语言在自动售货机程序中的应用;3. 提高动手能力和团队协作能力;4. 熟悉软件工程的基本流程,培养良好的编程习惯。

三、实训内容本次实训主要分为以下几个部分:1. 需求分析:了解自动售货机的基本功能,包括商品展示、选择、付款、找零等;2. 系统设计:根据需求分析,设计自动售货机的系统架构和功能模块;3. 编码实现:使用C++编程语言进行自动售货机程序的编码实现;4. 测试与调试:对程序进行功能测试、性能测试和异常测试,确保程序稳定可靠;5. 文档编写:撰写自动售货机程序的设计报告和测试报告。

四、实训过程1. 需求分析在实训初期,我们通过查阅相关资料、了解市场情况,对自动售货机的基本功能进行了分析。

主要包括以下方面:(1)商品展示:自动售货机需要具备商品展示功能,让消费者能够清楚地看到所售商品;(2)商品选择:消费者通过触摸屏或按钮选择所需商品;(3)付款方式:支持多种付款方式,如现金、刷卡、支付宝等;(4)找零:自动售货机在收到付款后,根据消费者所购买商品的价格,自动找零;(5)库存管理:自动售货机需要具备库存管理功能,实时更新库存信息;(6)故障处理:自动售货机在运行过程中,可能遇到各种故障,如商品缺货、系统故障等,需要具备故障处理功能。

2. 系统设计根据需求分析,我们设计了自动售货机的系统架构和功能模块。

系统架构分为以下几个部分:(1)硬件模块:包括触摸屏、按钮、传感器、打印机、钱箱等;(2)软件模块:包括商品展示模块、商品选择模块、付款模块、找零模块、库存管理模块、故障处理模块等。

3. 编码实现在编码实现阶段,我们使用C++编程语言进行自动售货机程序的编写。

自动售货机实验报告

自动售货机实验报告

目录一、设计目的 (1)1.控制要求 (1)2.课题要求 (1)二、设计步骤 (1)1.设计思路 (1)2.I/O分配表 (3)3.各种中间继电器 (3)三、实验步骤 (3)四、控制图 (4)1.电器控制图及必要的文字说明 (4)2.硬件链接图 (4)五、程序设计 (4)1.梯形图 (5)2.触摸屏 (11)六、实验总结 (11)1.课题设计的整体分析 (11)2.设计中遇到的问题及解决办法 (11)3.实验中遇到的问题及解决办法 (11)4.主要输入、输出及中间继电器的时序图 (14)5.收获 (14)参考文献 (15)自动售货机的PLC控制一、设计目的1.控制要求:(1)自动售货机可投入5角、1元、5元、10元硬币。

(2)当投入的硬币总值等于或超过5元时,汽水按钮指示灯亮;当投入的硬币总值超过10元时奶茶按钮指示灯亮;当投入的硬币总值超过15元时咖啡按钮指示灯亮。

(3)当汽水按钮指示灯亮时,按汽水按钮,则汽水排出,5秒后自动停止。

汽水排出时,相应指示灯闪烁。

(4)当奶茶和咖啡按钮指示灯亮时,动作同上。

(5)若投入的硬币总值超过按钮所需的钱数时,找钱指示灯亮,同时八段码显示所找钱数。

2.课题要求(1)设计出硬件系统的结构图、接线图、时序图等;(2)运用功能指令进行PLC控制程序设计,并有主程序和子程序;(3)进行系统调试,实现自动售货机的控制要求。

二、设计步骤1.设计思路自动售货机是台机电一体化的自动化装置,在接受到货币已输入的前提下,靠触摸控制按钮输入信号使控制器启动相关的机械装置完成规定动作,将货物输出,用自动控制系统代替现有的人工销售方式,节省人力,减少相应的销售开支,扩大销售覆盖面。

当投入的硬币总值超过5元时,汽水指示灯亮。

当硬币总值超过10元时,汽水和奶茶指示灯亮。

当投入的硬币总值超过15元时,汽水,奶茶和咖啡指示灯都亮。

当汽水指示灯亮时,按汽水按钮,则汽水排出,5秒后自动停止,相应的指示灯闪烁;当奶茶指示灯亮时,按奶茶按钮,则奶茶排出,5秒后自动停止,相应的指示灯闪烁;当咖啡指示灯亮时,按咖啡按钮,则咖啡排出,5秒后自动停止,相应的指示灯闪烁。

北邮vhdl自动售货机实验报告(含代码)

北邮vhdl自动售货机实验报告(含代码)

《自动售货机》实验报告一.设计课程的任务要求基本要求:1.用2个数码管(disp5,disp4)显示钱数,以元为单位。

用3个按键(btn0,btn1,btn2)分别表示一元、五元、十元,每按一次按键,增加一次相应的钱数,上限99元。

2.再用3个按键(btn3,btn4,btn5)分别对应3种商品,其中,商品甲售价3元、商品乙售价8元、商品丙售价12元;3.买东西时,先输入钱币,再按对应的商品键。

每按一次商品键,钱数要相应地减少,同时有声光(蜂鸣器或发光二极管)提示购买成功。

剩余钱数大于3元可继续按商品键再次购买;当剩余钱数少于3元时,表示钱数的数码管disp5,disp4显示为零,同时用数码管disp0显示退出的钱数。

4.买东西时,按下商品键,若输入的钱数少于商品的价格,表示钱数的数码管disp5,disp4显示为零,同时用数码管(disp1、disp0)显示退出的钱数,并用蜂鸣器或发光二极管闪烁表示购买失败。

5.按下商品键时,用数码管disp2表示当前购买的商品,1代表商品甲,2代表商品乙,3代表商品丙。

6.用btn7做为退出功能键,退出键可以随时按下,按下后,数码管(disp5,disp4)显示为零,同时数码管(disp1、disp0)显示退出的钱数,表示结束购买,钱款全部退出。

提高要求:7.用点阵设计显示投币动画、出货动画,购买成功/失败动画;8.允许随时输入钱币,购买时,钱款不足有声光报警并等待追加钱币或选择别的商品;9.商品数量管理,有缺货提示;10.用点阵动态显示商品名称和库存数量等。

自拟其它功能二.系统设计(包括设计思路、总体框图、分块设计)1.设计思路:本实验为设计一个自动售货机。

由于本实验题目逻辑不太复杂,所以有两种设计思路可以选择。

第一种是用顺序结构和if when逻辑判断来实现。

第二种是用状态机来实现。

我选择的使用第一种。

总体来说可以将其分为两个大块。

第一个是接受键盘命令并通过逻辑判断向LED灯和数码管发出命令。

电子课程设计报告--自动售货机

电子课程设计报告--自动售货机

电子技术基础课程设计题目名称:自动售货机姓名:学号:组员姓名:班级:指导教师:评语:成绩:教师签名:摘要自动售货机是商业自动化的常用设备,它不受时间、地点的限制,能节省人力、方便交易。

1925年美国研制出售香烟的自动售货机,此后又出现了出售邮票、车票的各种现代自动售货机。

一般的自动售货机由钱币装置、指示装置、贮藏售货装置等组成。

钱币装置是售货机的核心,其主要功能是确认投入钱币的真伪,分选钱币的种类,计算金额。

如果投入的金额达到购买物品的数值即发出售货信号,并找出余钱。

指示装置用以指示顾客所选商品的品种。

贮藏售货装置保存商品,接收出售指示信号,把顾客选择的商品送至付货口。

一般售货机的钱币装置由投币口、选别装置、确认钱币真伪的检查装置、计算金额的计算装置和找钱装置组成。

而本次课程设计的内容就是在学习相关Verilog代码之后,再结合本学期学习的数字电子技术及其实验的相关知识,通过画出状态图等方式,清楚其逻辑关系和运算过程,编写一个简单的自动售货机程序,实现投入不同的硬币数量和面值,可以得到相应的实际结果,包括出货、找零等功能。

并且利用ModelSim软件来实现程序的测试,以及结果的输出和检验。

关键字:自动售货机 Verilog ModelSim软件状态图目录1 设计目的 (1)2 设计题目 (1)3 设计要求 (1)4 设计内容 (2)4.1有限状态机的描述 (2)4.2状态变化图 (2)4.3定义时钟信号 (3)4.4定义输入和输出端口 (3)4.5V ERILOG代码编写 (4)4.5.1 主程序:用Verilog语言的case语句 (4)4.5.2 测试程序 (6)4.6有限状态机图 (8)5 设计内容仿真实验结果 (9)5.1运行过程 (9)5.2波形分析 (10)6 参考文献 (12)电子课程设计总结与体会 (13)1 设计目的(1)掌握有限状态机的概念和描述方法;(2)掌握时序电路系统的设计方法;(3)学些和掌握Verilog描述数字系统的方法;(4)学习和掌握ModelSim等软件的使用方法;(5)学习和了解IC设计的基本流程。

自动售货机的课程设计报告书

自动售货机的课程设计报告书

*************学院自动售货机课程设计题目:自动售货机课程设计:专业:学号:日期:摘要自动售货机是台机电一体化的自动化装置,再接收到货币已输入的前提下,靠触摸控制按钮输入信号使控制器启动相关位置的机械装置完成规定动作,将货物输出。

当顾客按下需要买的商品所对应的按键时,数码管上显示出该商品的的价格,然后顾客需要将货币投入投币口,数码管上显示出所投币额。

当按下确认键,则自动售货机将对投入的货币与商品的价格进行比较。

如果投入的币额足够时,则自动送出商品,并且把多余的钱找回,在数码管上显示出来。

如果两者币的相等,则直接送出商品。

如果投入的币额不足时则报警,报警时间3秒。

当顾客一旦按下确认键3秒后,自动售货机将自动恢复到初始状态,此时顾客才可以进行下一次购货操作。

售货机还具有工伤假使用累加货币的功能,累加的货币在数码管上显示出,此累加器只能有商家可以控制清零。

次售货机还有商家控制的整体复位功能。

该售货机使用方便,结构简单,灵活通用等优点,因此在销售业,食品产业得到广泛的应用。

本文设计的自动售货机,主要应用到BCD码编码器74HC147、加法器74HC283、寄存器74HC374、74HC4511七段码限制显示译码器、供阳极七段码显示器,555定时器等芯片,通过建立电路图、反馈连接组成一个自动售货机模型。

该售货机可以实现显示商品价格和投入货币的币额、比较两者的大小、相减、输出商品、延时3秒电路等各个作业环节。

关键字:自动售货机、商品价格,投币币额、加法寄存电路、比较电路、减法电路、数码显示、控制清零目录第1章绪论 (1)1.1 自动售货机的设计概论 (1)1.2 自动售货机的研究意义 (1)1.3 自动售货机的发展历史 (1)第2章自动售货机原理电路分析 (2)2.1 自动售货机设计要求 (2)2.2 自动售货机的设计原理 (2)2.3 自动售货机元器件选择 (2)2.4 自动售货机元器件选择电路设计各部分组成及其工作原理 (4)2.4.1 商品选择价格显示电路 (4)2.4.2 投入货币累加显示电路 (4)2.4.3 比较相减输出商品电路 (5)2.4.4 延时反馈清零电路 (6)2.4.5 累加卖货额查看电路 (7)2.5 元器件清单 (8)2.6 自动售货机电路总图及原理 (8)2.7 自动售货机设计的方案方案的优缺点,改进意见和展望 (8)第3章心得体会 (9)第1章绪论自动售货机是能够根据投入的钱币自动复活的机器,它是商业自动化的常用设备,不受时间、地点的限制,能节省人力、方便交易。

自动售货机课程设计报告

自动售货机课程设计报告

课程设计报告名称自动售货机控制系统的设计院系班级姓名学号指导教师目录引言 (3)1.自动售货机的介绍 (3)1.2 PLC的选型原则 (3)1.3 PLC的概述 (3)1.3.1 PLC的产生................................................................................3. 1.3.2 PLC的定义.. (3)1.3.3 PLC的发展趋势 (4)1.3.4 PLC的特点 (4)1.4 西门子公司可编程控制器产品S7-300介绍 (4)1.4.1 S7-300 PLC的系统组成 (4)1.4.2 技术性能 (4)2.自动售货机PLC程序设计 (5)2.1仿真实验系统中售货机的分析 (5)2.2 设计任务的确定 (6)2.3 程序设计部分 (7)2.3.1 程序设计说明 (7)2.3.2 PLC程序设计 (7)2.4 下载和调试程序 (16)2.4.1 下载程序及模块信息 (16)2.4.2 用S7-PLCSIM调试程序 (16)3.结束语 (16)4.参考文献 (17)5.附录 (17)引言可编程控制器(PLC)是一类专门为在工业环境下应用而设计的数字式电子系统。

他采用可编程序的存储器,用来在其内部存储执行逻辑运算,顺序控制,定时,计时,算数运算等功能的面向用户的指令,并通过数字式或模拟式的输入和输出,控制各类类型的机械或者生产过程。

自动售货机的自动售货功能是基于PLC程序的设计来实现。

主要设计介绍:一台用于销售汽水和咖啡的自动售货机,具有硬币识别的功能,币值累加自动售货,自动找钱等功能,此售货机可接受的硬币有0.1元,0.5元,1元。

汽水的价格为1.2元;咖啡的价格为1.5元。

1自动售货机介绍1.1 自动售货机介绍自动售货机是能根据投入的钱币自动付货的机器。

自动售货机是商业自动化的常用设备,它不受时间、地点的限制,能节省人力、方便交易。

实验1自动售货机系统

实验1自动售货机系统

上机实践报告课程名称:软件工程年级:上机实践成绩:指导教师:姓名:上机实践内容:自动售货机系统学号:上机实践日期:一、目的用面向对象分析、设计方法来分析机票预订系统。

二、主要内容及问题自动售货机系统是一种无人售货系统。

售货时,顾客把硬币投入机器的投币口中,机器检查硬币的大小、重量、厚度及边缘类型。

有效的硬币是一元币、五角币、一角币、五分币、二分币和一分币。

其他货币都被认为是假币。

机器拒绝接收假币,并将其从退币孔退出。

当机器接收了有效的硬币之后,就把硬币送入硬币储藏器中。

顾客支付的货币根据硬币的面值进行累加。

自动售货机装有货物分配器。

每个货物分配器中包含零个或多个价格相同的货物。

顾客通过选择货物分配器来选择货物。

如果货物分配器中有货物,而且顾客支付的货币值不小于该货物的价格,货物将被分配到货物传送孔送给顾客,并将适当的零钱返回到退币孔。

如果分配器是空的,则和顾客支付的货币值相等的硬币将被送回到退币孔。

如果顾客支付的货币值少于所选择的分配器中货物的价格,机器将等待顾客投进更多的货币。

如果顾客决定不买所选择的货物,他投放进的货币将从退币孔中退出。

三、使用环境操作系统:Windows XP建模工具:StarUML、Microsoft Visio四、设计内容1-1、用例模型图用例模型图说明:自动售货系统主要使用的对象是顾客。

系统根据顾客的钱和选择处理,则系统其中的一个功能即用例就是接收顾客信息。

顾客需要自己投币和选择,系统由输入的信息来识别,则系统的另一个功能即用例就是发货,在系统没货的时候会提醒供货员供货。

1-2、类图类图说明:为此系统定义了4个类,分别是顾客类,系统前台类,后台类,售货机类。

各个类对应的属性和操作方法在图中已表示出,目前应该还是有很多不完善的地方,在后期再加以修改。

1-3、对象图对象图说明:对象图是根据设置的类图而设置的。

一个对象就是类的一个具体实例,本例中设置了一个顾客,详细信息在图中已经设置,根据储户的相关信息和操作,系统会调用相应的类的对象来处理,在本例中不一定会全部都涉及。

EDA课程设计报告(自动售货机)

EDA课程设计报告(自动售货机)

E D A课程设计报告(自动售货机)-CAL-FENGHAI.-(YICAI)-Company One1EDA(Verilog)课程设计报告——自动售货机摘要本设计是以现场可编程逻辑器件(FPGA)为核心的自动售货机,利用QuartusⅡ软件编写verilog HDL硬件描述语言程序以实现自动售货功能。

本设计主要以程序为主,硬件方面则使用实验箱(芯片Cyclone II—EP2C35F672C8,基于MagicSOPC创新教学实验开发平台),将程序各变量端口与实验箱管脚进行相应的配置,用八个开关分别代表商品价格、所投钱币价格及确认付款找零操作。

当选择好商品并投币后,数码管显示所选商品价格及投入钱币价格;按下确认付款开关,数码管显示应找多少钱,若交易成功,则对应商品LED灯亮,同时步进电机转动将商品送出。

若所投钱币小于所选商品价格,此时交易不成功,同时对应警告的LED灯亮。

目录前言第一章系统设计1.1 系统设计1.2 总体设计1.3 方案设计第二章详细设计2.1 自动售货机状态描述2.2 详细状态描述2.2.1 初始状态2.2.2 选商品状态2.2.3 投币状态2.2.4 找零状态第三章软件设计3.1 程序总流程图3.2 verilog HDL源程序第四章结果与讨论4.1 实验调试4.1.1 调试步骤4.1.2 实验现象4.2 结果与分析第五章心得体会参考文献附录前言EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪60年代中期从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。

Verilog HDL是众多EDA软件中的一个,结合我们这学期所学课程,本次设计采用的是Verilog公司推出的Verilog硬件描述语言,目的是为了将我们所学应用到实际生活中,同时加深我们对Verilog硬件描述语言,FPGA 芯片等等的认识与掌握。

自动售货机实训总结报告

自动售货机实训总结报告

一、实训背景随着我国经济的快速发展和人民生活水平的不断提高,自动售货机作为一种便捷的零售服务方式,在我国市场得到了广泛的应用。

为了更好地了解自动售货机的运作原理、技术应用以及市场前景,我们开展了为期两周的自动售货机实训。

本次实训旨在通过实际操作,使学生掌握自动售货机的相关知识和技能,提高学生的实践能力。

二、实训目的1. 使学生了解自动售货机的基本结构、工作原理和操作流程;2. 培养学生动手实践能力,提高学生的技术应用水平;3. 让学生熟悉自动售货机市场现状,了解行业发展动态;4. 培养学生的团队合作精神和沟通能力。

三、实训内容1. 自动售货机基本结构及工作原理实训过程中,我们首先了解了自动售货机的基本结构,包括机箱、控制系统、支付系统、储物单元等。

随后,我们学习了自动售货机的工作原理,包括商品检测、选货、支付、出货等环节。

2. 自动售货机操作流程在实训过程中,我们详细学习了自动售货机的操作流程,包括:(1)商品上架:根据商品种类、数量和价格进行上架操作,确保商品摆放整齐、易于识别。

(2)选货:顾客通过触摸屏或按钮选择所需商品。

(3)支付:顾客选择支付方式(如现金、移动支付等),完成支付操作。

(4)出货:自动售货机根据支付结果,将所选商品输出。

3. 自动售货机故障排除实训过程中,我们学习了自动售货机常见故障的排除方法,如:(1)商品无法出货:检查商品是否正确放置,支付是否成功,机器是否卡住等。

(2)支付故障:检查支付系统是否正常,连接是否稳定,是否需要重启机器等。

(3)通信故障:检查网络连接是否正常,设备是否需要更新等。

4. 自动售货机市场现状及发展趋势实训过程中,我们了解了我国自动售货机市场现状,包括市场规模、竞争格局、应用领域等。

同时,我们还分析了自动售货机行业的发展趋势,如智能化、无人化、定制化等。

四、实训成果1. 学生掌握了自动售货机的基本结构、工作原理和操作流程;2. 学生的动手实践能力得到提高,技术应用水平得到提升;3. 学生对自动售货机市场现状和行业发展动态有了更深入的了解;4. 学生的团队合作精神和沟通能力得到锻炼。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

硬件课程设计报告课题名称: 自动售货机班级: 计科2014-02班**: ***学号: ************: ***2016年12月27日摘要 1 1.设计简介 21.1设计步骤及要求 21.2设计题目 21.3设计背景 21.4面临问题 21.5解决方案 31.6设计思想 32.设计任务及要求 32.1实验目的 32.2具体要求 32.3使用硬件 43.总体方案与说明 43.1流程设计 43.1.1系统程序模块 43.1.2系统流程图 44.硬件框图与说明 54.1DAC0832芯片 54.2可编程外围接口芯片8255A 74.3128×64字符液晶显示器94.4可编程定时计数器8254 115.电路原理图与说明 135.18254定时电路 135.2LCD显示电路 145.3总的电路 146.软件流程图 147.实验代码及注释 158.结论与体会 188.1实验成果 188.1.1实验线路图 188.1.2实验结果 188.2实验体会 189.参考文献 18在日常的生活中,为了方便人群,在人群活动较多的地方放置自动售货机,解决了人群的需求,自动售货机里包括多种商品,若需要购买货物,选择自己所需的商品,按下确定键,付款后及购买成功。

通过使用自动售货机,解放了人力资源的同时,为人们提供了便利,同时由于自动售货机是集中调配,统一管理,使其成为新时期电子产品应用现实社会的体现之一。

关键词普通开关 8255A芯片 8254芯片 DAC0832芯片 LCD液晶显示器1 设计简介1.1设计步骤及要求课程安排1.指导老师布置任务,学生选题2.系统总体设计3.系统硬件设计4.系统调试5.设计报告6.检查、评定、总结1.2设计题目自动售货机1.3设计背景在日常的生活中,为了方便人群,在人群活动较多的地方放置自动售货机,解决了人群的需求,自动售货机里包括多种商品,若需要购买货物,选择自己所需的商品,按下确定键,付款后及购买成功。

通过使用自动售货机,解放了人力资源的同时,为人们提供了便利,同时由于自动售货机是集中调配,统一管理,使其成为新时期电子产品应用现实社会的体现之一。

1.4面临问题1.如何实时反应所购商品变化2.如何利用8254上升沿下降沿实现定时转动电机3.如何将商品显示在LCD显示屏上1.5解决方案1.利用8255A B口作为输入端口实时读取开关控制信息,即所购商品。

2. 将级联后的8254out1端口连至8255A输入口,通过读取输入口数据,判断8254处于高低点平状态。

3.将汉字写入系统根据开关读取状态实时显示汉字在LCD液晶显示屏。

1.6设计思想该系统通过8255A芯片的B口作为输入口,实时采集用户从开关输入的状态,当K2开关未闭合表示用户选择完毕,此时显示用户选择的商品,通过LCD液晶显示屏显示商品名称,并循环此过程,不断的显示用户选择的商品。

8254芯片定时一秒,输出口通入8255A B口不断读取PB3位状态,在高电平时,实现跟踪,低电平时通过0832芯片给电机写FF电机转动。

每一种商品对应一种转速。

2 设计任务与要求2.1实验目的1.复习8255芯片,8254芯片工作原理及使用方法2.学会使用128×64字符液晶显示屏3.锻炼小规模逻辑电路设计4.提高分析、解决问题的能力2.2具体要求本系统需要实时提供用户购买商品服务,客户在通过K0,K1开关选择实验商品时,显示屏显示商品,按下K2键即确认购买键,电动机根据所选商品转动,不同商品为了区分,使其设置为不同的电动机转速。

2.3使用硬件8255A芯片 8254芯片 DAC0832芯片 128×64字符液晶显示器3 总体方案与设计说明3.1实验流程设计3.1.1系统程序模块图3-1系统程序模块3.1.2系统流程图图3-2系统流程图4 硬件框图与说明4.1DAC0832芯片1.概述DAC0832是8分辨率的D/A转换集成芯片。

与微处理器完全兼容。

这个DA芯片以其价格低廉、接口简单、转换控制容易等优点,在单片机应用系统中得到广泛的应用。

D/A转换器由8位输入锁存器、8位DAC寄存器、8位D/A转换电路及转换控制电路构成。

2.芯片结构图图4-1DAC0832结构图*D0~D7:8位数据输入线,TTL电平,有效时间应大于90ns(否则锁存器的数据会出错);* ILE:数据锁存允许控制信号输入线,高电平有效;* CS:片选信号输入线(选通数据锁存器),低电平有效;* WR1:数据锁存器写选通输入线,负脉冲(脉宽应大于500ns)有效。

由ILE、CS、WR1的逻辑组合产生LE1,当LE1为高电平时,数据锁存器状态随输入数据线变换,LE1的负跳变时将输入数据锁存;* XFER:数据传输控制信号输入线,低电平有效,负脉冲(脉宽应大于500ns)有效;* WR2:DAC寄存器选通输入线,负脉冲(脉宽应大于500ns)有效。

由WR2、XFER的逻辑组合产生LE2,当LE2为高电平时,DAC寄存器的输出随寄存器的输入而变化,LE2的负跳变时将数据锁存器的内容打入DAC寄存器并开始D/A转换。

* IOUT1:电流输出端1,其值随DAC寄存器的内容线性变化;* IOUT2:电流输出端2,其值与IOUT1值之和为一常数;* Rfb:反馈信号输入线,改变Rfb端外接电阻值可调整转换满量程精度;* Vcc:电源输入端,Vcc的范围为+5V~+15V;* VREF:基准电压输入线,VREF的范围为-10V~+10V;* AGND:模拟信号地;* DGND:数字信号地。

4.2可编程外围接口芯片 8255A1.概述8255A是一种通用的可编程并行I/O接口芯片,它是为Intel 系列微处理器设计配套电路,也可用于其他微处理器系统中。

通过对它编程,芯片可工作于不同的工作方式。

在微型计算机系统中,用8255A做接口时,通常不需要附加外部逻辑电路就可直接为CPU 与外设之间提供数据通道,因此得到了极为广泛的应用。

2.系统结构图图4-2 8255A系统结构图由图可见,8255A由数据端口A、B、C(期中,C口被分为C 口上半部分和C口下半部分),A组和B组控制逻辑,数据总线缓冲器和读写控制逻辑。

3.控制字8255A具有3种基本工作方式。

方式0:基本输入输出方式;方式1:选通输入输出方式;方式2:双向总线I/O方式。

端口A可以工作于3种方式中的任一种;端口B只能工作于方式0和方式1,而不能工作于方式2;端口C常被分成2个4位端口,除了用做输入输出端口外,还能用来配合A口和B口工作,为这两个端口的输入输出操作提供联络信号。

4.工作方式方式0 基本输入输出方式,它适用于不需要应答信号的简单输入输出场合。

A B C口适用方式1 选通输入/输出方式。

在这种方式下,A口和B口作为数据口,均可用于输入或输出方式。

A B口方式2 双向总线方式。

A口4.3 128×64字符液晶显示器1.概述ST7920是台湾矽创电子公司生产的中文图形控制芯片,它是一种内置128×64-12汉字图形点阵的液晶显示控制模块,用于显示汉字及图形。12864A-1汉字图形点阵液晶显示模块集成ST7920驱动器,可显示汉字及图形,内置8192个中文汉字(16×16点阵)、128个字符(8×16点阵)及64×256点阵显示RAM(GDRAM)。

2.系统结构外形如图图4-3 LCD显示屏系统结构图图4-4 LCD系统图3.工作原理12864液晶显示器工作于并行模式。

8位数据线与8255A芯片8位数据口连接,控制口(E、R/W、D/I)与8255A芯片C口四位相连。

通过8255A的8位数据空向12864液晶显示器传送数据,通过C口低四位传送控制信号。

控制口E为使能端,高电位有效。

R/W为读写控制,低点位为写数据、高电位为读数据。

D/I为数据与命令口,低电位为命令、高电位为数据。

将需要显示的地址通过数据口以命令的形式送入显示器,再将需要显示的数据通过数据口以数据的形式送入显示器,即可显示内容。

表4-1 LCD汉字显示坐标图4-5 LCD中文字库截图4.4 可编程定时器计数器82541. 概述8254 芯片是一款使用十分广泛的可编程定时,计数芯片,其主要功能是定时和计数的功能。

我们的微机内的动态存储器刷新电路,系统日时钟的技术以及发声系统的声源都是由8254芯片来完成的。

2.系统结构图4-6 8254系统结构图数据总线缓冲器:数据总线缓冲器是一个三态、双向8位寄存器主要作用是与cpu进行数据交换,8位数据线D7~D0与CPU的系统数据总线连接,构成CPU和8254之间信息传送的通道,CPU通过数据总线缓冲器向8254写入控制命令、计数初始值或读取计数值。

读写逻辑:读写逻辑是芯片的控制部分,编程人员通过控制信号的选择来选择芯片的工作方式。

读/写控制逻辑用来接收CPU系统总线的读、写控制信号和端口选择信号,用于控制8254内部寄存器的读/写操作。

控制字寄存器:控制寄存器是一个只能写不能读的8位寄存器,系统通过指令将控制字写入控制寄存器,设定8254的不同工作方式。

计数器:8254内部有三个结构完全相同而又相互独立的16位减“1”计数器,每个计数器有六种工作方式,各自可按照编程设定的方式工作。

3.工作方式(1)方式0:计数到0结束输出正跃变信号方式。

(2)方式1:硬件可重触发单稳方式。

(3)方式2:频率发生器方式。

(4)方式3:方波发生器。

(5)方式4:软件触发选通方式。

(6)方式5:硬件触发选通方式。

5 电路原理图与说明5.1 8254定时电路图5-1 8254定时电路5.2 LCD显示电路图5-2 LCD显示电路5.3 总的电路图5-3 系统总电路6 软件流程图图6-1 软件流程图7 实验代码及注释#include<stdio.h>#include<conio.h>#include "ApiExusb.h"#pragmacomment(lib,"ApiExusb.lib")char lcd1[6] = {0xBF,0xC9,0xC0,0xD6,0x20,0x31};char lcd2[6] = {0xC2,0xF6,0xB6,0xAF,0x20,0x31};char lcd3[6] = {0xBA,0xEC,0xC5,0xA3,0x20,0x31};右转char lcd4[6] = {0xC4,0xCC,0xB2,0xE8,0x20,0x31};void clear();void cmdsetup();void datasetup();void main(){byte data;int i;printf("Press any key tobegin!\n\n");getch();if(!Startup()) /*打开设备*/{printf("ERROR: Open Device Error!\n");return;}//通道0工作方式3,初值1000 PortWriteByte(0x283,0x36);PortWriteByte(0x280,2000%256);PortWriteByte(0x280,2000/256);PortWriteByte(0x283,0x76);//通道2工作方式3,初值Out0PortWriteByte(0x281,1000%256);PortWriteByte(0x281,1000/256) ;//级联后的周期2秒clear();while(!kbhit()){PortWriteByte(0x28b,0x82);/*设8255为方式0,C口输出,A口输出,B口输入*/clear();PortReadByte(0x289,&data);//从B口不断地读入数据printf("%d\n", data);PortWriteByte(0x290,0x00);if(!(data & 4)) //判断B口输入数据 K2是否闭合{if(data == 0||data == 8) //根据K0 K1 由B口传入数据判断键值四种 {PortWriteByte(0x288,0x90);cmdsetup();Sleep(10);for(i = 0;i<6;i++){PortWriteByte(0x288,lcd1[i]);datasetup();}}else if(data == 1||data == 9){PortWriteByte(0x288,0x90);cmdsetup();Sleep(10);for(i = 0;i<6;i++){PortWriteByte(0x288,lcd2[i]);datasetup();}}else if(data == 2||data == 10){PortWriteByte(0x288,0x90);cmdsetup();Sleep(10);for(i = 0;i<6;i++){PortWriteByte(0x288,lcd3[i]);datasetup();}}else if(data == 3||data == 11){PortWriteByte(0x288,0x90);cmdsetup();Sleep(10);for(i = 0;i<6;i++){PortWriteByte(0x288,lcd4[i]);datasetup();}}}else //键K2按下开始电机转动{PortWriteByte(0x290,0x00);while(true){if(data & 8) //跟踪8254高电平不断获取{break;}break;}while(true) //低电平开始转动并不断检测电平{PortWriteByte(0x290,0x00);//由K0 K1 键值给电动机一个转速共四种转速if(!(data & 8)) {if(data == 4||data == 12){PortWriteByte(0x290,0xCC);}else if(data == 5||data == 13){PortWriteByte(0x290,0xEE);}if(data == 6||data == 14){PortWriteByte(0x290,0x51);}if(data == 7||data == 15){PortWriteByte(0x290,0xFF);}break;}PortWriteByte(0x290,0x00);break;}}}Cleanup();}void clear(){PortWriteByte(0x288,0x0c); cmdsetup();}void cmdsetup(){PortWriteByte(0x28a,0x00); Sleep(1);PortWriteByte(0x28a,0x04); Sleep(1);PortWriteByte(0x28a,0x00);Sleep(1);}void datasetup(){PortWriteByte(0x28a,0x01); Sleep(1);PortWriteByte(0x28a,0x05); Sleep(1);PortWriteByte(0x28a,0x01); Sleep(1);}8 结论与体会8.1实验成果8.1.1实验线路图图8-1 实验线路图8.1.2实验结果实现K0 K1 选择商品在LCD显示屏显示,而后,K2 闭合,控制电机转动,不同商品对应不同转速,转动1S。

相关文档
最新文档