【生意多】-免费发布分类信息
当前位置: 首页 » 新闻 » 商业与经济 » 正文

食堂刷卡机_百度文库

放大字体  缩小字体 发布日期:2020-10-21 18:46:15    浏览次数:3
导读

  基于 DS80C410 内嵌 CAN 总线食堂售饭系统的设计 介绍了一种基于 DS80C410 内嵌 CAN 总线网络的食堂售饭系统的设计,包括系统的网络结构和硬件设 计。重点介绍了系统中窗口机的硬件、软件设计,并详细描述了 DS80C410 内嵌 CAN 模块的初始化过程和报 文收发过程。 关键字: 关键字:DS80C410CAN 总线.引言 CAN 总线(Co

  基于 DS80C410 内嵌 CAN 总线食堂售饭系统的设计 介绍了一种基于 DS80C410 内嵌 CAN 总线网络的食堂售饭系统的设计,包括系统的网络结构和硬件设 计。重点介绍了系统中窗口机的硬件、软件设计,并详细描述了 DS80C410 内嵌 CAN 模块的初始化过程和报 文收发过程。 关键字: 关键字:DS80C410CAN 总线.引言 CAN 总线(ControllerAreaNetworkBus)是一种有效支持分布式控制的串行 通信网络。它比一般的通信总线具有更高的可靠性、实时性和灵活性。CAN 为多 主方式工作,网络上任一节点均可在任意时刻主动地向网络上其他节点发送信 息,而且不分主从,通信方式灵活,无需站地址等节点信息。CAN 总线现已广泛 应用于工业现场控制、小区安防、环境监控等众多领域中。 2.系统结构 实时通信的食堂售饭系统的通信特点非常适合于采用 CAN 总线。 它的短帧结 构非常适合系统对抗干扰能力和实时通信能力要求较高, 单次通信量很小的场合; 灵活的组网特点完全可以解决大型食堂售饭系统中多个食堂和营业网点较分散 的问题。 基于 CAN 总线的食堂售饭系统网络结构如图 1 所示。采用总线型接法,主要 包含三层:服务器、中继器和终端。其中服务器包括工作服务器和备用服务器, 这两个服务器在营业时同时工作,互为备用,保证系统的稳定可靠。中继器可以 延伸通信距离,增加终端数目,变换通信速率,并能起到滤波和隔离作用。终端 主要是销售用的窗口机,还包括挂失机、解挂机、发卡/充值机等。 1 2 3.窗口机硬件设计 窗口机是直接与售饭人员和用户打交道的主要前台设备。 2 为窗口机的硬 图 件结构框图。 采用 Dallas 内嵌 CAN 控制器的高速网络微控制器 DS80C410 作为窗 口机的微处理器,负责整个窗口机和键盘的监控。MMM 为非接触式 IC(Mifare) 卡读/写器模块。该模块在微处理器的控制下,可完成对卡片的非接触式读/写等 操作。窗口机的通信任务是 DS80C410 内嵌的 CAN 控制器在 CPU 控制下完成的, CAN 控制器通过 CAN 总线 接收总线上的数据,供 CPU 读取,也 可以将 CPU 送来的数据发送到 CAN 总线上。内嵌 CAN 控制器通过 DS80C410 芯片 上的 P5.1 (C0RX-CAN 接收) P5.0 和 (C0TX-CAN 发送) 脚分别与收发器的 RXD (接 收数据输出)和 TXD(发送数据输入)脚相连。窗口机硬件还包括一个 4×4 键 盘(10 个数字键、6 个功能键)、前后各 10 位数码显示(显示内容完全相同)、 32KB 的 EEPROM(用来存储消费记录)、看门狗等部分电路。 4.窗口机软件设计 4.1 主程序设计 窗口机具有连网和脱网两种运行方式。窗口机的默认工作方式分为连网运 行,只有在出现网络故障或其他原因无法连网运行时,才通过开关设定为脱网运 行。 3 为窗口机运行的主程序流程图。 图 窗口机初始化后, 先进行键盘处理, LED 显示处理,并判断是否回收消费记录。然后查询是否读到卡,读到卡后,调用相 应连网或脱网子程序,进行营业操作。 3 图 3 窗口机主程序流程图 4.1.1CAN 的初始化 窗口机的初始化,包括对 CAN 模块的初始化。当系统硬件复位后,首先屏蔽 CAN 中断,然后将位于 DS80C410 的 SFR(特殊功能寄存器)中的 C0C(CAN 控制 寄存器) 中的 CRST (复位) 位清 0, 即清除了 CAN 控制器的复位状态, 同时 SWINT (软件初始化)位要置 1,即禁止 CAN 的总线活动,这样才允许程序对 CAN 模块 中的控制寄存器和扩展帧的屏蔽寄存器(C0EGM0~C0EGM3)进行写操作,并设置 通信波特率、窗口机 ID、窗口机号、CAN 状态、CAN 口使能、CAN 定时等参数, 初始化 CAN 模块。最后恢复 CAN 中断。初始化结束后,要清 SWINT 位,恢复 CAN 总线 工作流程 在连网情况下,当窗口机通过 MMM 获取卡号后,将卡号发送给服务器,服务 器收到卡号后,在数据库中查找对应卡号的用户余额并将其返回给窗口机。窗口 机显示接收到的用户余额,当一次营业操作完成以后,窗口机将用户总消费额发 4 送给服务器,服务器接收到消费额后进行相应数据库记录的更新,并将已接收消 费额的确认帧(ACK)返回给窗口机。如果窗口机将读到的卡号(SNR)发送给服 务器的过程中帧丢失,即窗口机没有收到服务器的余额帧,这时窗口机等待一个 重发时间,仍未收到服务器的余额帧后,将重发先前的卡号。最多重发 3 次,当 重发 3 次仍无法收到服务器的回应帧后, 显示相应的提示信息。 如果在结帐以后, 窗口机发给服务器的用户消费额帧丢失,即服务器没有收到消费额帧,无法进行 相应记录的更新, 同样采取上述方法重发用户消费额。 4 为连网子程序流程图。 图 图 4 连网子程序流程图 脱网情况下,窗口机采用的是记帐的办法,将脱网状态下用户的卡号和消费 记录全部存储在窗 口机的 EEPROM 中,等系统恢复连网运行以后,服务器从各窗口机中回收存 5 储的数据,进行服务器数据库的更新。由于脱网情况下窗口机不能和服务器进行 实时通信,所以程序较简单,就不再给出流程图了。 6 4.2.2 帧的发送和接收 DS80C410 中 CAN 模块提供了 15 个报文中心, 作为发送或接收数据的存储器。 帧的发送和接收通过这 15 个报文中心实现,也可以选择一个或若干个报文中心 发送或接收帧。这 15 个报文中心发送或接收数据的优先级顺序是以报文中心的 逆序排列的。报文中心 1-14 可设置为接收或发送数据,报文中心 15 只能接收数 据。报文中心的控制寄存器(C0M1C~C0M15C)位于 SFR 中。每个报文中心有一 个格式寄存器(C0MyF)、4 个仲裁寄存器和 8 个字节(C0MyD0~C0MyD7)的数 据区域。仲裁寄存器的值可以在初始化中设置,也可以在发送程序中设置,而且 它的值可随着数据的接收而自动更改。另外,报文中心 15 的 C015M0~C015M3 寄存器,还可以执行附加的滤波。 当网络中某一窗口机处于发送状态时,首先对使用的报文中心初始化,把要 发送的报文装入报文中心,报文中心仲裁寄存器的值作为帧的标识符发送出去。 图 5 为使用报文中心 1 发送数据的程序流程图,其中 MSRDY(报文中心就绪), DTUP(数据更新),MTRQ(CPU 发送请求)等位是报文中心 1 的控制寄存器 C0M1C 的位。 当窗口机处于接收状态时,CAN 控制器将根据屏蔽寄存器和接收报文中心的 仲裁寄存器的值对接收帧的 ID 标识符进行判断,确定报文中心是否接收,只有 当接收帧的标识符与仲裁寄存器的值相等的时候,帧才被接收;另外,CAN 模块 还有媒体屏蔽寄存器和媒体仲裁寄存器, 可对接收的数据帧的第 0 和 1 两个字节 进行额外的校验。图 6 是使用报文中心 2 接收数据的程序流程图。其中 MSRDY, DTUP,MTRQ 等位是报文中心 2 的控制寄存器 C0M2C 的位。 5.结束语 DS80C410 是带有以太网和 CAN 的网络微控制器。包括一个 10/100 以太网 MAC,三个全双工硬件串行口,8 个双向 8 位端口,一个可选的 CAN2.0B 控制器, 1-Wire?主机和 64 个 I/O 引脚及用于存储用户应用和网络堆栈的 64K 字节内部 SRAM。内嵌 CAN 模块支持标准(11 位)和扩展(29 位)标识符和通用掩模,媒 体字节过滤,DeviceNet?,SDS 和高层 CAN 协议,自动波特率模式和 SIESTA 低 功耗模式。基于 DS80C410 内嵌 CAN 总线的食堂售饭系统,不仅有良好的稳定性、 安全性和可靠性,而且实时响应能力强,网络维护方便,用户界面友好、软件使 用、升级和移植方便,成本低廉。 本文创新点:DS80C410 集成度较高,16MB 连续存储空间,能够同时完成对 窗口和键盘的监控。高达 75MHz 的系统时钟频率,使单周期指令仅 54ns。内嵌 CAN 模块,使窗口机硬件结构更为简单,节省硬件资源。CAN 模块的 15 个报文中 心,使通信效率增强。对 CAN 模块操作与对单片机扩展外部程序/数据存贮器的 操作是相同的,软件实现不复杂。 7

 
关键词: 饭堂刷卡机
(文/小编)
打赏
免责声明
• 
本文为小编原创作品,作者: 小编。欢迎转载,转载请注明原文出处:https://www.31duo.com/news/show-664167.html 。本文仅代表作者个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,作者需自行承担相应责任。涉及到版权或其他问题,请及时联系我们。
 

(c)2016-2019 31DUO.COM All Rights Reserved浙ICP备19001410号-4

浙ICP备19001410号-4