物联网网关程序设计-3

设计好device基类之后,即可在此基础上构建不同的设备类

已MODEBUS设备为例:

可以定义如下设备 类

class ModbusDevice : public core::Device {

    public:
        ModbusDevice();

void init(const ModbusMaster::Ptr &master, int32_t addr);

[[nodiscard]] const int32_t &addr() const;

    protected:
        int32_t _addr{1};
        ModbusMaster::Ptr _modbus;
    };

    class ModbusMaster {

    public:
        using Ptr = std::shared_ptr;

    public:
        ModbusMaster(const std::string &port, int32_t baud, char parity, int32_t dataBits, int32_t stopBits);

        ModbusMaster(const std::string &ip, uint16_t port);
        
        ~ModbusMaster();

        void reconnect();
        void stop();
        
        bool readBits(int32_t nodeId, int32_t addr, int32_t count, std::vector &data);

本文章来源于互联网,如有侵权,请联系删除!原文地址:物联网网关程序设计-3

相关推荐: 物联网云平台设计与开发:springboot项目搭建与开发(后端)

目录 实验目的 实验内容 具体实验步骤  第一步:构建springboot项目 第二步:项目集成spring-web、Mysql驱动、Mybatis等框架。  第三步:安装Mysql软件,使用Navicat图形化界面创建用户表、字段等 第四步:生成的文件。  …