Keil MDK-Middleware Keil MDK-ARM Professional Middleware for ARM Cortex-M based devices http://www.keil.com/pack/ File System 6.2.0 (see revision history for details) Network 6.2.0 (see revision history for details) USB 6.2.0 (see revision history for details) Segger emWin 5.26.1 Corrected Ethernet KSZ8851SNL driver (Power Status) Patch Release for 6.1.0: Network/Driver/ETH_KSZ8851SNL.c: invalid power status in MAC_PowerControl corrected File System 6.1.0 (see revision history for details) Network 6.1.0 (see revision history for details) USB 6.1.0 (see revision history for details) Graphics: - moved GUI Builder component to "Tools" group - moved VNC Server component to standalone group Supports CMSIS Driver V2 (requires ARM.CMSIS.4.1.0) Introduces Board Support Interfaces Documents Middleware Resource Requirements (see Revision History for further details) File System: added absacc.h to include folder for MDK 5.11 compatibility USB Device: - corrected issues in USB Custom Class event handling - corrected USB Custom Class build issue - updated USB Custom Class Template USB Host: - corrected USB host polling rate issue when Interrupt Endpoint requests "bInterval = 1" Network: - Added sntp_client_init and sntp_client_run prototypes in rl_net_lib.h FileSystem: - FAT filename processing bug fixes Network: - corrected a bug in FTP Server File System interface file USB Device: - added Custom Class class - updated drivers (namespace prefix ARM_ added) - moved Driver API and Driver and Pack documentation to CMSIS pack version 3.20.2 Graphics: - Segger emWin components added (Ver 5.20.4) Network: - Added driver for KSZ8851SNL Ethernet Controller with SPI Interface Network: - corrected potential memory dead-lock in HTTP server USB Host: - improved robustness (enumeration procedure) Drivers moved to "Drivers" Class Added I2C Driver API Updated UART Driver API V1.01 FileSystem: - added mount, unmount, fmedia and finfo functions Network: - added support for multicast MAC filtering - added support for IP checksum offload - added abort file transfer on error in FTP client - added name list command in FTP client USB Host: - soft connect debounce - 2 resets at enumeration Initial release LED Interface Buttons Interface Joystick Interface A/D Converter Interface Graphic LCD Interface Touchscreen Interface Thermometer Interface Accelerometer Interface Gyroscope Interface Camera Interface EEPROM Interface emWin LCD Interface Cortex-M processor based device: Cortex-M0, Cortex-M0+, Cortex-M3, Cortex-M4, SC000 or SC3000 CMSIS Core for Cortex-M CMSIS Core for Cortex-M and SPI Driver CMSIS Core for Cortex-M and I2C Driver CMSIS Core with RTOS for Cortex-M CMSIS Core with RTOS for Cortex-M and SPI Driver CMSIS Core with RTOS for Cortex-M and I2C Driver CMSIS Core with RTOS for Cortex-M and Display Interface CMSIS Core with RTOS for Cortex-M and USB Host Custom Class CMSIS Core with RTOS for Cortex-M and USB Host CDC File System CORE component File System and Flash Driver File System and NAND Driver File System and SD/MMC Driver File System and USB Host MSC component Network CORE component Network Interface and CORE component Network UDP and CORE component Network UDP and CORE component with File System Drive Network TCP and CORE component Network TCP and CORE component with File System Drive Network UDP/TCP and CORE component Network Web Server Compact Network Web Server Ethernet Driver: MAC with built-in PHY Ethernet Driver: MAC with built-in PHY and MAC and PHY separate Ethernet Driver: MAC and PHY Network Ethernet Driver Network PPP Driver Network SLIP Driver USB CORE component USB Core component with Device Driver USB Core component with Device Driver USB Core needs to have USB Host and/or USB Device selected USB Host component USB Host MSC component USB Device component Graphics CORE component Graphics CORE component and Joystick driver Graphics CORE component and Touchscreen driver Graphics CORE component and LCD driver (16-bit Interface) Graphics CORE component and LCD driver (SPI Interface) Graphics CORE component and LCD driver (RGB Interface) Graphics Demo Framework Graphics CORE component with CMSIS RTOS and BSD Socket Interface Cortex-M0 or Cortex-M0+ or SC000 processor based device in little endian mode for the ARM Compiler Cortex-M0 or Cortex-M0+ or SC000 processor based device in big endian mode for the ARM Compiler Cortex-M3 or SC300 processor based device in little endian mode for the ARM Compiler Cortex-M3 or SC300 processor based device in big endian mode for the ARM Compiler Cortex-M4 processor based device in little endian mode for the ARM Compiler Cortex-M4 processor based device in big endian mode for the ARM Compiler Cortex-M4 processor based device using Floating Point Unit in little endian mode for the ARM Compiler Cortex-M4 processor based device using Floating Point Unit in big endian mode for the ARM Compiler Select packs 'ARM.CMSIS.3.20.x' and 'Keil.MDK-Middleware.5.1.x' for compatibility Storage Devices and Media Types Demonstrator for Graphical User Interface features Devices used to control the Graphical User Interface Connection Mechanism Network Services Network protocol USB Device Classes USB Host Classes Display Interface Configuration emWin Tools Evaluation Board Interfaces IP Networking using Ethernet or Serial protocols Doc\Network\html\index.html Networking Core for Cortex-M (Release) #define RTE_Network_Core /* Network Core */ #define RTE_Network_Release /* Network Release Version */ Networking Core for Cortex-M (Debug) #define RTE_Network_Core /* Network Core */ #define RTE_Network_Debug /* Network Debug Version */ Network Ethernet Interface #define RTE_Network_Interface_ETH_%Instance% /* Network Interface ETH %Instance% */ Network PPP over Serial Interface - Standard Modem #define RTE_Network_Interface_PPP /* Network Interface PPP */ Network PPP over Serial Interface - Null Modem #define RTE_Network_Interface_PPP /* Network Interface PPP */ Network PPP over Serial Interface #define RTE_Network_Interface_PPP /* Network Interface PPP */ Network SLIP Interface - Standard Modem #define RTE_Network_Interface_SLIP /* Network Interface SLIP */ Network SLIP Interface - Null Modem #define RTE_Network_Interface_SLIP /* Network Interface SLIP */ Network SLIP Interface #define RTE_Network_Interface_SLIP /* Network Interface SLIP */ UDP Socket #define RTE_Network_Socket_UDP /* Network Socket UDP */ TCP Socket #define RTE_Network_Socket_TCP /* Network Socket TCP */ BSD Socket #define RTE_Network_Socket_BSD /* Network Socket BSD */ Web Server (HTTP) with Read-only Web Resources (Compact) #define RTE_Network_Web_Server_RO /* Network Web Server with Read-only Web Resources */ Web Server (HTTP) with Web Resources on File System #define RTE_Network_Web_Server_FS /* Network Web Server with Web Resources on File System */ Telnet Server #define RTE_Network_Telnet_Server /* Network Telnet Server */ TFTP Server #define RTE_Network_TFTP_Server /* Network TFTP Server */ TFTP Client #define RTE_Network_TFTP_Client /* Network TFTP Client */ FTP Server #define RTE_Network_FTP_Server /* Network FTP Server */ FTP Client #define RTE_Network_FTP_Client /* Network FTP Client */ DNS Client #define RTE_Network_DNS_Client /* Network DNS Client */ SMTP Client #define RTE_Network_SMTP_Client /* Network SMTP Client */ SNMP Agent #define RTE_Network_SNMP_Agent /* Network SNMP Agent */ SNTP Client #define RTE_Network_SNTP_Client /* Network SNTP Client */ File Access on various storage devices Doc\FileSystem\html\index.html File System with Long Filename support for Cortex-M #define RTE_FileSystem_Core /* File System Core */ #define RTE_FileSystem_LFN /* File System with Long Filename support */ File System without Long Filename support for Cortex-M #define RTE_FileSystem_Core /* File System Core */ #define RTE_FileSystem_SFN /* File System without Long Filename support */ BUS-mapped RAM using drive letter "R:" #define RTE_FileSystem_Drive_RAM /* File System RAM Drive */ SPI or BUS-mapped NOR Flash using drive letter "F:", "F0:" or "F1:" #define RTE_FileSystem_Drive_NOR_%Instance% /* File System NOR Flash Drive %Instance% */ NAND Flash using drive letter "N:", "N0:" or "N1:" #define RTE_FileSystem_Drive_NAND_%Instance% /* File System NAND Flash Drive %Instance% */ SD, SDHC, or MMC Memory Card using drive letter "M:", "M0:" or "M1:" #define RTE_FileSystem_Drive_MC_%Instance% /* File System Memory Card Drive %Instance% */ USB Stick via USB Host using drive letter "U:", "U0:" or "U1:" #define RTE_FileSystem_Drive_USB_%Instance% /* File System USB Drive %Instance% */ NAND Flash connected to Memory Bus #define RTE_Driver_NAND_MemoryBus /* Driver NAND Flash on Memory Bus */ AM29x800BB Flash (16-bit Bus) #define RTE_Driver_Flash_AM29x800BB /* Driver Flash AM29x800BB */ M29W640FB Flash (16-bit Bus) #define RTE_Drivers_Flash_M29W640FB /* Driver Flash M29W640FB */ AT45DB642D Flash (SPI) #define RTE_Drivers_Flash_AT45DB642D /* Driver Flash AT45DB642D */ S29GL064N Dual Flash (32-bit Bus) #define RTE_Drivers_Flash_S29GL064Nx2 /* Driver Flash S29GL064Nx2 */ Ethernet PHY DP83848C Driver #define RTE_Drivers_PHY_DP83848C /* Driver PHY DP83848C */ Ethernet PHY ST802RT1 Driver #define RTE_Drivers_PHY_ST802RT1 /* Driver PHY ST802RT1 */ Ethernet MAC + PHY KSZ8851SNL/SNLI Driver #define RTE_Drivers_ETH_KSZ8851SNL /* Driver ETH KSZ8851SNL */ Ethernet PHY LAN8720 Driver #define RTE_Drivers_PHY_LAN8720 /* Driver PHY LAN8720 */ Prolific PL2303 USB to serial RS232 adapter (requires USB Host Prolific PL2303 Template) #define RTE_Drivers_USART_PL2303 /* Driver USART PL2303 */ Usb Host CDC ACM Compliant Device #define RTE_Drivers_USART_CDC_ACM /* Driver USART CDC ACM */ USB Communication with various device classes Doc\USB\html\index.html USB Core for Cortex-M #define RTE_USB_Core /* USB Core */ USB Host #define RTE_USB_Host_%Instance% /* USB Host %Instance% */ USB Host: Human Interface Device (HID) Class #define RTE_USB_Host_HID /* USB Host HID */ USB Host: Mass Storage Class (MSC) #define RTE_USB_Host_MSC /* USB Host MSC */ USB Host: Communication Device Class (CDC) #define RTE_USB_Host_CDC /* USB Host CDC */ USB Host: Custom Class #define RTE_USB_Host_CustomClass /* USB Host Custom Class */ USB Device #define RTE_USB_Device_%Instance% /* USB Device %Instance% */ USB Device: Human Interface Device (HID) Class #define RTE_USB_Device_HID_%Instance% /* USB Device HID instance %Instance% */ USB Device: Mass Storage Class (MSC) #define RTE_USB_Device_MSC_%Instance% /* USB Device MSC instance %Instance% */ USB Device: Communication Device Class (CDC) #define RTE_USB_Device_CDC_%Instance% /* USB Device CDC instance %Instance% */ USB Device: Audio Device Class (ADC) #define RTE_USB_Device_ADC_%Instance% /* USB Device ADC instance %Instance% */ USB Device: Custom Class #define RTE_USB_Device_CustomClass_%Instance% /* USB Device Custom Class instance %Instance% */ User Interface on graphical LCD displays Doc\Graphic\html\index.html Graphics Core for Cortex-M #define RTE_Graphics_Core /* Graphics Core */ GUI Builder Pointer Input Device: Joystick #define RTE_Graphics_Joystick /* Graphics Input Device Joystick */ Pointer Input Device: Touchscreen #define RTE_Graphics_Touchscreen /* Graphics Input Device Touchscreen */ Demo framework #define RTE_Graphics_Demo_Framework /* Graphics Demo: Framework */ Shows text with different antialiasing qualities #define RTE_Graphics_Demo_AA_Text /* Graphics Demo: AntialiasedText */ Automotive samples #define RTE_Graphics_Demo_Automotive /* Graphics Demo: Automotive */ Shows a bargraph with alpha effect #define RTE_Graphics_Demo_BarGraph /* Graphics Demo: BarGraph */ Draws bitmaps with and without compression #define RTE_Graphics_Demo_Bitmap /* Graphics Demo: Bitmap */ Draws color bars #define RTE_Graphics_Demo_ColorBar /* Graphics Demo: ColorBar */ Shows Cursors #define RTE_Graphics_Demo_Cursor /* Graphics Demo: Cursor */ Demo of fading effect function #define RTE_Graphics_Demo_Fading /* Graphics Demo: Fading */ Shows graphs #define RTE_Graphics_Demo_Graph /* Graphics Demo: Graph */ Shows Icons #define RTE_Graphics_Demo_IconView /* Graphics Demo: IconView */ Image flow demo #define RTE_Graphics_Demo_ImageFlow /* Graphics Demo: ImageFlow */ Listview demo #define RTE_Graphics_Demo_ListView /* Graphics Demo: ListView */ Shows how to create a radial menu with motion support #define RTE_Graphics_Demo_RadialMenu /* Graphics Demo: RadialMenu */ Plays with some dialogs and uses skinning #define RTE_Graphics_Demo_Skinning /* Graphics Demo: Skinning */ Speed demo #define RTE_Graphics_Demo_Speed /* Graphics Demo: Speed */ Shows how to use memory devices for rotation #define RTE_Graphics_Demo_Speedometer /* Graphics Demo: Speedometer */ Demo of a semi transparent dialog #define RTE_Graphics_Demo_TransparentDialog /* Graphics Demo: TransparentDialog*/ Treeview demo #define RTE_Graphics_Demo_Treeview /* Graphics Demo: Treeview */ Virtual screen demo #define RTE_Graphics_Demo_VScreen /* Graphics Demo: VScreen */ Washing machine demo #define RTE_Graphics_Demo_WashingMachine /* Graphics Demo: WashingMachine*/ Demo of zooming and rotating images #define RTE_Graphics_Demo_ZoomAndRotate /* Graphics Demo: ZoomAndRotate*/ Configurable LCD Interface Template LCD Configuration for Keil MCBQVGA Version LD (16-bit Interface) #define RTE_Graphics_LCD_MCBQVGA_LD_16 /* Graphics LCD MCBQVGA_LD 16-bit IF */ LCD Configuration for Keil MCBQVGA Version LD (SPI Interface) #define RTE_Graphics_LCD_MCBQVGA_LD_SPI /* Graphics LCD MCBQVGA_LD SPI IF */ LCD Configuration for Keil MCBQVGA Version LG (16-bit Interface) #define RTE_Graphics_LCD_MCBQVGA_LG_16 /* Graphics LCD MCBQVGA_LG 16-bit IF */ LCD Configuration for Keil MCBQVGA Version LG (SPI Interface) #define RTE_Graphics_LCD_MCBQVGA_LG_SPI /* Graphics LCD MCBQVGA_LG SPI IF */ LCD Configuration for Keil MCBQVGA Version LG (RGB Interface) #define RTE_Graphics_LCD_MCBQVGA_LG_RGB /* Graphics LCD MCBQVGA_LG RGB IF */ Enable Remote access via TCP/IP