收藏 分享(赏)

“报刊分发自动显示系统”开发文档.doc

上传人:gnk289057 文档编号:8385752 上传时间:2019-06-23 格式:DOC 页数:14 大小:1.48MB
下载 相关 举报
“报刊分发自动显示系统”开发文档.doc_第1页
第1页 / 共14页
“报刊分发自动显示系统”开发文档.doc_第2页
第2页 / 共14页
“报刊分发自动显示系统”开发文档.doc_第3页
第3页 / 共14页
“报刊分发自动显示系统”开发文档.doc_第4页
第4页 / 共14页
“报刊分发自动显示系统”开发文档.doc_第5页
第5页 / 共14页
点击查看更多>>
资源描述

1、 “报刊分发自动显示系统”开发文档一、分发流程概述每个地州邮政局从贵州省邮政局通过 TCP/IP 网络下载当天应分发的报刊的电子数据到本地计算机,然后对当天送来的报刊进行分拆发送,具体是将每种报纸或杂志的刊号即日期输入到已下载数据的计算机,计算机屏幕自动显示出每个地方要投递的报刊数量,并在报刊柜上以 LED 形式显示出来。由于其业务流程是将每一种报刊进行分拆,然后将每个地区应发送的报刊数量显示在计算机屏幕上,并通过数据线将要发送的数量以 LED 方式在每个格架的格口上显示出来(一个格口代表一个地区) 。所以,其网络拓扑结构如图 1所示,一个报刊柜由一个单元控制器控制(也称集中器数据转发模块)

2、,计算机通过 RS485 总线控制各个单元控制器(也称集中器数据转发模块) ,单元控制器(也称集中器数据转发模块)再控制每个报刊柜的格口显示器。也就是说,每个格口要显示的数据是通过计算机传送到单元控制器(也称集中器数据转发模块) ,再由单元控制器(也称集中器转发模块)将要显示的数据转发到每个格口显示器(即每个地区应分发报刊的数量) 。二、硬件系统构成“报刊分发自动显示系统”由 1 台后台上位机管理和发送数据模块、多个集中器数据转发模块和多个前台显示终端模块三个部分组成。每个上位机可以接 1 到多个集中器数据转发模块,每个分发格架有 16 个显示终端模块,1 个报刊分发柜子(也叫分发格架)对应一

3、个集中器数据转发模块。后台上位机管理和发送数据模块是报刊分发人员和计算机系统进行直接交流的平台,报刊分发人员使用键盘输入报刊的代号、期数,功能键等信息,上位机从数据库中读出相应的报刊在不同地区需要发出的数量,将数据加上集中器数据转发模块地址以数据包形式通过 RS485 总线发出,集中器数据转发模块收到自己的数据包后,将其分组并根据规定协议加上显示终端模块的地址通过 RS232 串口发送给显示终端。图 1 报刊分发自动显示系统示意图三、数据的通信协议3.1、后台计算机与集中器数据转发模块的通信协议由图 1 示意图知,单元控制器(集中器数据转发模块)的功能是将后台计算机传来的数据进行转发给每个分发

4、柜子(也叫分发格架) ,一个格架有一个单元控制器,每个格架对应 16 个格口,一个格口对应一个分发投递区。由于后台计算机(PC 机)控制多个单元控制器,协议使用广播方式进行通信,这就要求每个单元控制器必须有一个唯一的地址,我们使用一个字节来表示,规定如下:1 1 X X X X X Y(X标识 0 或 1,Y 左右屏标识符,0 为左屏,1 为右屏)。由于业务需求每个格口有左右屏显示,这里使用最低位为左右屏标识符。中间 5位就作为单元控制器的地址编码,最大有 32 个地址,即最多可控制器 32 个柜子,大大超过现在的业务需求,可满足以后的扩展。左屏地址为 C0,C2,C4,CD,D0,D2,DD

5、,E0,ED,F0,FD,共 32 个;右屏地址为:C1,C3,C5,CE,D1,D3,DE,E1,EE,F1,FE,共32 个。确定地址编码后,其通信协议规定如下:PC 机将通过串口依次以 9600 的波特率向每个柜子单元控制器的所有格口显示器发送数据,先发送每个单元控制器的地址,再发送每个单元控制器所控制的 16 个格口的数据。为保证传输的可靠性,让每个数据都发送 3 次,单元控制器对收到的 3 个数据进行比较,3 次中有两个数据相同则认为数据发送正确,增加了容错能力。计算机通过串口向各单元控制器发送数据,每个单元控制器对收到的数据进行比较,看是否与本单元控制器地址相符,相符则接收所控制的

6、 16 个格口显示器的数据,不符则丢弃此数据,继续接收。由于后台计算机离每个单元控制器(单元控制器安装在分发格架上)有一定的距离,所以它们之间的物理层的数据传输使用RS485 通讯协议,保证数据通信快速、可靠。3.2、集中器数据转发模块与显示终端模块的通信协议单元控制器(集中器数据转发模块)收到 16 个格口的数据后,要转发给 16 个格口的显示终端模块(显示器) ,因此,双方有约定的通讯协议,保证数据无误、可靠地传送。单元控制器与显示器使用 UART 串口协议,也使用一对多的广播方式,具体为方式 3(单片机工作方式 3) 。每个格口的地址为:左屏:C0,C1,C2,CF; 右屏:E0,E1,

7、EF。四、硬件设计4.1、集中器数据转发模块(单元控制器)设计采用双单片机分工协作,左边 STC12C2052 为主片,右边为从片。主片作用有通过识别地址拨码值并将其作为本模块地址、通过RS485 串口接收上位机发送的数据包、将数据通过 P1.0-P1.7 并口传送给从片。从片作用有接收主片传来的数据包,将其分组根据规定的协议加上显示终端模块的地址通过 RS232 串口发送给显示终端。地址拨码为一个 8 位拨码开关,用于设置每个集中器模块的硬件地址。优点有:采用两片各带一个串口的廉价 51 内核单片机实现两个串口功能,取代较昂贵的带两个串口单片机,较大幅度降低了生产成本。图 2 集中器数据转发

8、模块实物图图 3 集中器数据转发模块电路原理图图 4 集中器数据转发模块 PCB 图MCU masterST12052 MCU slaveST12052并 口 通 信RS485通 信 RS23串 口通 信集 中 器 数 据 转 发 模 块 硬 件 结 构 框 图地 址 拨 码4.2 集中器数据转发模块设计集中器数据转发模块(显示器)功能是把单元控制器传来的数据在数码管上显示出来,设计使用 4 只数码管,使其最大显示数据为9999,大大超过实际分发量。又因需要有左右屏显示,为加以区别,左屏使用 4 只红光数码管,右屏使用 4 只绿灯数码管。数码管的显示一般有动态显示和静态显示,由于每个格口有左右

9、屏共 8 只数码管,因为数码管电流较大,为降低功耗,我们使用动态显示方法。其原理图、PCB 印刷电路板图、实物图见图 6图 10。图 6 显示终端模块实物图正面上图中模块左边 LED 数码管为红色,右边为绿色。颜色不同是为了让两组人员分发时不会混淆自己的。图 5图 7 显示终端模块实物图反面实物图反面左右两边金属壳插座为 RJ45,用于数据和电源线接口,左边为接入端,右边接出端接到下一个显示终端模块。图 8 显示终端模块电路原理图图 9 显示终端模块 PCB 图MCUST12052 LED显 示驱 动 电 路地 址 拨 码RS23串 口通 信 显 示 终 端 模 块 硬 件 结 构 框 图4.

10、2.1 显示终端模块硬件结构框图说明:STC12C2052 单片机为显示模块控制核心,作用有控制 RS232 串口(UART)收发、识别地址拨码值并将其作为本模块地址、控制驱动电路点亮 LED 数码管显示。RS232 串口用于同集中器数据转发模块进行数据通信,接收发来的显示数据包。LED 为 8 段数码显示,每个 LED 数码管可显示一个数字,设计采用 8 个数码管分两组显示数据,每组最大可显示数据 9999,两组采用红色和绿色数码管,可同时进行显示。地址拨码为一个 5 位拨码开关,用于设置每个模块的硬件地址。五、 软件设计5.1 集中器数据转发模块程序流程图数据采用压缩 BCD 码格式,每个

11、字节 8 位存放 2 个 BCD 码。其中单元控制器地址中第 0 位为左右屏标志。左屏为 0,右屏为 1。5.1.1 主片主程序流程图图 10开 始初 始 化 P口从 拨 码 开 关 取 该 模 块 单 元 地 址初 始 化 T1为 定 时 器 , 方 式 2,为 串 口 提 供 时 钟初 始 化 串 口 , 方 式 1RI清 0, 接 收 地 址 数 据查 询 方 式 接 收 数 据 , RI为 1?从 接 收 到 的 地 址 数 据 确 定左 屏 还 是 右 屏比 较 地 址 是 否 相 同 ?置 485芯 片 接 收 脚 为 低 电 平 ,允 许 接 收等 待 接 收 32*个 数 据(

12、 1个 数 据 发 次 )数 据 后 加 上 左 屏 或 右 屏 标志 并 通 过 P1口 发 给 从 片集 中 器 数 据 转 发 模 块 主 片主 程 序 流 程 图YYN N5.1.2 从片主程序流程图开 始初 始 化 P口初 始 化 T1, 方 式 2初 始 化 串 口 , 允 许 接 收允 许 外 部 中 断 , 下 调 沿 触 发收 到 规 定 个 数 数 据 ?调 向 显 示 终 端 模 块 发 数 据 子 函 数集 中 器 数 据 转 发 模 块 从 片主 程 序 流 程 图从片采用外部中断方式响应接收主片通过 P1 口传来的数据,当收到规定 97 个字节数据(32*3 个数据

13、+1 个左右屏标志)后,调用向显示终端模块发数据子函数。从片向显示终端模块发送数据包格式为:显示终端模块地址+ 32*3 个字节 BCD 码数据其中,显示终端模块地址中前 4 位包含了左右屏标志:C 为左屏,E 为右屏5.1.3 从片中断子程序流程图中 断 入 口存 放 规 定 数 据 个 数 单 元 内 容 减 1该 单 元 重 新 赋 初 值是 否 减 到 0?最 后 一 个 数 据 是 否 CH?为 右 屏 , 左 右 屏 标 志 置 1为 左 屏 , 左 右 屏标 志 置 1中 断 返 回 最 后 一 个 数 据 是 否 AH?Y YN N左 右 屏 标 志数 据 错 误收 到 的 所

14、 有 96个 数据 全 部 赋 ABH集 中 器 数 据 转 发 模 块 从 片INT0中 断 子 程 序 流 程 图若左右屏标志错误,则收到数据全部赋 ABH,显示终端模块收到后显示“” 。表明数据出错。5.2 显示终端模块程序流程图5.2.1 显示终端模块主程序流程图 开 始初 始 化 P口初 始 化 T1, 方 式 2初 始 化 串 口 方 式 3, 允 许 接 收从 存 储 单 元 A取 BCD码 数 据 , 转 换 成LED显 示 字 符 , 存 放 到 显 示 缓 存 单 元 B从 拨 码 开 关 取 硬 件 地 址 , 转 换 成 显 示 字符 , 放 到 显 示 缓 存 单 元

15、 B调 用 LED显 示 子 函 数 显 示 本 模 块地 址 编 号 , 时 间 约 2秒调 用 LED显 示 子 函 数 显 示 数 据显 示 终 端 主 程 序 流 程 图5.2.2 显示终端模块串口接收中断程序流程图中 断 入 口清 接 收 中 断 标 志接 收 的 是 本 模 块 单 元 地 址 ?SM2为 低 , 允 许 接 受 数 据禁 止 串 口 中 断 , 后 面 的 数据 采 用 查 询 方 式 接 收接 收 一 组 屏 2个 字 节 数 据 ,每 个 数 据 3遍 , 共 6个 字 节左 屏 ?N NYY存 放 数 据 的 单 元 起 始 地 址 赋 #50H存 放 数 据 的 单 元起 始 地 址 赋 #60H重 新 打 开 串 口 中 断 ES3取 2法 检 查 数 据 是 否 正 确 ?YN收 到 的 两 个 字 节全 部 赋 FH调 子 程 序 判 断 数 据 是 否 BCD码 ?YN中 断 返 回显 示 终 端 串 口 接 收 中 断 程 序 流 程 图

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报