µTasker Forum

µTasker Forum => NXPTM LPC2XXX and LPC17XX => Topic started by: mark on April 04, 2011, 11:15:44 AM

Title: LPC2XXX Software Versions
Post by: mark on April 04, 2011, 11:15:44 AM
Hi All

The following Beta version includes USB device support as well as SDIO controller for the utFAT module.
The password is the same as for the official release. The project is configured for the Olimex 2478 board with TFT where it will show a slide show in the TFT of images in the directors "pics" on the SD card (when inserted). When no SD card is inserted it will run a graphical demo.

http://www.uTasker.com/software/V1.4/uTaskerV1.4_LPC-4.zip
===============================================
When USB is activated (in config.h) it will allow the SD card to appear as a disk to the PC. The USB interface is running in interrupt mode whereby the SDIO is on DMA mode. The demo can be seen here with some details of the SDIO configuration: http://www.youtube.com/watch?v=5dD2cZ8FEqo

Regards

Mark
Title: Re: LPC2XXX Software Versions
Post by: mark on June 07, 2011, 05:16:46 PM
Hi All

Please use the following for LPC2XXX packages. The versions available and release notes are maintained here!

Regards

Mark


V1.4-8 19.09.2012 http://www.uTasker.com/software/V1.4/uTaskerV1.4_LPC-8.zip
==============================================================

- Additional queue protection added to allow nested writes and nested reads from same queue in interrupts
- SD card recognition in SDHC mode corrected
- The size of SD card larger than 4G is now displayed in kBytes to stop byte length overflow in 32 bit format
- SD card simulator can be configured to simulate 1G, 2G, 4G, 8G and 16G SD cards, as well as no SD card inserted
- Long File Name delete added using define UTFAT_LFN_DELETE
- Access to SD card (utFAT) controllable individually for HTTP and FTP; root directories can be changed during operation.
- SD card visualisation in simulator (preliminary)
- Optional polling of SD card to detect removal during operation
- Advanced IPv6 support with link-local and global IPv6 addresses. TCP based services (such as HTTP and FTP) are operational on link-local IPv6 address and global IPv6 address as well as IPv4 (dual-stack).
- Global IPv6 address can be optionally tunnelled in 6in4 (tunnelling IP address is configurable) when native IPv6 is not possible.
- Configurable 6in4 relay agent to expose multiple IPv6 devices behind simple IPv4 routers.
- Start web page shows IPv4 or IPv6 source address depending on connection.
- New I2C simulation devices (PCA9539, PCF2129A)
- Ethernet bridging support
- Buzzer output simulation (eg. for use with keypad)
- Frontpanel simulation support with connection of keys and LEDs to ports - including external I2C port expanders
- User button simulation in front-panel and configurable frontpanel image
- x,y coordinates shown when mouse is on keypad/front panel
- define HTTP_POST_DEFINES_PAGE allows user file to be served as specified by the file name in a POST, rather than special uFile name
- define HTTP_SET_USERFILE_START_PAGE allow a specific user file to act as HTTP default start side
- define HTTP_SERVE_ONLY_USER_FILES allows serving exclusively user files - if a defined user file is not found display 404 error rather than a uFileSystem equivalent
- TCP/IP stack adapted for multiple interface and multiple network support - see http://www.utasker.com/forum/index.php?topic=1748.0 for details about application compatibility.
- FTP client only commands ASCII or Binary modes when it is not know in which mode it is presently in and a change is needed.
- FTP client Listing and Getting requires both the server's success response and the data connection to be closed before terminating and informing of success.
- FTP client now supports operation with servers over IPv6.
- reset TCP connections when SYN (without ACK) received on connected TCP port.
- Optional polling of SD card to detect removal during operation (by reading a sector), by polling card detect switch, or based on card detect switch interrupt (see http://www.utasker.com/forum/index.php?topic=1747.msg6270#msg6270).
- EXTENDED_UFILESYSTEM extended with UFILESYSTEM_APPEND - see http://www.utasker.com/docs/uTasker/uTaskerFileSystem_3.PDF (version 0.05)
- uFileSystem revision 1 including seamless file operation in multiple storage media and multiple devices in each media - generic rework to allow simpler extension with new types as well as device count being set at run-time - see http://www.utasker.com/docs/uTasker/uTaskerFileSystem_Revision1.pdf


V1.4-7 18.02.2012 http://www.uTasker.com/software/V1.4/uTaskerV1.4_LPC-7.zip
==============================================================

- UART simulator extended to handle 6 internal UARTs and 4 external ones
- corrections in utFAT when writing clusters over sector boundaries and deleting clusters on big-endian processors
- Correct managed file delete when using SPI Flash
- Simulation assertions use _EXCEPTION("text indication cause of assertion")
- RAM Test with Rowely failed since the compiler constructs stack variables in a different order - RAM test modified to handle any variable ordering on the stack
- Allow scrolling up and down to previous commands in command line and editing the command with option PREVIOUS_COMMAND_BUFFERS as number of buffers
- HID mouse added to USB device support - define USE_USB_HID_MOUSE enables in config.h
- corrections in utFAT when writing clusters over sector boundaries and deleting clusters on big-endian processors.
- utFAT FAT16 mode corrections.
- Enabling SUPPORT_FILE_TIME_STAMP (requires SUPPORT_RTC) adds date/time stamps to utFAT file/directory writes.
- SINGLE_FILE_SIZE is no longer used. FILE_GRANULARITY is now used exclusively in all uFileSystem components (the meaning is the same)
- Option (SPECIAL_LCD_DEMO) to stop GLCD demo when an image is posted to the TFT via HTTP
- Character LCD simulator allows read of character content.
- FTP client according to the FTP client user's guide: http://www.utasker.com/docs/uTasker/uTaskerFTP_client.pdf
- _VARIABLE_HTTP_PORT allows the HTTP server to be started with a user-defined port number rather than fixed port 80.
- DNS_SERVER_OWN_ADDRESS adds command to set individual DNS server address, otherwise it follows the default gateway value.
- Display connection IPv4 address on start page of web server
- Counter of number of times the start web side has been served added to the demonstration
- Add time display on web server admin page when RTC enabled
- Add reset cause display to web server admin page
- Boot loading from SD card added as option to serial loader project

- Note that the RTC has undergone some changes for compatibility reasons.


V1.4-6 4.08.2011 http://www.uTasker.com/software/V1.4/uTaskerV1.4_LPC-6.zip
=============================================================

- Zero-configuration (Auto-IP) support according to http://www.utasker.com/docs/uTasker/uTasker_zero_config.pdf
- added optional RAM test to application.c [#define RAM_TEST] - according to http://www.utasker.com/docs/uTasker/uTasker_RAM_test.pdf
- UART simulator extended to handle 6 internal UARTs and 4 external ones
- character LCD simulator allows read of character content
- Keys in Build_BM.bat in Rowely bare-minimum bootloader project adjusted to match the boot loader default settings
- INDIVIDUAL_BUFFERED_TCP_BUFFER_SIZE allows buffered TCP sockets to define different buffer sizes for each socket. Use
extern unsigned short fnDefineTCPBufferSize(USOCKET TCP_socket, unsigned short usBufferSize); to allocate the size to be used by the socket
before first use. TCP_BUFFER is used (for compatibility) if no size of set.

Note that the package has Keil uVision4 projects. These can no longer be opened with Keil uVision2/3 but - if you use a limited uVision4 version it is possible to export the project to a uVision2/3 compatible one.


When working with MANAGED_FILES from SPI Flash, the following change to fnEraseFlashSector() is required to allow deletes to operate correctly:


// Erase FLASH sectors. The pointer can be anywhere in the first sector to be erased
//
extern int fnEraseFlashSector(unsigned char *ptrSector, MAX_FILE_LENGTH Length)
{
#ifdef MANAGED_FILES
    MAX_FILE_LENGTH OriginalLength = Length;
#endif
...
            fnSPI_command(ucCommand, usPageNumber, _EXTENDED_CS 0, 0);   // delete appropriate page/block
            if (Length <= BlockLength) {
           #ifdef MANAGED_FILES
                if (OriginalLength == 0) {                               // if a single block erase was called, return the page size of the storage area that was just deleted
                    return BlockLength;
                 }
           #endif
                break;                                                   // delete complete
            }
            ptrSector += BlockLength;
            Length -= BlockLength;
            #endif
            continue;
        }
        #endif
        #if defined FLASH_FILE_SYSTEM || defined USE_PARAMETER_AREA      // {15}
        fnFlashCommand(DELETE_FLASH, ptrSector, Length);
        #endif
        #ifdef MANAGED_FILES
        if (Length == 0) {                                               // delete completed
            if (OriginalLength == 0) {                                   // if a single page erase was called, return the page size of the storage area
                return fnGetFlashSectorSize((unsigned long)ptrSector);
             }
        }
        #endif
        break;
    #endif                                                               // #endif not SPI_FILE_SYSTEM
    } while (Length);
...


When working with RANDOM_NUMBER_GENERATOR it is important that the part selected in config.h matches with the part on the board (so that the random numer is at the correct location in SRAM). For example, when using the MCB2300 set the LPC2378FBD144 rather than the LPC2387FBD100.


To avoid two many internal Flash sectors from being deleted when working with managed file mode the following change is required in fnFlashCommand() in LPC23XX.c:


    case DELETE_FLASH:                                                   // delete a sector or several sectors in FLASH
        {
            unsigned long ulSectorStart = fnGetFlashSector((unsigned long)ptrFlashAddress);           // get the first sector to be deleted
            unsigned long ulSectorEnd   = fnGetFlashSector((unsigned long)(ptrFlashAddress + (Length - 1)));// get the last sector to be deleted
    #if defined MANAGED_FILES
            if (Length == 0) {                                           // delete one sector if no length is defined
                ulSectorEnd = ulSectorStart;                             // {46} end sector equals start sector to delete just one block
            }
    #else
            if (Length == 0) {                                           // don't delete if length 0 is given
                break;
            }
    #endif


The RAM test doesn't work with Rowley Crossworks since its compiler constructs stack variables in a different ordering to other compilers. Don't activate RAM_TEST in application.c. A workaround will be available in the next release.




V1.4-5 07.06.2011 http://www.uTasker.com/software/V1.4/uTaskerV1.4_LPC-5.zip
==============================================================

- Stack concept synchronised with the details in http://www.utasker.com/forum/index.php?topic=1479.0
- All projects contain VS6, VS2010, GCC, Rowley Crossworks, IAR4, IAR6 und uVision4 support
- SPI Flash support added to bare-minimum boot loader
- Rowley, IAR5, uVision targets added to serial loader
- LPC213X support
- MONITOR_PERFORMANCE added
- USB Mass storage improvements
- uTaskerFileCreate V1.7 updated (see http://www.utasker.com/forum/index.php?topic=1114.msg5330#msg5330)
- uTaskerConvert.exe V1.6 - "uTaskerConvert.exe uTasker_BM.bin raw.bin -b" can be used to convert an input file in Motorola binary format to raw binary format.
- USB MSD boot loader added to serial boot loader project with password software protection (see http://www.utasker.com/forum/index.php?topic=1434.msg5576#msg5576)

GCC users: note that the GCC make file includes two startup routines: Build/startup_gnu.o and Build/startup_LPC21XX_gnu.o. Make sure that the correct one is used (and other commented out) - use Build/startup_LPC21XX_gnu.o for LPC21xx devices and Build/startup_gnu.o for all others

Keil uVision users - please add LCD.c to the project (in uGLCDLIB folder) when using the character LCD

Rowley Crossworks batch file to create uploader file when working with the BM-bootloader doesn't contain keys matching the default settings in the boot loader - change to -0x22ba -b267a8200926 if defaults are to be used.



V1.4-4 09.09.2010 http://www.uTasker.com/software/V1.4/uTaskerV1.4_LPC-4.zip
==============================================================

- TX_LAN_INTERRUPT_ON_DONE flag set in fnStartEthTx() - see http://www.utasker.com/forum/index.php?topic=829.msg3646#msg3646
- LPC214X support
- USB device support as well as SDIO controller for the utFAT module.
- Multicast Ethernet and basic IPv6
- PCM Module operation support
- ADC support
- The project is configured for the Olimex 2478 board with TFT where it will show a slide show in the TFT of images in the directors "pics" on the SD card (when inserted). When no SD card is inserted it will run a graphical demo.
- When USB is activated (in config.h) it will allow the SD card to appear as a disk to the PC. The USB interface is running in interrupt mode whereby the SDIO is on DMA mode. The demo can be seen here with some details of the SDIO configuration: http://www.youtube.com/watch?v=5dD2cZ8FEqo



V1.4-3 05.01.2010 http://www.uTasker.com/software/V1.4/uTaskerV1.4_LPC-3.zip
==============================================================

- uTaskerCombine V1.1 in \Tools allows Intel Hex file output beyond 64k size
- improved LPC21xx support and internal Real Time Clock
- LPC23xx.c
   02.11.2009 Use fast IO with LPC2104/5/6 since new revisions have fast ports {11}
   03.11.2009 Correct I2C character counter                              {12}
   07.11.2009 Add periodic timer and PWM                                 {13}
   08.11.2009 Modify the LPC21XX vectored interrupt entry routine to support all possible interrupt sources {14}
   14.11.2009 Enable FLASH operations when USE_PARAMETER_AREA is used    {15}
   06.12.2009 Correction to avoid unnecessary FLASH buffer write when no buffer is open {16}
- LPC23xx.h
   02.11.2009 Use fast IO with LPC2104/5/6 since new revisions have fast ports {9}
   02.11.2009 Correct _WRITE_PORT and _WRITE_PORT_MASK macros for simulator {10}
   07.11.2009 Add option timer mode and new modes, plus LPC2103 PWM registers {11}
   03.12.2009 Extended part IDs                                          {12}
- new application "SerialBoot" as reference for simple project
- random ID added to DNS to avoid problems with servers rejecting repeated IDs
- New permanent ARP entry option
- New application project "serial loader"
- Optionally add HTTP plain text header information - define HTTP_HEADER_CONTENT_INFO
- optional USE_PARAMETER_AREA support (as simple alternative to USE_PARAMETER_BLOCK)
- utFAT V1.0 SD card support added (integrated in FTP, HTTP servers plus DOS-like interface)
Note that SDCARD_SUPPORT is enabled by default and GLCD is disabled - the heap size has been increased to enable utFAT together with other services.
Configured for MCB2300 (SD card of SPI1 - not card slot! P0.14 used as chip select. 336k uFileSystem size


V1.4-2 11.10.2009 http://www.uTasker.com/software/V1.4/uTaskerV1.4_LPC-2.zip
==============================================================

See file headers for changes - no further description here.


V1.4-1 12.08.2009 http://www.uTasker.com/software/V1.4/uTaskerV1.4_LPC-1.zip
==============================================================

See file headers for changes - no further description here.


V1.4-0 03.08.2009 http://www.uTasker.com/software/V1.4/uTaskerV1.4_LPC-0.zip
==============================================================

Original release.



*****************************************************************************************
Please note that the SW packages are protected by the corresponding project password.
To register and receive the password, simple fill out the form: http://www.utasker.com/Licensing/request.html
Don't be afraid - the project is free and supported for everyone; just for commerical use a small fee for premium
support is requested (donation after making their first million profit also welcomed..;-)
*****************************************************************************************