Go to file
TomoYamanaka 52cbc33d44 Implementation of LPTICKER feature for Renesas mbed boards
Although other venders implement this feature by using RTC, in my H/W(RZ_A1), I cannot use RTC because it does not satisfy the spec of LP Ticker (ms order and low frequency between 8 KHz and 64 KHz).
Therefore I implemented this feature by creating 1024 division by MTU2(Multi function Timer pulse Unit 2) in order to satisfy this spec.
As a result of investigating, the most unaffected channel among MTU2 placed on GR-PEACH and GR-LYCHEE was channel 3, so I use channel 3 for this feature.

- mbed_drv_cfg.h
  I added a macro of MTU2 channel to this file for commonalizing code for GR-PEACH and GR-LYCHEE, and referenced it's macro at us_ticker.c.
- targets.json
  I added a macro for enabling LP Ticker.
- mtu2.c mtu2.h
  I defined fuction of MTU2's clock supply and stop.
  Because MTU2 is utilized by pwm driver too, those function were referenced at lp_ticker driver and pwm driver.

- lp_ticker.c lp_ticker_init()
  In order to satisfy the LP Ticker spec, I implemented by creating 1024 division by MTU2.
  When an interrupt is required, it will be set with ticker_set_interrupt().

- lp_ticker.c lp_ticker_free()
  This function stops the counting and powerdown the lp_ticker.

- lp_ticker.c lp_read()
  This function returns the timer counter of MTU2.

- lp_ticker.c lp_ticker_set_interrupt()
  In order to satisfy specifications, I implemented lp_ticker_set_interrupt() function.

- lp_ticker.c lp_ticker_fire_interrupt()
  In order to satisfy spec, I implemented lp_ticker_fire_interrupt() function.
  Also I added GIC_EnableIRQ for allowing the interrupt at end of function.

- lp_ticker.c lp_ticker_get_info()
  To satisfy the spec, I implemented lp_ticker_get_info() function. The value of freq includes rounding off.
2018-07-31 19:22:03 +09:00
.github Merge pull request #6728 from 0xc0170/fix-issue-template 2018-05-07 10:38:49 -05:00
TESTS Merge pull request #7302 from OpenNuvoton/nuvoton_m2351_v1.1 2018-07-18 08:49:55 -05:00
cmsis Add volatile modifier for CP15 accessors 2018-06-07 16:47:12 +09:00
drivers Improve efficiency and formatting of ITM output 2018-07-04 10:16:28 +03:00
events Introduce API to query how much time is left for delayed event 2018-05-18 12:55:06 +03:00
features Merge pull request #7302 from OpenNuvoton/nuvoton_m2351_v1.1 2018-07-18 08:49:55 -05:00
hal Improve efficiency and formatting of ITM output 2018-07-04 10:16:28 +03:00
platform Update stats to fetch Mbed OS version info 2018-07-13 11:58:49 -05:00
rtos Allow non-secure main thread to call secure functions 2018-07-12 18:01:32 +08:00
targets Implementation of LPTICKER feature for Renesas mbed boards 2018-07-31 19:22:03 +09:00
tools Merge pull request #7302 from OpenNuvoton/nuvoton_m2351_v1.1 2018-07-18 08:49:55 -05:00
.astyleignore AStyle: ignore hal storage abstraction 2018-06-29 10:36:36 +01:00
.astylerc AStyle: fix indentation for longer lines 2018-05-24 14:15:52 +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. 2018-06-26 10:54:57 -05: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
README.md Simple typo fix in the README.md 2018-01-08 19:50:18 +00:00
doxyfile_options Remove FEATURE_LWIP. The LwIP stack is enabled on all builds now 2018-06-21 11:00:00 +03:00
doxygen_options.json Remove FEATURE_LWIP. The LwIP stack is enabled on all builds now 2018-06-21 11:00:00 +03:00
logo.png Readme updates for style and branding 2017-12-04 14:59:16 -06:00
mbed.h Separate version header file to get version updates in Mbed OS 2018-07-11 09:41:30 -05: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.