nnhy
|
d3962ae404
|
|
2016-06-03 17:37:30 +00:00 |
nnhy
|
f3a4b0b65b
|
使用列表重构Tasks,测试通过
|
2016-06-03 17:00:22 +00:00 |
Stone
|
921f0553e1
|
使用cstring替代const char*
|
2016-06-02 12:10:54 +00:00 |
WangQiang
|
85409cb90e
|
include问题
|
2016-05-31 08:26:07 +00:00 |
nnhy
|
3d0f6a75bb
|
统一DateTime::Now()表示当前时间
|
2016-05-28 08:26:30 +00:00 |
nnhy
|
d1f6245d9b
|
所有NULL更换为nullptr,GCC要求更严格。
Sys.h头文件不再包含string.h,禁止SmartOS除了Type和String以外的地方使用内存管理函数
|
2016-03-14 04:28:04 +00:00 |
nnhy
|
11ec1084fd
|
ulong => UInt64
_REV/_REV16 独立汇编实现,不依赖固件库
|
2016-03-07 10:46:10 +00:00 |
nnhy
|
ecd4c2f2a4
|
其实默认最大深度为1,已经禁止所有任务重入,需要重入的任务得专门设置
|
2016-01-11 11:55:15 +00:00 |
nnhy
|
a2c8533464
|
事件型任务和一次性任务,禁止重入
|
2016-01-11 11:53:47 +00:00 |
nnhy
|
bf98a6682f
|
取消宏定义string,统一使用字符指针char*,string为C++标准字符串类库让路。
经过测试,在容量较大的芯片上可以使用string,仅使用+=功能,RTM版本固件增加了大概18k。
|
2015-12-30 08:51:47 +00:00 |
Stone
|
bdac393ac4
|
整理代码,删除不再使用的调试代码和日志
|
2015-12-29 04:36:22 +00:00 |
nnhy
|
999369a6b2
|
F1不需要分散加载,那是130才有的问题,需要把重点代码放到系统最前面
|
2015-12-05 09:06:48 +00:00 |
nnhy
|
20a151c81c
|
预分配任务内存,避免频繁堆分配
|
2015-12-04 11:26:35 +00:00 |
nnhy
|
49b544c8b1
|
只有最大时间调用时,才允许间隙休息
|
2015-11-27 04:00:39 +00:00 |
nnhy
|
900bc5549c
|
修正任务释放导致死机的BUG,网关C测试通过
|
2015-11-13 13:48:18 +00:00 |
nnhy
|
94cea1c36a
|
!!增加函数跟踪栈,进入函数时压栈函数名,离开时弹出。便于异常时获取主线程调用列表
|
2015-11-13 13:34:36 +00:00 |
nnhy
|
5555bb67fe
|
任务模块在网关上有野指针出现,增加日志抓BUG,未完成
|
2015-11-09 04:16:30 +00:00 |
nnhy
|
59baca7be6
|
增加获取系统启动时间的Sys.Ms(),等同于Time.Current(),但是无需再引用Time.h
|
2015-11-03 08:52:31 +00:00 |
nnhy
|
199e7bc64f
|
兼顾TINY
|
2015-11-02 03:55:42 +00:00 |
nnhy
|
93694ee36f
|
采用数组重构任务列表
|
2015-11-01 07:16:18 +00:00 |
nnhy
|
b3565c8119
|
调试统计函数不要参与发行版编译
|
2015-10-30 04:52:33 +00:00 |
nnhy
|
c26f493650
|
!!!核心数组Array降为非模版,新增模版数组TArray,网关C测试通过。
这次修改影响整个系统每一个细节,各个地方要及时跟进
|
2015-10-30 04:36:18 +00:00 |
nnhy
|
3e7d816383
|
计算任务执行的平均毫秒数,用于中途调度其它任务,避免一个任务执行时间过长而堵塞其它任务
|
2015-10-29 08:13:30 +00:00 |
nnhy
|
ae4b2c7171
|
指定了代码段的类,所包含的函数一定被编译进入发行版固件,不管有没有引用
|
2015-10-28 13:55:23 +00:00 |
nnhy
|
6b966abe59
|
通过分散加载文件,把核心代码提升到前面去
|
2015-10-28 09:33:12 +00:00 |
nnhy
|
f023707ae8
|
设置任务的开关状态,同时运行指定任务最近一次调度的时间,0表示马上调度
|
2015-10-27 08:13:02 +00:00 |
nnhy
|
92d1bcfc51
|
任务状态列表
|
2015-10-22 11:10:57 +00:00 |
nnhy
|
7116f2a986
|
精简不再使用的功能
|
2015-10-22 01:25:29 +00:00 |
nnhy
|
b93b272a4e
|
没有收到数据时,需要给缓冲区置零,否则系统逻辑会混乱
|
2015-10-08 03:03:05 +00:00 |
nnhy
|
414b1dfdaf
|
优化串口接收中断处理的性能
|
2015-10-05 14:56:31 +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
|
e208ce88e2
|
修正_Tasks没有初始化的问题,在Keil项目的RAM配置页勾选noinit后发现问题所在
|
2015-09-23 10:11:46 +00:00 |
nnhy
|
a6c27954d9
|
|
2015-09-19 09:58:00 +00:00 |
nnhy
|
1712f779cc
|
使用数组接管任务队列,避免大量堆分配,测试通过
|
2015-09-19 09:41:18 +00:00 |
nnhy
|
547e0759fd
|
调整写法,消灭任务调度的全局变量,编译通过,未测试
|
2015-08-22 06:26:46 +00:00 |
nnhy
|
90aba92a9b
|
事件型任务运行指定下一次执行时间,便于连续改变任务执行时间
|
2015-08-18 11:03:37 +00:00 |
nnhy
|
430c2de2c6
|
每次上电打开RTC之前,都需要选择好LSI/LSE,否则会死循环等待。
设置报警时间时,不能清零后重新设置ms,还是老办法在原来基础上相加才有效。
Sleep时,判断RTC是否开启了低功耗
|
2015-08-13 05:08:14 +00:00 |
nnhy
|
76d8b7ff17
|
重构系统时钟架构,RTC独立,编译通过,未测试
|
2015-08-12 14:33:05 +00:00 |
nnhy
|
2312baeb7f
|
修正类型转换的警告
|
2015-08-06 09:13:17 +00:00 |
nnhy
|
ac31c30469
|
C++里面,long和int是相同的,64位长整型要用longlong
|
2015-08-06 08:30:35 +00:00 |
nnhy
|
fad7d6c776
|
注意类型转换
|
2015-08-06 07:55:29 +00:00 |
nnhy
|
72c8b88120
|
如果事件型任务还需要执行,那么就不要做任何等待
测试通过
|
2015-08-05 16:31:29 +00:00 |
nnhy
|
d6707ef77b
|
修改Time.Sleep,让它在死循环等待时,可根据外部条件退出。
修改Task调度,让它可中断正在死循环的Sleep,马上进行下一回合任务调度
|
2015-08-05 15:17:33 +00:00 |
nnhy
|
227c1c3f99
|
串口波特率默认值改为1024000,测试通过。
收发缓冲区默认大小64足够,串口1024000下测试通过
|
2015-08-05 14:46:39 +00:00 |
nnhy
|
7eaaf7bd59
|
任务调度支持最大深度。默认1层,不允许重入
|
2015-08-05 05:37:32 +00:00 |
nnhy
|
079b376d53
|
如果是事件型任务,这里禁用。任务中可以重新启用
如果还有数据,打开任务
测试通过
|
2015-08-05 05:10:50 +00:00 |
nnhy
|
00f2b240bb
|
注意Execute内部可能已经释放了任务
|
2015-08-05 04:40:09 +00:00 |
nnhy
|
2c6e768654
|
升级任务调度器,支持创建事件型任务
|
2015-08-05 04:39:24 +00:00 |
nnhy
|
6a8c3da4d4
|
系统时钟虽然很重要,但是并非所有系统都需要用到系统时钟
|
2015-07-28 15:18:15 +00:00 |