Go to file
Przemyslaw Stekiel b305890fc7 tests-mbed_drivers-lp_timer: change delay method
The test sometimes fails on NRF51_DK (test case: "Test: LowPowerTimer - time measurement 1 ms.") in morph tests.

The test verifies if LowPowerTimer class correctly counts elapsed time. Sometimes we got measured ~1600 us for delay 1000 us (delta 550 us).
The delay is performed using `wait_us()` function which for delays greater than or equal to 1 ms (our case) calls `Thread::wait((uint32_t)ms);`. This causes rescheduling and potentially can put board into sleep (deep sleep mode is disabled by `wait_us()`). For our test purposes we don't need rescheduling/sleep since this actions takes extra time and have influence on the time measurement accuracy.
The solution is to implement function for delay which is based on busy loop and uses us ticker. It has been verified that this solves the problem. With this fix when measurement of 1 ms is repeated 1000 times we got usually measured time equal to ~1080 us, and sometimes ~1300us (checked that this is caused by systick interrupt handling). Since this is test for drivers layer and the results are acceptable I decided to not disabling systick in the test).
2018-07-15 22:53:59 -05:00
.github Merge pull request #6728 from 0xc0170/fix-issue-template 2018-05-07 10:38:49 -05:00
TESTS tests-mbed_drivers-lp_timer: change delay method 2018-07-15 22:53:59 -05:00
cmsis Add volatile modifier for CP15 accessors 2018-06-15 13:30:56 +01:00
drivers Improve efficiency and formatting of ITM output 2018-07-15 22:53:31 -05:00
events Introduce API to query how much time is left for delayed event 2018-05-18 12:55:06 +03:00
features Add Apache licenses to ns_hal files 2018-07-15 22:53:45 -05:00
hal Improve efficiency and formatting of ITM output 2018-07-15 22:53:31 -05:00
platform Remove error reporting for release builds 2018-07-15 22:53:45 -05:00
rtos Add _RTX_ define where it's needed and used 2018-07-15 22:53:45 -05:00
targets Cellular: HSI set to be source clock for WISE_1570 2018-07-15 22:53:58 -05:00
tools Ensure that files generated have a directory 2018-07-15 22:53:58 -05:00
.astyleignore AStyle: ignore hal storage abstraction 2018-07-15 22:53:30 -05:00
.astylerc AStyle: fix indentation for longer lines 2018-06-15 13:30:56 +01:00
.coveragerc Exclude libraries and tests from coverage numbers 2017-09-25 11:51:31 -05:00
.gitattributes Added .gitattributes for automatic LF line ending conversion 2013-08-08 13:19:34 +03:00
.gitignore BLE: Initialize the pal in GenericSecurityManager 2018-03-23 12:06:08 +00:00
.pylintrc Add pylint configuration file 2016-08-16 11:48:45 -05:00
.travis.yml Moved the sourcing of the astyle archive to AWS from SourceForge. SF has been failing intermitantly, and appears to not explicitly allow the automatic downloading of archives. 2018-06-29 17:10:17 +01:00
CONTRIBUTING.md Update link in CONTRIBUTING.md 2017-06-09 16:38:38 -05:00
DOXYGEN_FRONTPAGE.md Very minimal text 2016-08-04 14:09:59 +01:00
Jenkinsfile Jenkinsfile: remove client app test temporarily 2017-06-01 12:15:09 +01:00
LICENSE Add Apache v2 LICENSE file 2013-08-06 12:05:04 +01:00
LICENSE-BSD-3-Clause Adding license text and BSD-Clause 3 2018-02-09 11:00:56 -06:00
README.md Simple typo fix in the README.md 2018-01-08 19:50:18 +00:00
doxyfile_options Rename DEVICE_LOWPOWERTIMER to DEVICE_LPTICKER 2018-05-25 12:20:09 -05:00
doxygen_options.json Rename DEVICE_LOWPOWERTIMER to DEVICE_LPTICKER 2018-05-25 12:20:09 -05:00
logo.png Readme updates for style and branding 2017-12-04 14:59:16 -06:00
mbed.h Update Mbed version block for patch release 2018-06-29 17:11:51 +01:00
requirements.txt Added missing six requirement 2018-05-11 14:25:27 -05:00

README.md

Mbed OS

Build status release Build status master Tools coverage status PR progress

Arm Mbed OS is an open source embedded operating system designed specifically for the "things" in the Internet of Things. It includes all the features you need to develop a connected product based on an Arm Cortex-M microcontroller, including security, connectivity, an RTOS and drivers for sensors and I/O devices.

Mbed OS provides a platform that includes:

  • Security foundations.
  • Cloud management services.
  • Drivers for sensors, I/O devices and connectivity.

Release notes

The release notes detail the current release. You can also find information about previous versions.

Getting started for developers

We have a developer website for asking questions, engaging with others, finding information on boards and components, using an online IDE and compiler, reading the documentation and learning about what's new and what's coming next in Mbed OS.

Getting started for contributors

We also have a contributing and publishing guide that covers licensing, contributor agreements and style guidelines.