Sie sind auf Seite 1von 5

Middleware Selector for STM32 Microcontrollers

No compromise embedded middleware for STM32

STM32 Flash microcontrollers, based on the ARM Cortex M processor, are a family of embedded controllers that combine realtime capabilities and digital signal processing, supported by a broad ecosystem of tools. The large number of STM32 devices available includes controllers suitable both for small projects and for much larger system level designs. HCC provides one of the largest selections of middleware for STM32 devices and can support any compiler and target board and any RTOS (or none). HCC software is highly optimized because we are focused only on storage and communications and, as a consequence, reach a level of performance that is difficult to achieve.

Middleware Selector for STM32 Microcontrollers


HCC Embedded Middleware For STM32
USB Device, Host & OTG: USB solutions from HCC are mature, widely used stacks that can support almost any embedded USB configuration. The USB suite provides highly efficient basic class drivers like HID, Hub and Mass Storage. Support is also available for more sophisticated configurations requiring Isochronous Transfer, Composite Devices and multiple USB interfaces. In addition, HCCs range of advanced class drivers provides access to File Systems and communications networks including Ethernet. This means developers can exploit USB to its full potential with ease, without having to worry about developing highly specialized drivers. Software is distributed as source code and sample projects integrated with most popular RTOSes, MCUs and compilers can be provided. The stacks support all interface speeds, all transfer types, USB 1.1/2.0, Host, Device and OTG modes. There are implementations for an extensive range of MCUs including proprietary interfaces as well as OHCI and EHCI. Flash Management: There are many NAND and NOR Flash memory devices, interfaces and technologies that developers can choose. Integrating them reliably and achieving the maximum potential life and high performance presents a significant design challenge. HCC has developed robust fail-safe flash management software and file systems and it has support for hundreds of different kinds of memory types, interfaces and controllers. HCCs truly fail-safe SafeFTL Flash Translation Layer provides a high-performance solution that allows developers to interface with any Flash-based media. SafeFTL presents a simple logical sector interface to an application, such as a file system, and manages the underlying complexity efficiently and safely. When used in conjunction with HCCs advanced file systems there is a complete solution for almost any type of storage media and performance requirement. File Systems: HCCs highly optimized range of file systems is designed to meet the performance requirements of any application. Using HCC file systems will make your application more reliable and will help to protect your customers data. HCC file systems can be seamlessly dropped into any environment to support any storage media, RTOS, compiler or microcontroller. Highlights include; H  ighly optimized file systems: a number of finely-tuned file systems designed to provide the best performance for a range of scenarios. With full support for traditional FAT and flash file systems, developers can choose a system optimized for flexibility, performance or resource-limited environments. E  xtensive target media drivers: HCC collaborates closely with the industrys leading storage suppliers and can provide support for almost any flash device or storage medium. We routinely supply drivers for everything from simple USB pen drives and SD cards, to the most advanced NAND and NOR flash. N  o-compromise fail-safety: HCC has developed truly fail-safe file systems that guarantee the highest possible data integrity. With abstractions for more than 15 real-time operating systems HCCs one-size-doesnt-fit-all approach to file systems is sure to provide an optimal solution for most applications.

TCP/IP: The key to a successful embedded application is to use high-quality software that is verifiably developed and ensures a stable, low-risk development platform. HCCs TCP/IP stack was developed with a rigorous approach to quality using a strongly typed subset of the C language. The approach incorporates a strong adherence to the MISRA-C:2004 standard and was validated using advanced verification tools. All software is provided with optimized Ethernet drivers and will integrate easily with any RTOS. The implementation was designed for high performance on a micro-controller. There are no unnecessary copies, well thought out static memory management and dedicated memory areas and cache are fully exploited. HCCs networking solution provides a significant range of protocols as well as support for both IPv4 and IPv6, providing flexibility and long-term network compatibility. Bootloaders: HCC has developed a range of high quality bootloader solutions that will fit almost any scenario. The bootloaders can boot using flash, USB or serial interfaces using minimal resources on the target controller. The benefits of using HCC Bootloaders include small footprint, high-speed operation, optimized performance and a high-quality stable implementation that has been widely used in commercial applications. Additionally the bootloaders use a library of standard components and are customized to user specifications. HCC bootloaders are truly fail-safe and, if the boot process is interrupted for any reason, the system will fully recover. All bootloaders have the option to add an advanced AES encryption module for secure data transfer. It is possible to configure them to support multiple complex interfaces. eTaskSync Verifiable Kernel: HCCs eTaskSync is a no compromise, MISRA-compliant scheduler used for running tasks in an embedded system. HCC provides many middleware products whose operations need to be properly synchronized and coordinated. This can be achieved using a small subset of the typical functions of a standard kernel: tasks, events and mutexes. eTaskSync is designed to provide that synchronization. It uses a priority based, pre-emptive scheduling mechanism that can be used in any real-time embedded application. eTaskSync is delivered with detailed MISRA compliance reports, MC-DC analysis and 100% object and statement code coverage tests. eTaskSync can be used in a broad range of embedded applications, but it is especially suitable for those that require a high level of integrity and verification such as industrial, medical and transportation applications.

Licensing & Purchasing


All HCC reusable software components are royalty-free and distributed in source form. Support and maintenance are included for one year with all purchases, and where possible we deliver sample projects tailored to your development environment. Visit HCCs website to find a sample license and to obtain the contact details of your local sales representative. Or, simply send an email to info@hcc-embedded.com and we will send all the details you require.

Broad Range of RTOS & Tool Support


RTOS Abstractions RTOS abstractions are available for the following systems: CMX RTX, eCOS, emBOS, EUROS, FreeRTOS, Keil RTX, Nucleus, Quadros RTXC, ThreadX, -velOSity, C/OS-II, and many others. Importantly, for custom schedulers and super loops, HCC offers an abstraction for No RTOS. We also offer our own eTaskSync, a small cooperative scheduler, which is designed to handle all processing and interface requirements of HCC middleware. This means that developers can choose our robust quality and outstanding performance irrespective of their legacy software.

Extensive Compiler Support Eclipse/GCC, IAR Embedded Workbench, Keil ARM Compiler, Freescale CodeWarrior, Atmel AVR Studio, Green Hills Multi, Microchip MPLAB, Renesas HEW, TI Code Composer Studio, Mentor CodeSourcery, Atollic True Studio and many more. Microcontrollers Atmel AVR32, SAM3/7/9; ARM Cortex-M0/M3/M4, ARM7/9/11; Freescale ColdFire, Kinetis, PowerPC, i.MX; Infineon C164; Microchip PIC24, PIC32; NXP LPC1300/1700/1800/2000/3 000/4000; Renesas SH-2A, RX600; STMicroelectronics STM32; Texas Instruments MSP430, Stellaris, C2000, Hercules, DaVinci, Sitara.

US sales office: 444 East 82nd Street New York NY 10028 Tel: +1 212 734 1345 European sales offices: 24a Melville St, Edinburgh EH3 7NS Scotland, UK Tel.: +44 7918 787 571 1133 Budapest, Vci t 76., Hungary Tel.: +36 1 450 1302 info@hcc-embedded.com sales@hcc-embedded.com www.hcc-embedded.com

Middleware Selector Tables


STM32L151/152/162 STM32L151/152/162 STM32F215/217 STM32F215/217 STM32F050/51 STM32F105/07 STM32F302/03 STM32F372/73 STM32F405/15 STM32F407/17 STM32F427/37 STM32F050/51 STM32F105/07 STM32F302/03 STM32F372/73 STM32F405/15 STM32F407/17 STM32F427/37 STM32F100 STM32F101 STM32F102 STM32F103 STM32F205 STM32F207 STM32F313 STM32F383 STM32F100 STM32F101 STM32F102 STM32F103 STM32F205 STM32F207 STM32F313 STM32F383

Product Code

Product Description

Product Code

Product Description

File Systems
FAT File Systems FAT THIN SAFEFAT Media Drivers MD-MMCSD MD-MMCSD-SPI MD-CF MD-HDD MD-SCSI MD-RAM High Peformance FAT 16/32 File System '"THIN" File System for Resource Limited Applications SafeFAT Fail Safe File System SD/MMC SDIO Media Driver SD/MMC SPI Media Driver Compact Flash Media Driver HDD IDE-ATA Driver USB Mass Storage Media Driver RAM Drive Media Driver no no n/a

USB
USB Host EUSBH- BASE EUSBH-HUB EUSBH-MST EUSBH-RNDIS EUSBH-CDCACM EUSBH-CDCECM EUSBH-CDCEEM EUSBH-CDCOBEX EUSBH-CDCFTDI no no no no no no no no no no no no no no USB Host Target Drivers USB Device EUSBH-AUDIO EUSBH-MIDI EUSBH-HID EUSBH-MTP EUSBH-PRNT EUSBH-PROPDRV EUSBD-BASE EUSBD-MST EUSBD-RNDIS EUSBD-CDCACM EUSBD-CDCECM EUSBD-CDCEEM EUSBD-Audio TCP-MISRA MISRA Compliant TCP/IPv4 stack IPv4 IPv6 BSD 4 UDP ARP ICMP DNS Client DHCP client FTP Server TFTP Server PPP SMTP HTTP-SERV PPP Module SMTP HTTP Server Module Ethernet Target Driver n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a USB Device Target Support USB OTG EUSBD-Midi EUSBD-HID EUSBD-MTP EUSBD-PHDC EUSBD-PictBridge EUSBD-PRNT EUSBD-TRGT EUSBD-OTG no n/a n/a n/a n/a n/a n/a n/a n/a n/a USB Host Stack Base Software USB Host Class Driver For External Hubs USB Host Class Driver For Mass Storage USB Host Class Driver For Remote NDIS USB Host Class Driver For CDC Abstract Control Model USB Host Class Driver For CDC Ethernet Control Model USB Host Class Driver For CDC Ethernet Emulation Module USB Host Class Driver For OBEX devices USB Host Class Driver For FTDI USB serial devices USB Host Class Driver For Audio USB Host Class Driver For Midi USB Host Class Driver For Human Interface Device USB Host Class Driver For Media Transfer Protocol USB Host Class Driver For Printers USB Host STM32 Target Specific Driver USB Device Stack Base Software USB Device Class Driver for Mass Storage USB Device Class Driver for RNDIS USB Device Class Driver for CDC-ACM USB Device Class Driver for CDC-ECM USB Device Class Driver for CDC-EEM USB Device Class Driver for Audio USB Device Class Driver for Midi USB Device Class Driver for HID USB Device Class Driver for Media Transfer Protocol USB Device Class Driver for Personal Healthcare Devices USB Device Class Driver for Pictbridge USB Device Class Driver for Printers USB Device Target Specific Driver Module for Systems Requiring HNP and SRP n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a

no * * * * * * * * * * * * * * * * no * * * * * * * * * * * * * * * * no no no no no no

*requires external controller

Flash Management
Flash Translation Layer MD-SAFEFTL MD-SSD-FTL FAT+MD-SAFEFTL SAFEFAT+MD-SAFEFTL DFML Failsafe Flash File System SAFEFLASH NOR-DRV NAND-DRV DF-DRV TINY- DF TINY-STF TINY-RAM TINY-BWA Fail-safe Flash Translation Layer SSD Media Driver for Parallel NAND FAT with Flash Translation Layer SafeFAT with Flash Translation Layer Dataflash Flash Management Layer SafeFLASH Fail safe File System SafeFLASH NOR Flash Driver SafeFLASH NAND Flash Driver SafeFLASH Atmel Dataflash Driver TINY File System for Atmel Dataflash Tiny File System for ST Flash Tiny File System for RAM Tiny File System for Byte Writable Arrays no no no no no no no no no no n/a n/a n/a n/a n/a n/a n/a n/a n/a n/a no no n/a n/a n/a n/a

Networking
IPv4/v6 Stack MISRA Compliant

n/a n/a n/a n/a n/a

n/a n/a n/a n/a

Bootloaders
SD Card bootloader Serial bootloader Pendrive bootloader PC/USB bootloader Encryption BL-FAT BL-SER BL-EUSBH BL-EUSBD BL-ENC Bootloader using SD Card Bootloader using Serial Link Bootloader for USB Pendrive Bootloader for USB PC AES Bootloader Encryption Module n/a n/a

Target

ETHERNET-DRV

n/a n/a n/a n/a n/a n/a n/a

n/a n/a n/a n/a n/a n/a n/a

Scheduling
eTaskSync Scheduler TASK MISRA compliant cooperative scheduler

Das könnte Ihnen auch gefallen