Technical Support
Support Resources
Product Information
|
Release Notes for ARTX-166
Advanced Real-Time Operating System for
the XC16x/C16x/ST10/Super10 Microcontroller Family
Download this Update
This file contains release notes and last minute changes.
Information in this file, the accompanying manuals, and software is
Copyright © Keil™, An ARM® Company.
All rights reserved.
Contents
- What's New in ARTX-166
- Technical Support
- Contact Details
What's New in ARTX-166
The following sections list the changes instituted in each release
of the ARTX-166 Advanced Real-Time Kernel.
AR166 Version 2.00 Release
- [Kernel]
Added new functions os_tsk_create_ex and os_tsk_create_user_ex
which allow you to pass a parameter to a task when it is created. This is
useful when a single task is started in multiple instances. Each instance
may receive a different parameter value.
- [Kernel]
Changed the tick timer setup in the configuration so that manual calculation
of the reload value is no longer required. Now, you must specify the counter
clock in Hz and the desired tick rate in milliseconds.
- [Kernel]
Fixed a core problem in the os_tmr_kill function. This function could fail
to kill a created user timer for far data and huge data memory models.
- [AR166]
Type definitions from the AR166.H header file have been changed to avoid
conflicts. New types are: U8, U16, U32, S8, S16, S32, BIT, BOOL, __TRUE, and __FALSE.
New types have replaced old types: BYTE, WORD, DWORD, TRUE, and FALSE. Source files
and documentation have been updated to reflect those changes.
NOTE: Old versions of AR166_CONFIG.C configuration
file are not compatible with this version of ARTX-166 and must be replaced.
- [TcpNet]
Added a new ARP cache control function arp_cache_ip. This routine may be
used to resolve the remote MAC address before the first UDP data packet is sent
to a target system. Previously, if the remote MAC address was not resolved from
the ARP cache, sending UDP data packets failed and packets were lost until the ARP
entry was cached.
- [TcpNet]
Removed word access optimization macros from all functions where the user has
provided an IP address. When the user-provided IP address was not word-aligned,
a Class-B trap was generated.
- [TcpNet]
Corrected a problem in the ARP module which transmitted invalid IP addresses
for ARP requests. This could occur when ARP cache entries were refreshed or
an ARP request was retransmitted.
- [Flash File System]
Added a new file maintenance function fcheck that may be used to check
the Flash File System consistency. If the check fails, Flash File System requires
formatting.
- [TcpNet]
Added a check to the TCP module for destination IP address 0.0.0.0. TCP connect
requests to this address are now blocked by the TCP module. This prevents sending
ARP requests for IP address 0.0.0.0.
- [TcpNet]
Added an example for the HTTP Server. The existing example HTTP_demo was
upgraded to work in either of two modes:
- A standalone application.
- HTTP Server running with ARTX Kernel.
- [TcpNet]
Renamed library functions MemCpy, MemSet, MemCmp and
StrCpy to avoid confusion with the standard C string functions. New
function names are: mem_copy, mem_set, mem_comp, and str_copy.
AR166 Version 1.20 Release
- [Kernel]
Corrected a core problem of invalid delays when frequent isr_...
functions were called from interrupt routines. This problem could cause
shorter delays than specified for os_dly_wait, os_itv_wait,
and other system delay and timeout routines.
- [Kernel]
Corrected a problem in the os_mbx_wait and os_sem_wait functions
when they were called with the timeout parameter set to 0 (which is
used to fetch a message or obtain a token from a semaphore without waiting).
In such cases, the functions returned incorrect result values.
- [Kernel]
Added a Semaphore example which shows how to use a shared resource
(a UART in this example) from different tasks using a semaphore. This example
is located in the \KEIL\C166\AR166\EXAMPLES folder.
- [TcpNet]
Corrected a problem with the udp_send function. This function required
a word-aligned remote IP address. If remip was not word-aligned a Class-B
Trap was generated.
- [TcpNet]
Corrected a problem in the DNS client that caused it to incorrectly switch
between the primary and secondary DNS servers. This problem generated UDP packets
with the destination IP address set to 0.0.0.0 if no secondary DNS server was specified.
AR166 Version 1.12 Release
- [Kernel]
Added the os_evt_get event handling function, which returns
event flags served by the os_evt_wait_or function.
- [Kernel]
Modified the os_tsk_prio function to change the execution
priority of any other task. A new macro os_tsk_prio_self has been
introduced for consistency to change a priority of a currently running task.
- [Kernel]
Added a RoundRobin example which shows round-robin task switching. This
example is located in \KEIL\C166\AR166\EXAMPLES folder.
- [TcpNet]
Corrected a problem in the Telnet server when some characters were
not echoed back. This happened if typing on remote Telnet client was too fast.
- [TcpNet]
Added configurable PPP retransmissions and timeouts to AT166_CONFIG.C
configuration file. You may increase the default timeouts and number of
retransmissions when PPP connect fails on slow serial links or when the
network latency is high - for example a GSM PPP data link.
- [TcpNet]
Added new functions http_get_info and tnet_get_info to
retrieve the remote machine IP address and MAC address. These
functions may be used to limit access rights from remote machines based on
remote IP address or MAC address.
NOTE: Old versions of AR166_CONFIG.C configuration
file are not compatible with this version of ARTX-166 and must be replaced.
AR166 Version 1.10a Release
- [TcpNet]
Corrected a problem that caused AX88796 Ethernet controllers to lock-up on high
speed 100MBit LANs. This problem could occur when a burst of UDP broadcast packets
is received and the CPU is not fast enough to process all of the packets. When the
remote DMA is locked, the driver now restarts the AX88796 Ethernet controller to
prevent lock-ups.
- [AR166]
The AR166.CHM documentation has been updated. You may now use context help by
pressing F1 in the µVision editor.
ARTX-166 Version 1.10 Release
- [Flash File System]
Corrected a file size calculation problem in the ffind function
that occurred with files stored in multiple data blocks when some of the
blocks had odd lengths.
- [Flash File System]
Corrected problems that could result from opening a single file multiple times
(using the fopen function). Multiple write or append requests for the
same file are now rejected Only multiple read requests are accepted.
- [Flash File System]
Corrected a problem that may be encountered when appending an odd number of
bytes to a file.
- [Flash File System]
Corrected a problem in in the fdefrag function that could cause file system
corruption when the fdefrag function is called and at least one file block\
had an odd number of bytes.
- [Kernel]
Corrected invalid Round-Robin time-out handling in the os_chk_robin function
in the AR166_CONFIG.C configuration file.
- [Kernel]
Removed the int_lock function from the library. This function could cause
potential problems when used with XC16x devices. All code sections protected from
interrupts have been extracted and moved to AR_LIB.C. They are now protected
using the ATOMIC, EXTP, and EXTS instructions.
- [Kernel]
Corrected an interrupt disable problem (for XC16x devices) in the tsk_lock
function. Previously, the tsk_lock function could cause sporadic Kernel
crashes because of a pipeline effect problem.
- [Kernel]
Updated the AR166_CONFIG.C configuration file for some of the
enhancements and corrections in this release.
NOTE: Old versions of AR166_CONFIG.C configuration
file are not compatible with this version of ARTX-166 and must be replaced.
- [TCPnet]
Corrected a problem that prevented packets from being sent sequentially in the
AX88796.C Ethernet device driver. This problem only manifested itself
occasionally when running in low speed 10MBit LAN.
- [TCPnet]
Corrected a lock-up problem with the AX88796 Ethernet controller on high speed
100MBit LAN. This problem may occur when a burst of UDP broadcast packets is
received and the CPU is too slow to process all the packets. The buffer overflow
handler implemented in AX88796.C has been modified to properly recover
from this condition.
- [TCPnet]
Corrected TCP packet retransmission problems. When a TCP packet was not
acknowledged, after a time-out, the same packet should have been retransmitted.
However, a corrupted packet was retransmitted.
- [TCPnet]
Added a 4-byte local buffer to the cgi_func function in the HTTP_CGI.C
user-interface module. This changed the xcnt parameter to *pcgi —
a pointer to 4-byte buffer. It may be used to store parameters for repeated calls to
cgi_func.
- [TCPnet]
A length check has been added to the http_get_var function to avoid processing
potential garbage in the buffer.
- [TCPnet]
Changed the memory space for Web server ROM files from the default memory model
to xhuge. This allows smaller, efficient memory models for Web pages with
large files.
- [TCPnet]
All TCPnet examples have been updated to run on both the MCB167-NET and MCBXC167
evaluation boards. Examples for the MCBXC167 use the ULINK JTAG interface for
debugging.
ARTX-166 Version 1.02 Release
- [Flash File System]
Corrected a potential hang-up problem in the fflush function when
writing an empty file.
- [Flash File System]
Corrected an invalid free space calculation when multiple files are stored.
This problem could lead to file data memory corruption when storing files
larger than the Flash Block.
- [Flash File System]
Added new maintenance functions ffree, fanalyse and fdefrag.
- [TCPnet]
Added support for multi-language web pages. The device is now able to recognize
the client's browser language preference.
- [TCPnet]
Added Ethernet run-time configuration. This may be used to customize the user
application for different environments with or without DNS. Configuration
parameters are stored in EEPROM.
- [TCPnet]
Updated the get_host_by_name function to accept IP addresses in a string
format.
- [Kernel]
Updated the AR166.CHM documentation online manual. All TCPnet applications are
now fully documented. Many examples are updated and documented.
- [Kernel]
Updated the AT166_CONFIG.C configuration file.
NOTE: Old versions of AR166_CONFIG.C configuration
file are not compatible with this version of ARTX-166 and must be replaced.
- [ARTX166.DLL]
Corrected problems in the debug DLL which caused incorrect timeouts to display for
tasks waiting for a semaphore or mailbox. This problem existed only for memory
models with near data memory.
- [ARTX166.DLL]
Corrected problems in the debug DLL which caused incorrect stack usage statistics
to display for tasks with private stacks.
ARTX-166 Version 1.01 Release
- [Kernel]
Corrected an access violation problem in EC++ for memory models with far,
huge and xhuge data.
- [Kernel]
A problem with the return codes from os_evt_wait_and and
os_evt_wait_or was solved. When a task was waiting for an
event and the event was sent from the isr_evt_set function
a result code of OS_R_TMO was always received. This is now fixed.
- [TCPnet]
Solved a potential hang-up problem when a large number of broadcast
packets are received in short period of time on the LAN.
- [TCPnet]
The CS8900A.C driver has been updated and should be replaced
in existing projects. In addition, name conflicts have been solved
and some files have been renamed. The TCPnet configuration file is
now named AT166_CONFIG.C and the debug configuration file is
named AT166_DEBUG.C.
- [TCPnet]
An SMTP client has been implemented in TCPnet. It may be used to send
e-mail from the embedded application.
ARTX-166 Version 1.00 Release
- [Kernel]
Solved a problem with EC++ incompatibility for mailbox and semaphore
objects. For this reason, the TCB (Task Control Block) pointers have
been changed from near to default memory model. The old
debug driver ARTX166.DLL is not compatible with new TCB structure
and must be replaced.
- [Flash File System]
Renamed some source files to avoid name conflicts. The FlashFS configuration
file is now named AF166_CONFIG.C.
- [Flash File System]
Added support for single Flash devices. A single large Flash device may
now be used for storing files and application code. New maintenance functions
fformat and ffind were added.
- [ARTX-166]
The Kernel and FlashFS libraries are now built with debug information.
This enables source-level debugging within the kernel (you must specify the
source path to the kernel source to the debugger).
ARTX-166 Version 1.00 Beta 9 Release
- [Kernel - Problems Solved]
The potential interrupt disable hang-up problem has been solved. The functions
tsk_lock and tsk_unlock from the AR166_CONFIG.C file
has been changed to avoid pipeline effects.
NOTE: Old versions of AR166_CONFIG.C configuration
file are not compatible with this version of ARTX-166 and must be replaced.
- [TCPnet - Problems Solved]
The problem of DHCP Client not working for Windows 2000 Server has been solved.
- [TCPnet - Enhancements]
The DNS Client has been implemented. Using DNS Client you may resolve the
target host IP address by the host's name from the DNS Server database.
ARTX-166 Version 1.0 Beta 8 Release
- [ARTX-166]
Corrected a potential hang-up problem when the Ethernet cable is disconnected during an
established connection.
- [ARTX-166]
PPP and SLIP protocols have been implemented. The file
NET_CONFIG.C is updated
accordingly. Older versions of this network configuration file are not
compatible to this version of ARTX-166 and must be exchanged.
Technical Support
At Keil Software, we are dedicated to providing you with the best development
tools and technical support. That's why we offer numerous ways you can get the
technical support you need to complete your embedded projects.
-
Technical Support Knowledgebase
More than 1500 technical support questions and answers are available in the Support
Solutions Knowledgebase. When a new question arises, it is added to the knowledgebase
which is continuously published to the Web. This enables you to get technical support
at times when our support staff is unavailable.
-
Application Notes
Numerous Application Notes help you decipher complex features and implement
robust applications.
-
Example Programs and Files
Utility programs, example code, and sample projects are regularly added to
the Download File section of the web site.
-
Discussion Forum
Post questions, comments, and suggestions to the Keil Software Discussion
Forum and interact with other Keil users around the world.
Many of the features of our Technical Support Knowledgebase and
Web Site are the results of your suggestions. If you have any
ideas that will improve them, please
give us your feedback!
Contact Details
If you experience any problems or have any questions about this
product, contact one of our distributors
or offices for assistance.
In the USA...
Keil Software, Inc.
1501 10th Street, Suite 110
Plano, TX 75074
USA
800-348-8051 - Sales
972-312-1107 - Support
972-312-1159 - Fax
sales.us@keil.com - Sales E-Mail
support.us@keil.com - Support E-mail
|
|
In Europe...
Keil Elektronik GmbH
Bretonischer Ring 15
D-85630 Grasbrunn
Germany
+49 89 456040-0 - Sales
+49 89 456040-24 - Support
+49 89 468162 - Fax
sales.intl@keil.com - Sales E-Mail
support.intl@keil.com - Support E-Mail
|
Copyright © Keil™, An ARM® Company.
All rights reserved.
Visit our web site at www.keil.com.
|