TNeo
v1.06
|
TNeo changelog
Release date: 2015-01-02.
TN_STACK_OVERFLOW_CHECK
for details.struct TN_TaskTiming
for details.TN_OLD_EVENT_API
for details.TN_EVENTGRP_WMODE_AUTOCLR
flag which allows to clear event bits atomically when task successfully finishes waiting for these event bits.Added run-time check which ensures that build-time options for the kernel match ones for the application. For details, refer to the option TN_CHECK_BUILD_CFG
. Note: in your existing project that uses TNeo as a separate library, you need either:
<tneo_path>/src/tn_app_check.c
to the application project (recommended);tn_cfg.h
file, set TN_CHECK_BUILD_CFG
to 0
and rebuild the kernel with the new configuration (not recommended).But if you build TNeo together with the application, this option is useless, so then just set TN_CHECK_BUILD_CFG
to 0
.
lib_project
directory. If you use these library projects from the repository directly in your application, you need to modify path to the library project in your application project.Release date: 2014-11-04.
NULL
, BOOL
, TRUE
, FALSE
now have the TN_
prefix: TN_NULL
, TN_BOOL
, TN_TRUE
, TN_FALSE
. This is because non-prefixed symbols may be defined by some other program module, which leads to conflicts. The easiest and robust way is to add unique prefix.tneo.X
to tneo_pic32.X
.tn_soft_isr()
-> tn_p32_soft_isr()
, tn_srs_isr()
-> tn_p32_srs_isr()
. It is much easier to maintain documentation for different macros if they have different names; more, the signature of these macros is architecture-dependent. Old names are also available for backward compatibility.Release date: 2014-10-20.
examples/queue_eventgrp_conn
.tn_p32_soft_isr()
or tn_p32_srs_isr()
: interrupts can be defined with standard way too: this particular ISR will use task's stack instead of interrupt stack, therefore it takes much more RAM and works a bit faster. There are no additional constraints on ISR defined without kernel-provided macro: in either ISR, you can call the same set of kernel services. Refer to the page Interrupts for details.TN_PRIORITIES_CNT
.examples/queue
that demonstrates the pattern on how to use queue together with fixed memory pool effectively.Release date: 2014-10-14.
tn_sys_time_set()
function, because now TNeo uses internal system tick count for timers, and modifying system tick counter by user is a really bad idea.Release date: 2014-10-09.
tn_queue_receive()
and tn_fmem_get()
: if non-zero timeout
is in effect, then TN_RC_TIMEOUT
is returned, but user-provided pointer is altered anyway (some garbage data is written there). This bug was inherited from TNKernel.tn_task_state_get()
tn_sem_acquire()
and friends are renamed to tn_sem_wait()
and friends. More on this read here. Old name is still available through tn_oldsymbols.h
.Release date: 2014-10-01.