Commit Graph

181 Commits

Author SHA1 Message Date
nnhy 7116f2a986 精简不再使用的功能 2015-10-22 01:25:29 +00:00
nnhy 74ea976b13 Sys不再提供显示字符串或字节数组的功能 2015-10-21 09:40:53 +00:00
nnhy 2d05ae979d 增加函数获取堆起始地址和栈顶地址 2015-10-21 08:28:20 +00:00
nnhy b44d94f6c8 372字节,不能再暴力了 2015-10-21 03:07:46 +00:00
nnhy 5b2d668cc7 精简TINY 2015-10-21 02:25:03 +00:00
nnhy c94e1eef0b 系统类增加静态内存大小,用于定位堆底位置 2015-10-15 04:39:29 +00:00
nnhy 4c7028306e 为GD32F130增加新的编译脚本,使用F0库和M3指令集 2015-10-09 08:03:00 +00:00
nnhy b14ff9cdd2 还是需要记录系统启动的状态,否则无法准确估计,导致Start之前的Sys.Sleep有问题 2015-10-08 12:05:06 +00:00
nnhy d273ac7589 精简Sys,编译通过,测试通过 2015-10-05 14:04:34 +00:00
nnhy 2ee5521bfa 系统时间,以毫秒作为基本精度
编译测试通过
2015-10-05 13:22:23 +00:00
nnhy dbd64c0fac 较大的Sys.Delay也需要进行时间任务调度,默认以50us作为边界 2015-10-05 12:36:35 +00:00
nnhy cf8855d6c9 任务系统调度时间单位改为ms,局部测试系统可工作,但是时间变慢 2015-10-05 11:40:05 +00:00
nnhy 0c090906ff !!!系统时钟升级,采用基本定时器计时,计时精度Current修改为毫秒,滴答定时器用于高精度微秒级延迟
编译通过,系统时钟测试可工作,系统各个使用Current的地方未修改
2015-10-05 10:43:28 +00:00
nnhy d631e0d3b4 闪烁端口
默认慢闪,Start后快闪一定时间,-1时间表示一直快闪,Stop停止
支持数据操作指令,参数为快闪毫秒数
2015-09-29 06:51:57 +00:00
nnhy e208ce88e2 修正_Tasks没有初始化的问题,在Keil项目的RAM配置页勾选noinit后发现问题所在 2015-09-23 10:11:46 +00:00
nnhy 01a373b941 !!!最新技能,一个编译单元,只要有任意一个函数被用到,那么这个单元内部所有静态数据都将会被分配内存,不管是全局静态还是函数内静态
拆分CRC,减少1k的Flash占用
2015-09-20 04:12:10 +00:00
nnhy 3a1798a8fd Array::SetAt扩容时需要备份数据 2015-09-16 13:10:22 +00:00
nnhy 3d2e5c89b9 重新整理读写代码,未测试 2015-09-09 08:15:49 +00:00
nnhy 4b1d56b077 优化Sys.RemoveTask,自动把ID清零 2015-09-07 09:07:58 +00:00
nnhy 9b6b1a07b7 调整串口Flush逻辑,系统异常时,强制刷出所有日志 2015-09-05 03:18:01 +00:00
nnhy 0c3697a20a 最小化SmartOS固件,点灯程序1.7k 2015-08-22 07:19:40 +00:00
nnhy 65d18e8727 Sys增加设定任务周期的方法 2015-08-22 06:37:53 +00:00
nnhy 547e0759fd 调整写法,消灭任务调度的全局变量,编译通过,未测试 2015-08-22 06:26:46 +00:00
nnhy 2e1ac656c1 干掉一个函数,节省0.15k 2015-08-22 03:49:51 +00:00
nnhy 4b9161c1e6 RTM编译时,不要编译调试信息,甚至调试字符串都不要参与编译,测试通过,固件减小12.4% 2015-08-19 09:53:47 +00:00
nnhy f372c5391b 主要三大对象的析构函数用不着 2015-08-19 02:49:55 +00:00
nnhy 90aba92a9b 事件型任务运行指定下一次执行时间,便于连续改变任务执行时间 2015-08-18 11:03:37 +00:00
nnhy d78cc3dc79 借助RVO优化系统当前时间的返回值 2015-08-12 13:31:55 +00:00
nnhy e199413977 修改版本号 2015-08-06 08:31:23 +00:00
nnhy ac31c30469 C++里面,long和int是相同的,64位长整型要用longlong 2015-08-06 08:30:35 +00:00
nnhy db11d10b82 v3.0.2015.0806 增强系统调度器,支持无阻塞多任务调度
GD32F103VE测试通过
2015-08-06 07:32:45 +00:00
nnhy d6707ef77b 修改Time.Sleep,让它在死循环等待时,可根据外部条件退出。
修改Task调度,让它可中断正在死循环的Sleep,马上进行下一回合任务调度
2015-08-05 15:17:33 +00:00
nnhy 576afb3a61 设置任务的开关状态,同时运行指定任务最近一次调度的时间,0表示马上调度 2015-08-05 06:57:28 +00:00
nnhy 2c6e768654 升级任务调度器,支持创建事件型任务 2015-08-05 04:39:24 +00:00
nnhy 6a8c3da4d4 系统时钟虽然很重要,但是并非所有系统都需要用到系统时钟 2015-07-28 15:18:15 +00:00
nnhy 7631d93ab6 系统启动之前,不要做高级任务调度 2015-07-24 07:50:13 +00:00
nnhy 5a7c3db684 为了确保至少被有效调度一次,需要在被调度任务内判断
修正Ping无法等待响应的Bug
2015-07-19 10:04:41 +00:00
nnhy d0e33af967 把系统时钟中断间隔设到最大,此举可能影响Thread的抢占式调度,网关C测试通过,未测试Thread 2015-07-18 02:45:28 +00:00
nnhy abbc3abcc0 逐步减少Time.Current的使用 2015-07-17 09:40:49 +00:00
nnhy 6b8f12b948 强化任务调度管理,为了精确统计任务时间做准备 2015-07-15 07:59:35 +00:00
Stone f8c9a16ce7 堆栈相互穿透,内存已用完!可能是堆分配或野指针带来了内存泄漏! 2015-07-10 08:55:56 +00:00
nnhy d34ea09d24 us=0 表示释放一下CPU 2015-06-23 07:38:36 +00:00
nnhy 45998472d6 增加任务禁用和启用,在暂时不需要调度任务时,可禁用 2015-06-23 03:11:13 +00:00
nnhy e26377529e 如果休眠时间足够长,允许多次调度其它任务 2015-06-23 02:31:36 +00:00
nnhy f4eb07bf34 睡眠时当前任务释放CPU,允许多次调度其它任务,基础测试通过 2015-06-23 02:26:27 +00:00
nnhy ca54039080 改进任务调度系统,未启动多线程的情况下,Sleep也能够调度其它任务 2015-06-18 12:55:56 +00:00
nnhy 1f8837f663 还是不能依赖Object来一次性初始化内存,因为某些类包含了别的类,在Init之前已经初始化了内部对象 2015-06-18 06:19:51 +00:00
nnhy b964fd0d52 Sys继承自Object,确保初始化清零 2015-06-16 17:57:44 +00:00
nnhy 74174ab346 准备构建C#类型体系,编译通过,未测试 2015-06-16 04:38:29 +00:00
nnhy 64be01fd50 增加令牌客户端编译通过,未完成
系统Sys增加设备代码Code
2015-06-15 10:16:49 +00:00