Skip to content

Commit 88e88e4

Browse files
committed
Tidying up header levels
1 parent 2ce32cc commit 88e88e4

File tree

102 files changed

+899
-904
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

102 files changed

+899
-904
lines changed

docs/api/api.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Full API list
22

3-
# Platform APIs
3+
## Platform APIs
44

55
[Platform APIs](platform.html) provide general purpose MCU management infrastructure, common data structures and a consistent user experience on top of different standard libraries and toolchains.
66

@@ -45,7 +45,7 @@
4545
</tbody>
4646
</table>
4747

48-
# Drivers APIs
48+
## Drivers APIs
4949

5050
[Driver APIs](drivers.html) include analog and digital inputs and outputs on development boards, as well as digital interfaces, which allow your board to interface with a computer or external devices.
5151

@@ -99,7 +99,7 @@
9999
</tbody>
100100
</table>
101101

102-
# RTOS APIs
102+
## RTOS APIs
103103

104104
The [Mbed OS RTOS](rtos.html) capabilities include managing objects such as threads, synchronization objects and timers. It also provides interfaces for attaching an application-specific idle hook function, reads the OS tick count and implements functionality to report RTOS errors.
105105

@@ -127,7 +127,7 @@ The [Mbed OS RTOS](rtos.html) capabilities include managing objects such as thre
127127
</tbody>
128128
</table>
129129

130-
# USB APIs
130+
## USB APIs
131131

132132
The Mbed OS classes providing USB peripheral functionality, also known as [USB components](../apis/usb.html), inherit from USBDevice and provide specific USB peripherial functionality.
133133

@@ -150,7 +150,7 @@ The Mbed OS classes providing USB peripheral functionality, also known as [USB c
150150
</tbody>
151151
</table>
152152

153-
# Network socket APIs
153+
## Network socket APIs
154154

155155
[Network socket APIs](network-socket.html) include the application programming interface for IP networking. In Mbed OS, this API supports both TCP and UDP protocols.
156156

@@ -171,7 +171,7 @@ The Mbed OS classes providing USB peripheral functionality, also known as [USB c
171171
</tbody>
172172
</table>
173173

174-
# Network interfaces APIs
174+
## Network interfaces APIs
175175

176176
[Network interfaces](network-interfaces.html) are the application level APIs where users choose the driver, connectivity method and IP stack. These include ethernet, Wi-Fi, cellular and mesh interfaces.
177177

@@ -189,7 +189,7 @@ The Mbed OS classes providing USB peripheral functionality, also known as [USB c
189189
</tbody>
190190
</table>
191191

192-
# Bluetooth Low Energy (BLE) APIs
192+
## Bluetooth Low Energy (BLE) APIs
193193

194194
[Bluetooth low energy (BLE)](bluetooth.html) is a low power wireless technology standard for building personal area networks. Typical applications of BLE are health care, fitness trackers, beacons, smart home, security, entertainment, proximity sensors, industrial and automotive.
195195

@@ -210,7 +210,7 @@ The Mbed OS classes providing USB peripheral functionality, also known as [USB c
210210
</tbody>
211211
</table>
212212

213-
# LoRaWAN APIs
213+
## LoRaWAN APIs
214214

215215
Arm Mbed OS provides a native network stack for [LoRaWAN](lorawan.html). LoRaWAN is a technology designed for low-power battery-powered devices. These devices operate in an unlicensed spectrum, creating high density wide-area networks.
216216

@@ -225,7 +225,7 @@ Arm Mbed OS provides a native network stack for [LoRaWAN](lorawan.html). LoRaWAN
225225
</tbody>
226226
</table>
227227

228-
# NFC APIs
228+
## NFC APIs
229229

230230
You can use [Near-Field Communication (NFC)](nfc.html), a short-range radio technology, to enable use cases such as contactless payments, access control and device pairing.
231231

@@ -243,7 +243,7 @@ You can use [Near-Field Communication (NFC)](nfc.html), a short-range radio tech
243243
</tbody>
244244
</table>
245245

246-
# Security API
246+
## Security API
247247

248248
With [Arm Mbed TLS](security.html), a comprehensive SSL/TLS solution, you can include cryptographic and SSL/TLS capabilities in your code.
249249

@@ -261,7 +261,7 @@ With [Arm Mbed TLS](security.html), a comprehensive SSL/TLS solution, you can in
261261
</tbody>
262262
</table>
263263

264-
# Storage APIs
264+
## Storage APIs
265265

266266
The [storage APIs](storage.html) include file system APIs, for file system operations, and block devices, which provide the raw storage for the file systems.
267267

docs/api/bluetooth/BLE.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ Arm Mbed BLE, also called `BLE_API`, is the Bluetooth Low Energy software soluti
88

99
Mbed’s `BLE_API` interfaces with the BLE controller on the platform. It hides the BLE stack’s complexity behind C++ abstractions and is compatible with all BLE-enabled Mbed platforms. The Mbed OS `BLE_API` automatically configuring the clocks, timers and other hardware peripherals to work at their lowest power consumption.
1010

11-
# `BLE_API`, bridges and stacks
11+
## `BLE_API`, bridges and stacks
1212

1313
<span class="images">![](../../images/BLEDiagram.png)</span>
1414

@@ -18,7 +18,7 @@ You can build a BLE application using Mbed OS, `BLE_API` and a controller-specif
1818
- The bridge software is specific to each vendor’s platform. It provides the instantiations for the interfaces `BLE_API` offers and helps drive the underlying controller and Bluetooth stack.
1919
- The Bluetooth stack implements the Bluetooth protocol and is specific to the controller, so a vendor using different controllers may provide different stacks.
2020

21-
# Inside `BLE_API`
21+
## Inside `BLE_API`
2222

2323
<span class="images">![](../../images/Inside_API.png)</span>
2424

@@ -28,7 +28,7 @@ You can build a BLE application using Mbed OS, `BLE_API` and a controller-specif
2828

2929
1. Classes under `ble/services` to offer reference implementations for many of the commonly used GATT profiles. The code under 'services/' isn't essential, but it’s a useful starting point for prototyping. We continue to implement the standard GATT profiles.
3030

31-
# The BLEDevice class and header
31+
## The BLEDevice class and header
3232

3333
The entry point of Mbed's `BLE_API` is the BLE class accessible using the header `ble/BLE.h`. This class allows you to obtain a BLE object that includes the basic attributes of a spec-compatible BLE device and can work with any BLE radio:
3434

@@ -44,31 +44,31 @@ The class's member functions can be divided by purpose:
4444

4545
1. Accessor to Bluetooth Modules that manage GAP, GATT or the security.
4646

47-
# Usage
47+
## Usage
4848

4949
1. Set up advertising and connection modes.
5050
1. Assign UUIDs to the service and its characteristic.
5151
1. Create an input characteristic.
5252
1. Construct a service class and add it to the BLE stack.
5353
1. Push notifications when the characteristic's value changes.
5454

55-
# BLE class reference
55+
## BLE class reference
5656

5757
[![View code](https://www.mbed.com/embed/?type=library)](https://os.mbed.com/docs/development/mbed-os-api-doxy/class_b_l_e.html)
5858

59-
# Example: BLE beacon
59+
## Example: BLE beacon
6060

6161
Here is an example demonstrating how you can create a BLE beacon.
6262

6363
[![View code](https://www.mbed.com/embed/?url=https://github.com/ARMmbed/mbed-os-example-ble/blob/master/BLE_Beacon/source)](https://github.com/ARMmbed/mbed-os-example-ble/blob/mbed-os-5.14/BLE_Beacon/source/main.cpp)
6464

65-
# Example: BLE heart rate monitor
65+
## Example: BLE heart rate monitor
6666

6767
Here is an example demonstrating how to build a heart rate sensor that can be connected and monitored by a BLE client such as your phone.
6868

6969
[![View code](https://www.mbed.com/embed/?url=https://github.com/ARMmbed/mbed-os-example-ble/blob/master/BLE_HeartRate/source)](https://github.com/ARMmbed/mbed-os-example-ble/blob/mbed-os-5.14/BLE_HeartRate/source/main.cpp)
7070

71-
# Related content
71+
## Related content
7272

7373
- Mbed Enabled [targets and components](https://os.mbed.com/platforms/?mbed-enabled=15&connectivity=3) that support BLE.
7474
- [BLE tutorial](../tutorials/ble-tutorial.html).

docs/api/bluetooth/ble_tutorial.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<h1 id="ble-tutorial">BLE</h1>
22

3-
# Getting started
3+
## Getting started
44

55
1. Choose an [Arm Mbed board that supports BLE](https://os.mbed.com/platforms/?mbed-enabled=15&connectivity=3), such as the [NRF51-DK](https://os.mbed.com/platforms/Nordic-nRF51-DK/).
66

@@ -21,7 +21,7 @@
2121

2222
<span>**Tip:** Despite the differences between the different Mbed OS versions, there is only **one** version of Mbed BLE, and it is easy to move code from one version of the OS to another. Choose the sample you use according to the version of Mbed OS supported by your development board.</span>
2323

24-
# Going further
24+
## Going further
2525

2626
- The Mbed BLE [API reference](../apis/ble.html) offers the full details of the API.
2727

docs/api/connectivity-arch.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<h1 id="connectivity-tech">Network connectivity in Mbed OS</h1>
22

3-
# Supported connectivity technologies
3+
## Supported connectivity technologies
44

55
Mbed OS offers a strong, integrated stack of standards-based technologies:
66

@@ -18,11 +18,11 @@ Non-IP devices require a gateway:
1818
- LoRaWAN.
1919
- Cellular.
2020

21-
# Choosing your connectivity method
21+
## Choosing your connectivity method
2222

2323
There is a wide variety of possibilities for connected devices, and there is no globally correct connectivity method. Choose a method that fits your application needs, and then choose a device that can support that method. If you're already committed to a device type, you may need to adjust your application to work within that device's connectivity constraints.
2424

25-
# Internet protocol (IP) networking
25+
## Internet protocol (IP) networking
2626

2727
Mbed OS supports various IP-based connectivity options and IP stacks.
2828

@@ -32,15 +32,15 @@ Our Socket API standardizes all of our connectivity options. It supports both IP
3232

3333
Mbed OS provides network drivers, such as Ethernet, Wi-Fi and cellular.
3434

35-
## Wi-Fi
35+
### Wi-Fi
3636

3737
Wi-Fi has a relatively high throughput of up to 1 Gbps, which is suitable for data-heavy applications. The cost of this throughput is high power consumption. Wi-Fi is not ideal for long-term deployments of battery-powered devices. It can also prove problematic where other devices compete for the same bandwidth.
3838

3939
It works for proof-of-concept devices because the infrastructure is in place in most offices, and its WPA2 security is familiar to developers.
4040

4141
End devices for Wi-Fi are complicated due to hardware requirements and limitations. The network cost depends on whether the deployment location already includes a well-maintained Wi-Fi infrastructure. Wi-Fi is ubiquitous indoors, and Wi-Fi devices have a range of tens of meters, so for certain applications, such as those for homes and offices, the infrastructure likely already exists.
4242

43-
## Cellular
43+
### Cellular
4444

4545
Cellular has a variable throughput, reaching 10 Mbps. Its coverage is extensive, and its range is 25-100 km, so it is commonly used in transportation and logistics. It is also well suited for proof of concept, because, like Wi-Fi, it relies on an existing infrastructure. It's suitable for many use cases, from monitoring temperature sensors to streaming video.
4646

@@ -54,15 +54,15 @@ The new cellular technologies, NB-IoT and CAT-M1, are designed for IoT devices.
5454

5555
It can be deployed on a single spectrum, reducing antenna configuration complexity, but isn't deployed worldwide and can take years to be deployed in countries using 3G.
5656

57-
## Bluetooth Low Energy (BLE)
57+
### Bluetooth Low Energy (BLE)
5858

5959
BLE is optimized for cheap, battery-based devices and has a low memory footprint. It is widely adopted for connected spaces but requires setting up an infrastructure. Its range is up to 100 meters, with 1 mbps bandwidth. You need an edge gateway, so devices in your network can connect to the internet.
6060

6161
Typical applications of BLE are health care, fitness trackers, beacons, smart homes, security, entertainment, proximity sensors, industrial applications and automotives.
6262

6363
To learn how to use BLE on Mbed OS, please refer to the [Bluetooth overview](../apis/ble.html).
6464

65-
## 6LoWPAN Mesh
65+
### 6LoWPAN Mesh
6666

6767
Mesh networks are designed to form IPv6 networks automatically for a larger area than is possible with single radio link. TDifferent protocols form flexible network topology using different design principles. As a technology designed for large-scale deployment, 6LoWPAN-based mesh is optimized for long battery life and low cost.
6868

@@ -80,25 +80,25 @@ Additionally, Mbed OS Thread stack is certified using predefined test sets for s
8080

8181
For descriptions of different 6LoWPAN mesh networks, please see the introduction of the [Thread](../reference/thread-tech.html), [Wi-SUN](../reference/wisun-tech.html) and [6LoWPAN-ND](../reference/6LoWPAN-ND-tech.html) mesh networks.
8282

83-
# Non-IP networking
83+
## Non-IP networking
8484

85-
## LoRaWAN
85+
### LoRaWAN
8686

8787
LoRaWAN, a technology not based on IP, is optimized for low power consumption and a low memory footprint (allowing low-cost devices). The downside is a low throughput of no more than 50 kbps, as well as delays.
8888

8989
Because of its long range (up to 20 km) and low power, it is suitable for outdoor solutions with low data rates.
9090

9191
The [LoRa](lora-tech.html) section and [LoRa tutorial](../tutorials/LoRa-tutorial.html) describe LoRA networking in detail.
9292

93-
## NFC
93+
### NFC
9494

9595
<span class="images">![](../../images/n_mark.png)<span>NFC</span></span>
9696

9797
Near-field communication (NFC) is a short range (few centimeters) wireless technology standard for personal area networks. Typical uses of NFC are commissioning, sharing of small content and Bluetooth connection initiation and out-of-band pairing.
9898

9999
To learn how to use NFC with Mbed OS, please refer to the [Mbed OS NFC overview](../apis/nfc.html).
100100

101-
## NB-IoT cellular
101+
### NB-IoT cellular
102102

103103
Non-IP Data Delivery (NIDD) is a new feature for communication over NB-IoT. Control Plane cellular IoT EPS optimization enables NIDD, which is meant to provide improved support of small data transfer. It does this by transporting user data over the control channel, thus reducing the total number of control plane messages when handling a short data transaction.
104104

docs/api/connectivity-config.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -143,7 +143,7 @@ Name: lwip.use-mbed-trace
143143
No value set
144144
```
145145

146-
# Selecting the default network interface
146+
## Selecting the default network interface
147147

148148
Applications can use the default network interface without directly specifying its type. This requires settings from `mbed_app.json` to work.
149149

docs/api/io/alarm-tutorial.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ mbed import mbed-os-example-alarm
1313
cd mbed-os-example-alarm
1414
```
1515

16-
If using the Mbed Online Compiler, use the **Import into Mbed IDE" button below:
16+
If using the Mbed Online Compiler, use the **Import into Mbed IDE** button below:
1717

1818
[![View code](https://www.mbed.com/embed/?url=https://github.com/ARMmbed/mbed-os-examples-docs_only/blob/master/Tutorials_UsingAPIs/Alarm)](https://github.com/ARMmbed/mbed-os-examples-docs_only/blob/master/Tutorials_UsingAPIs/Alarm/main.cpp)
1919

docs/api/io/flow_control.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,15 @@
22

33
We can use Blinky to explore flow control and task management in Arm Mbed OS applications. We'll look at automated actions first, then move on to handling user actions.
44

5-
# Flow control for automated actions
5+
## Flow control for automated actions
66

77
If we want to automatically blink an LED, we have three main techniques:
88

99
1. [Busy wait](#busy-wait)
1010
1. [Ticker](#ticker)
1111
1. [Thread](#thread)
1212

13-
## Busy wait
13+
### Busy wait
1414

1515
Busy wait is a method that blocks the processor for a period of time. This is an effective way to create time delays, but it’s inefficient because it wastes processor time and keeps the processor running at full power for the duration of the wait:
1616

@@ -20,25 +20,25 @@ Notice `printf()`; you can enable this by uncommenting the line (remove the `//`
2020

2121
<span class="tips">**Tip:** We recommend using [CoolTerm](http://freeware.the-meiers.org/), as it works the same on Windows, Linux and OS X. [Here is a handy video on how to use CoolTerm](https://www.youtube.com/watch?v=jAMTXK9HjfU) to connect to your board and view the `printf()` statements. For more information, see our [serial communication tutorials](../tutorials/serial-communication.html).</span>
2222

23-
## Ticker
23+
### Ticker
2424

2525
Tickers and timers are another way of creating a time interval. These methods are somewhat better than busy wait because they allow other code to run while you are waiting. It is even possible, though nontrivial, to sleep during the wait period.
2626

2727
Here is an example that doesn't include sleeping:
2828

2929
[![View code](https://www.mbed.com/embed/?url=https://github.com/ARMmbed/mbed-os-examples-docs_only/blob/master/Tutorials_UsingAPIs/Flow-Control-Ticker)](https://github.com/ARMmbed/mbed-os-examples-docs_only/blob/master/Tutorials_UsingAPIs/Flow-Control-Ticker/main.cpp)
3030

31-
## Thread
31+
### Thread
3232

3333
Threads are the most efficient way to blink an LED. During the waiting period, it is possible to take advantage of Mbed OS optimizations to automatically conserve power and deal with other tasks. While this is not the most visually appealing method, nor the simplest, it is the preferred way for large scale deployments:
3434

3535
[![View code](https://www.mbed.com/embed/?url=https://github.com/ARMmbed/mbed-os-examples-docs_only/blob/master/Tutorials_UsingAPIs/Flow-Control-Thread)](https://github.com/ARMmbed/mbed-os-examples-docs_only/blob/master/Tutorials_UsingAPIs/Flow-Control-Thread/main.cpp)
3636

37-
# Flow control for manual actions
37+
## Flow control for manual actions
3838

3939
Let’s try using a DigitalIn pin from the button to control the application. There are two ways to read input data: we can either constantly poll the button in a busy wait, or set an interrupt to trigger when pressed. We’ll explore these methods below.
4040

41-
## Busy wait button
41+
### Busy wait button
4242

4343
We can wait for digital input the same way we waited for time to pass - using a `while()` loop. In the example below the digital input is a button press, which causes the application to flash the LED and then wait for 1 second.
4444

@@ -50,7 +50,7 @@ We constantly poll the button to see whether it has a value that matches `button
5050

5151
`button_press` is used to denote what value the switch uses to represent the state *pushed*. Most switches are by default open (unpressed), so they will read as 0 while pressed. If you see your LED blinking without the button being pressed - try changing `button_press` to `1`.
5252

53-
## Interrupt button
53+
### Interrupt button
5454

5555
An alternative way to poll the button is to use an interrupt. Interrupts let you say `when that pin changes value, call this function`. In other words, we can tell the MCU to call a function when the button is pressed. In our case, that function toggles the LED:
5656

0 commit comments

Comments
 (0)