Commit Graph

125 Commits

Author SHA1 Message Date
大石头 00dba87ad6 v4.0.2017.0905 物联协议Link取代令牌协议,网络优先,Json优先 2017-09-05 22:12:57 +08:00
大石头 2a374f6004 !!!热存储区恰巧使用了系统堆栈避开的64字节,当数据区大于一定字节数时,就会导致热存储区末端超出内存RAM边界,从而导致崩溃。
暂时把它改为256字节,尚未找到一劳永逸的解决办法。
2017-07-09 09:33:40 +08:00
大石头 15e00e6d0b Sys头增加应用版本、硬件版本、产品批次、启动次数、热启动次数等 2017-04-06 16:31:24 +08:00
大石头 fa93b4a1da 高精度记录过零检测零点位置 2017-03-23 10:39:04 +08:00
大石头 3e20321e7b 进一步完善编译时间和短日期等信息 2017-03-22 16:44:43 +08:00
大石头 6739d23dfd 显示软硬件版本和产品批次等详细信息 2017-03-21 18:03:00 +08:00
大石头 50ece19701 当前函数耗时1~3us 2017-03-16 23:21:46 +08:00
大石头 da5c2f0d43 修正Time.Delay精度 2017-03-16 22:58:45 +08:00
大石头 52b1f1a313 修正Time.Delay精度 2017-03-16 22:53:57 +08:00
大石头 371d4e3866 修正当前时间显示错误 2017-03-16 20:14:16 +08:00
大石头 8fa67ec04f 增加跟踪栈层数为64层 2017-03-16 20:03:54 +08:00
大石头 a093f8d7a0 系统版本信息从宏定义获取编译环境信息,
编译脚本加入编译信息宏定义
2017-03-15 01:52:39 +08:00
大石头 63b75a307c TraceStack的构造和析构不平衡,导致TS_Len异常,从而出现野指针非法修改堆地址。
TS_Len不平衡变成了-1,_TS位于0x2000023c,赋值就变成了向0x20000238赋值,而g_Heap是0x20000228,238正是它的_First字段。故导致_First字段被错误修改。
2017-03-14 15:56:24 +08:00
大石头X2 017035f573 等待句柄增加所在任务ID以及用户对象,便于业务层跨任务传递数据 2017-03-08 11:00:30 +08:00
大石头X2 e0b06839f0 减少堆管理的调试日志 2017-03-07 16:57:19 +08:00
大石头X2 ce907e827b 在GD32F103VE上,按下PE13,有5%左右几率触发PE14的弹起中断,需要过滤。
准备更换STM32F103VE确认是否还存在该问题。
输入队列效果并不是很理想,按键事件代码执行很快,平均300us多,队列绝大多数时候只有一项,偶尔两项,极少出现三项。
修正抖动逻辑,不管是10还是01,一律延迟抖动时间再执行任务,再次期间,太近的中断可以取消当前和上一次。
2017-03-07 12:21:25 +08:00
大石头X2 0dad3490a3 堆管理调试日志 2017-03-03 19:31:52 +08:00
大石头X2 cf0a6fe21b 修正堆空间不够时产生的连锁错误 2017-03-02 12:08:04 +08:00
大石头X2 1eff827d45 标准化指针符号 2017-03-01 02:57:55 +08:00
大石头X2 35ce646728 修正整数比较的编译警告 2017-02-28 20:57:53 +08:00
大石头X2 1d6498c866 优先使用int替换为uint,方便运算,能够准确识别产生的负数。
GCC/VC编译通过,MDK编译Port/I2C失败
2017-02-28 14:57:07 +08:00
大石头X2 226f837205 优先使用int替换为uint,方便运算,能够准确识别产生的负数。 2017-02-28 14:21:30 +08:00
大石头X2 fc216e5f69 基础类库和系统内核尽可能的使用int替代uint,方便计算,避免溢出了也不知道。 2017-02-27 18:36:07 +08:00
大石头X2 3f2747222c 修正vc++编译时的各种警告,主要是有符号数和无符号数比较 2017-02-27 17:23:57 +08:00
大石头 fb5f43c4d2 修正编译警告,未使用变量 2017-02-26 12:58:15 +08:00
大石头X2 3fada9a2c5 记录第一个有空闲内存的块,减少内存分配时的查找次数。
测试通过
2017-02-25 16:10:23 +08:00
大石头X2 f26089762e 显示任务状态,同时显示堆状态。 2017-02-25 15:15:01 +08:00
大石头X2 4d8d16972f 修正堆释放后Used计算错误,不能用下一块指针减去当前指针,因为最后一块可能没有用完 2017-02-25 15:14:52 +08:00
大石头X2 258835798e 加入分配失败的日志 2017-02-22 19:43:11 +08:00
大石头X2 63cce80167 任务调度增加进入睡眠以及退出睡眠的委托,以方便移植到RTOS上 2017-02-22 11:36:03 +08:00
大石头X2 de2db57d4d 使用有符号整数比较,便于判断堆溢出 2017-02-20 23:25:04 +08:00
大石头X2 cbec1ec867 GD32F1x0编译脚本独立,它的重要函数必须放在开头 2017-02-19 17:37:17 +08:00
大石头X2 5ba7b93999 修改中断向量表参数数组名称,避免全局冲突 2017-02-18 20:32:24 +08:00
大石头X2 fd612d1054 中断向量表由平台实现,减少核心系统对芯片的依赖 2017-02-18 12:17:12 +08:00
大石头X2 d7ff86fc37 系统关键性代码链接到固件开头,主要规避GD32F130C8后32k特别慢的问题 2017-02-18 10:57:55 +08:00
大石头 fa329294f1 绝对路径引用Sys.h,避免与lwip冲突 2017-02-15 20:02:29 +08:00
大石头X2 211a1df77a 分段统计负载均值 2017-02-15 14:22:07 +08:00
大石头X2 ff1cdc62f0 必须转为cstring,否则会当作缓冲区,并把最后一个字符清零。当作缓冲区,长度加一也可以 2017-02-14 16:05:50 +08:00
大石头X2 1a87e709f4 系统启动后才能使用格式化输出 2017-02-14 12:04:50 +08:00
大石头X2 0ee1dae747 日志输出增加一层输出,以实现嵌套任务缩进输出 2017-02-14 11:20:24 +08:00
大石头X2 d4206d9b56 统计调度大循环的最大耗时变得没有意义,因为它会把子任务的时间一起算进去 2017-02-11 09:06:36 +08:00
大石头X2 d411fae0a4 任务调度增加嵌套深度,默认最深8层。
嵌套任务输出任务日志时增加缩进
2017-02-10 16:19:45 +08:00
cdy 3b3ecc951b 算多了两天 2017-01-11 10:47:19 +08:00
cdy 79fa10f18e 先注释调低功耗管理(与业务逻辑不符),版本好提升到20171/11 2017-01-11 10:44:45 +08:00
大石头X2 802b9bc153 临时开启时需要跳过最近一轮休眠,跳过以后需要关闭开关,否则会导致一直跳过休眠 2017-01-06 15:09:28 +08:00
大石头X2 86fbdef4bd 负载由百分比改为万分比,平均负载42/10000 2016-12-29 00:03:09 +08:00
大石头X2 a6f14651b4 增加系统负载统计 2016-12-28 18:07:22 +08:00
大石头X2 f2dee255c1 改进电源管理,系统空闲时自动进入低功耗睡眠 2016-12-28 16:54:48 +08:00
大石头X2 3e6c3942cf 细化时钟滴答与微秒的转换,RTL8710AF里面不能整除 2016-12-24 10:23:19 +08:00
大石头X2 e479ffe4d3 内存管理作为移植代码提供 2016-12-23 19:08:02 +08:00