Commit Graph

202 Commits

Author SHA1 Message Date
WangQiang 0fcd1c6b18 Sys.Reset() Sys.ResetAsync() 统一为 Sys.Reboot(int Delayms = 0); 2016-09-05 01:25:14 +00:00
Stone 078da19f55 去掉检测指针有效范围的宏定义 2016-07-02 08:26:20 +00:00
Stone 30b952a49e 30秒内发过数据,不再发送心跳 2016-07-01 02:23:33 +00:00
Stone 33e387f863 系统内核Time.h改名为TTime.h,否则在gcc和clang上会跟C库的time.h冲突。
同时,MDK不支持<ctime>的引用方式,用宏解决
2016-06-22 09:50:16 +00:00
Stone 46bbdb9557 在控制器中使用Delegat2委托 2016-06-20 02:54:05 +00:00
Stone cb18316376 严格要求代码,排除编译警告 2016-06-18 07:16:31 +00:00
Stone e9ca9b3370 Sys不要引用复杂类 2016-06-14 13:05:27 +00:00
nnhy 74bb6e7bfb 委托类进入核心目录 2016-05-28 09:02:35 +00:00
nnhy b0c7e1595c 集体修改断言 2016-03-18 01:48:17 +00:00
nnhy d005b00ce2 !!!开放Buffer的赋值运算符重载,意为拷贝内存和长度。
当左边长度不足时,调试版断言失败,发行版截断拷贝
2016-03-17 14:14:45 +00:00
nnhy 7c420049ad Buffer自我拷贝时,只设置长度,然后直接返回长度,代表已拷贝。
令牌配置和微网配置需要在Load之后重新设置扩展属性的长度,ByteArray需要保存之前把长度读取出来。
2016-03-17 11:39:20 +00:00
nnhy d1f6245d9b 所有NULL更换为nullptr,GCC要求更严格。
Sys.h头文件不再包含string.h,禁止SmartOS除了Type和String以外的地方使用内存管理函数
2016-03-14 04:28:04 +00:00
nnhy bdfd8e6273 Array => Buffer 2016-03-11 13:03:38 +00:00
nnhy d710c33435 Buffer的赋值构造函数,不明确要不要拷贝长度,无法解释用法,暂时注释 2016-03-11 12:34:46 +00:00
nnhy 386abf4161 2016-03-07 03:42:18 +00:00
nnhy b72139033f 内存缓冲区Buffer作为最基础的内存数据包,只包含指针和长度!
Array作为变长内存数据包,可扩大
ByteArray直接继承自Array,脱离模板TArray
2016-03-06 11:01:01 +00:00
WangQiang 097f684b3f 支持异步上传多个字节 2016-02-29 07:39:01 +00:00
nnhy 927bac9a0c 常量化Sys和Time,避免各个模块不小心错误修改 2016-01-23 09:22:09 +00:00
cdyong d35899cd2c 所有都提交 2016-01-21 06:43:31 +00:00
nnhy 0a2722b93e 修正组网成功重启后仍然以5秒间隔心跳的BUG 2016-01-19 07:10:35 +00:00
nnhy 297c2f16fb 2016-01-18 16:08:40 +00:00
nnhy 2301e9bf16 组网是5秒间隔,组网完成以后才调整为20秒心跳 2016-01-18 15:46:39 +00:00
nnhy 90092ff0b7 设备超时连不上服务器以后,也不能重新组网,否则可能跑到别的网关那里去。
必须手工清除才能重新组网。
2016-01-15 07:10:56 +00:00
cdyong 8996ac2e60 注释掉线清除配置功能 2016-01-13 11:02:28 +00:00
nnhy 9da4aa12f7 增加配置基类ConfigBase,统一微网配置和令牌配置 2016-01-12 10:10:15 +00:00
cdyong 3e82ca888c 大于5倍最后活跃线时间,自动重新组网 2016-01-05 06:23:19 +00:00
cdyong 0744ccfbe5 配置区写完后要重启 2016-01-02 07:52:21 +00:00
nnhy 3a3d4d1035 写入指令以后,为了避免写入响应丢失,缩短心跳间隔 2015-12-30 12:44:23 +00:00
cdyong 6d946e18e7 20s一心跳 2015-12-30 06:14:24 +00:00
Stone 08a96fcacc 两个方向的退网逻辑整理完成,编译通过,未测试 2015-12-29 05:09:25 +00:00
Stone 7a18688e8a 网关不需要重置节点通信密码,直接逼他退网然后重新组网即可 2015-12-29 04:57:42 +00:00
Stone acce2327e7 组网版本不是系统版本,而是为了做新旧版本组网消息兼容的版本号 2015-12-29 04:53:31 +00:00
Stone 5aba71562b 整理代码,删除不再使用的调试代码和日志 2015-12-29 04:48:02 +00:00
Stone 38d5d3aba6 心跳指令默认从0偏移开始同步数据,所以会出现两个长度 2015-12-29 04:21:34 +00:00
cdyong 0860bb8367 2015-12-29 03:54:33 +00:00
nnhy bc1a3086fa 在主机响应给节点之前,不要修改读写指令码,否则会导致请求响应不匹配,节点重发发送请求 2015-12-21 05:25:31 +00:00
nnhy ca69c35a8b 各种主动上报方式,都采用发送写入请求 2015-12-21 04:44:05 +00:00
nnhy a5a50a95e3 写入数据区以后,再拷贝数据区,而不是拷贝来源数据 2015-12-21 03:42:32 +00:00
nnhy 7de8ea99b5 1,节点写入响应携带数据
2,主机收到节点写入响应获取携带数据,更新缓存
3,主机收到远程写入请求不操作本地缓存,直接转发给节点,由节点响应来作为应答远程请求的响应
4,主机收到远程读取请求,每5秒转发一次给节点,此时不会从缓存拿数据做响应,其它时候直接从缓存拿数据做响应,不转发指令
5,节点主动上报由读取响应改为写入请求,为了获得微网重发机制支持,确保上报成功
2015-12-21 03:29:10 +00:00
nnhy 7473ffe4bf 微网服务端使用数据指令,编译通过,测试未通过 2015-12-19 07:33:08 +00:00
nnhy d5316786c7 重构数据消息,编译通过,未测试 2015-12-19 07:17:04 +00:00
cdyong 68f20d2cb7 删除不必要的日志输出 2015-12-19 07:02:32 +00:00
nnhy 5886601cb4 数据操作不能直接拷贝给字节数组,而必须拷贝给数据区,否则各种钩子无效 2015-12-18 16:07:53 +00:00
nnhy bf804bdc78 拆分数据操作 2015-12-18 15:54:51 +00:00
nnhy 14807f341c 重构客户端读写数据操作,编译通过,未测试 2015-12-18 15:43:08 +00:00
cdyong 2a956006d9 重新组网是擦除配置区再去组 2015-12-18 13:43:46 +00:00
cdyong 8b2c3efbe8 2015-12-18 13:07:48 +00:00
cdyong f10bc14b98 网关地址也要设置为0 2015-12-18 11:07:27 +00:00
nnhy 0f00e25394 组网以后重启一次 2015-12-16 15:25:50 +00:00
nnhy d246b8059a 节点启动时使用保存的网关MAC作为远程地址,如果超过1分钟未能心跳成功,则节点抹去远程地址再重启 2015-12-16 14:34:03 +00:00