| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| distortos-0.3.0.tar.xz | 2016-11-24 | 605.1 kB | |
| distortos-0.3.0.7z | 2016-11-24 | 598.6 kB | |
| README.md | 2016-11-24 | 5.2 kB | |
| v0.3.0 source code.tar.gz | 2016-11-24 | 4.1 MB | |
| v0.3.0 source code.zip | 2016-11-24 | 4.6 MB | |
| Totals: 5 Items | 10.0 MB | 1 | |
Added
- Support for periodic execution of software timers. All overloads of
SoftwareTimer::start()were extended with optional second argument with period. If the period is 0 (which is the default value), software timer's function is executed only once. Otherwise it will be executed periodically until the software timer is stopped. devices::UartBaseinterface class, which can be used as a private base for devices using UART interface.devices::UartLowLevelinterface class, which is a low-level interface to hardware-dependent UART driver.chip::ChipUartLowLevelclass - interrupt-driven implementation ofdevices::UartLowLevelinterface for STM32F0, STM32F1 and STM32F4.devices::SpiMasterBaseinterface class, which can be used as a private base for devices using SPI as bus master.devices::SpiMasterLowLevelinterface class, which is a low-level interface to hardware-dependent SPI bus master driver.chip::ChipSpiMasterLowLevelclass - interrupt-driven implementation ofdevices::SpiMasterLowLevelinterface for STM32F0, STM32F1 and STM32F4.- "Peripherals configuration" Kconfig menu, where low-level drivers for SPI bus master and U[S]ART can be selected.
uarts.hppheader for STM32F0, STM32F1 and STM32F4 with declarations of all enabled low-level U[S]ART drivers.spis.hppheader for STM32F0, STM32F1 and STM32F4 with declarations of all enabled low-level SPI master drivers.devices::SerialPortclass - universal serial port device with an interface similar to standard files (open(),close(),read(),write()).read()andwrite()member functions of this class support both blocking (with or without timeout) and non-blocking behaviour. Convenient wrappers for reading/writing with timeout are also provided:tryReadFor(),tryReadUntil(),tryWriteFor()andtryWriteUntil().estd::ScopeGuardtemplate class, which can be used to execute bound function on scope exit using RAII pattern.devices::Rs485class - RS-485 device with all features ofdevices::SerialPortand with automatic management of "driver enable" output pin.devices::SpiMasteranddevices::SpiDeviceclasses, which enable easy communication with multiple SPI slave devices connected to the same SPI bus master.devices::SpiEepromclass which is a driver for common SPI EEPROM chips: Atmel AT25xxx, ON Semiconductor CAT25xxx, ST M95xxx, Microchip 25xxxxx or similar.- Support for 4 new STM32F412 chips.
- New package types for STM32F410CB and STM32F410RB chips.
- Support for
assert()- override of newlib's__assert_func(), weakassertHook()for application and option to enable/disable assertions in Kconfig menus. - Extend
estd::ContiguousRangewith support forstd::array, constructor for non-const -> const conversions and various useful functions:cbegin(),cend(),rbegin(),rend(),crbegin(),crend(). - Option in Kconfig menus for manual configuration of ROM's offset and size in generated linker script. This can be useful when the device has a bootloader at the beginning of flash, when the application is a bootloader and/or when the application uses a few last ROM pages for its own purposes (e.g. emulated EEPROM, storing configuration, logging, ...).
architecture::isInInterruptContext()which checks whether thread or interrupt context is currently active. An example use is when the application needs to decide between blocking or non-blocking behaviour, as blocking is not possible in interrupt context.protectedChipInputPin::getInvertedMode(),ChipInputPin::setInvertedMode(),ChipOutputPin::getInvertedMode()andChipOutputPin::setInvertedMode()functions, which - if needed - can be madepublicby deriving from these classes.- Missing tests of timers: basic operations of periodic timers, synchronous and asynchronous stops and restarts, reading of state in timer's function.
- New chips: STM32F071C8, STM32F101C4, 4 STM32F412xE chips, 3 STM32F469Vx chips, 3 STM32F469Zx chips, 2 STM32F479Vx chips and 2 STM32F479Zx chips.
- New package types: UFQFPN48 for STM32F101C8, LQFP176 for STM32F469IG.
Changed
- Replace generator of
distortosConfiguration.hthat uses AWK (makeDistortosConfiguration.awk) with the one using shell, cat and sed (makeDistortosConfiguration.sh). With this change AWK is no longer needed to configure & build this project. - Merge GPIO drivers for STM32.
- Update CMSIS-STM32F0 to version 1.6.0.
- Update CMSIS-STM32F1 to version 1.4.0.
- Update CMSIS-STM32F4 to version 1.13.0.
Fixed
- Fix generated linker scripts for older versions of ld (like 2.24.0.20141128), where hidden symbols cannot be used in expressions.
- Fix failure of test application for new versions of "official" ARM toolchain (5.x).
- Fixes necessary for compilation and proper behaviour in GCC 6.2.0 - mainly related to
reinterpret_cast<>()in constant expressions. - ST's website no longer lists WLCSP49 as package type for STM32F401CB.