首页 > 其他分享 >STC51 STC15开发工控网关-工控主机-附录A-软件设计

STC51 STC15开发工控网关-工控主机-附录A-软件设计

时间:2023-01-23 16:44:16浏览次数:44  
标签:缓存 STC15 工控网 uint8 gg extern BYTE main 工控

1)软件架构设计

2)数据结构设计

数据缓存,包含接收和发送缓存,接收到最后一个字符的控制器运行时间,用来做字符间超时来判断一个报文是否接收完成

typedef struct _tagRecDataPack{
        uint32 _recSec;         // 数据接收到的秒
        uint16 _recMSec;        // 数据接收到的毫秒
        uint8 _pBufRead[256];
        uint8 _pBufSend[256];
        uint8 _iReadedLen;
        uint8 _isReadFullPack;
        uint8 _iByteWantSend;
}RecDataPack;

 

数据配置存储在EEPROM里面,设计了EEPROMdata结构来存储

 

typedef struct _eepromdata 
{
    BYTE slaveraddr;         // 从站地址
    
    BYTE baud_1;            // 0:9600; 1:1200; 2:2400;    3:4800; 4:9600; 5:19200; 6:38400; 7:57600; 8:115200
    BYTE check_1;             // 0,1,2,3,4 0:none, 1:odd,2:evt,3:0,4:1                                                
    BYTE databit_1;            // 5,7,8      
    BYTE stopbit_1;            // 0->1; 1->1.5; 2->2
    BYTE baud_2;            // 0:9600; 1:1200; 2:2400;    3:4800; 4:9600; 5:19200; 6:38400; 7:57600; 8:115200
    BYTE check_2;             // 0,1,2,3,4 0:none, 1:odd,2:evt,3:0,4:1
    BYTE stopbit_2;            // 0->1; 1->1.5; 2->2                                                    
    BYTE databit_2;            // 5,7,8                     
    BYTE baud_3;
    BYTE check_3;             // 0,1,2,3,4 0:none, 1:odd,2:evt,3:0,4:1
    BYTE stopbit_3;            // 0->1; 1->1.5; 2->2                                                    
    BYTE databit_3;            // 5,7,8                     
    BYTE baud_4;
    BYTE check_4;             // 0,1,2,3,4 0:none, 1:odd,2:evt,3:0,4:1
    BYTE stopbit_4;            // 0->1; 1->1.5; 2->2                                                    
    BYTE databit_4;            // 5,7,8                                         
}EPPROOMData;

 

 

extern RecDataPack gg_pRecPacksCom1;    // 全局的读取发送缓存,在main模块初始化
extern RecDataPack gg_pRecPacksCom2;    // 全局的读取发送缓存,在main模块初始化
extern RecDataPack gg_pRecPacksCom3;    // 全局的读取发送缓存,在main模块初始化
extern RecDataPack gg_pRecPacksCom4;    // 全局的读取发送缓存,在main模块初始化
extern EPPROOMData gg_eeproom;            // 全局的配置函数,在main模块里面初始化
extern uint8 gg_CmdMap[];                // 全局命令对象数组,使用查表扫描法来做,操作只会置位1,main函数执行
#endif

 

标签:缓存,STC15,工控网,uint8,gg,extern,BYTE,main,工控
From: https://www.cnblogs.com/gwwdq/p/17065284.html

相关文章

  • 工控小工具 snmp 、opc ua 、modbus 、tcp、bacnet 开发环境Net6.0
    下载地址https://files.cnblogs.com/files/blogs/745639/net6.0-windows.rar?t=1674114312             ......
  • 工控协议网关漏洞挖掘与攻击
    ​本文系原创转载请说明出处:信安科研人pleasesubscribemyofficialwechat:信安科研人获取更多安全资讯 原文:IndustrialProtocolGatewaysUnderAnalysis〇摘......
  • STC15 MCU 串口编程 proteus 仿真 SDCC51
    1.STC单片机接口比传统的51单片机多得多,学起来更有意思。据说这种单片机得实际使用也很多,价格便宜,可以用来DIY。2.KEIL是比较流行的编程工具,有点大,还需要license之类的,对......
  • 什么是工控主板?工控主板和商业主板的区别有哪些?
    在我们的生活中,时常会听到工控主板和商业主板两个词,但是你们知道工控主板和商业主板有哪些区别吗?两者是怎么选择的?为什么工控主板的价格比商业主板价格高?下面跟随沐渥科技一......
  • WPF工控组态软件之温度计
    WPF以其丰富灵活的控件样式设计,相较于WinForm而言,一直是工控组态软件的宠儿。经过前两文章的学习,已经对WPF开发工控组态软件有了一个基本的了解,今天继续学习温度计的开发,......
  • 4G安卓工控触摸主板
    4G安卓工控触摸主板主板采用了联发科MT6761四核处理器,其CPU采用Cortex-A53构架设计,频率高达2.0GHz,GPU为ARMMali-G71。4G安卓工控触摸主板为一个完整的最小系统板,支持运行An......
  • 记一次 .NET 某工控MES程序 崩溃分析
    一:背景1.讲故事前几天有位朋友找到我,说他的程序出现了偶发性崩溃,已经抓到了dump文件,Windows事件日志显示的崩溃点在clr.dll中,让我帮忙看下是怎么回事,那到底怎么回事呢?......
  • c#winform工作流程图 GDI+连线 原生代码不使用任何插件 流程图、思维导图、顺序流程图
    支持节点流向、逆流支持更改节点颜色支持更改节点大小支持节点指向多个节点支持导出json文件支持导入json文件支持一键清空支持拓展到其他项目的二次开发支持选中......
  • 基于STC15的15路热电偶温度测量
    概述本设计利用K型热电偶完成了十五路热电偶巡检测温与定点测温,由于K型热电偶的特性使得系统测温范围可以从0~1000℃,并可以将温度通过LCD可视化展示,设置温度报警阈值,温度......
  • 关于如何使没有外置网卡的工控机等电脑获取外网
    "终于有空写博客了555"首先,在没有外置网卡等环境的前提下,一般手里都会有一台可以通过wifi连接外网的笔记本,通过设置wifi,即笔记本电脑上的wifi适配器,打开设置属性里的共享,......