|
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.
1.8.8