Add "name" and vendor links to frameworks

This commit is contained in:
Ivan Kravets
2015-03-16 17:30:23 +02:00
parent 19822ff08f
commit 49ab5e718e
14 changed files with 38 additions and 11 deletions

View File

@ -4,6 +4,8 @@ Framework ``arduino``
=====================
Arduino Framework allows writing cross-platform software to control devices attached to a wide range of Arduino boards to create all kinds of creative coding, interactive objects, spaces or physical experiences.
For more detailed information please visit `vendor site <http://arduino.cc/en/Reference/HomePage>`_.
.. contents::
Boards

View File

@ -4,6 +4,8 @@ Framework ``cmsis``
===================
The ARM Cortex Microcontroller Software Interface Standard (CMSIS) is a vendor-independent hardware abstraction layer for the Cortex-M processor series and specifies debugger interfaces. The CMSIS enables consistent and simple software interfaces to the processor for interface peripherals, real-time operating systems, and middleware. It simplifies software re-use, reducing the learning curve for new microcontroller developers and cutting the time-to-market for devices.
For more detailed information please visit `vendor site <http://www.arm.com/products/processors/cortex-m/cortex-microcontroller-software-interface-standard.php>`_.
.. contents::
Boards

View File

@ -4,6 +4,8 @@ Framework ``energia``
=====================
Energia framework enables pretty much anyone to start easily creating microcontroller-based projects and applications. Its easy-to-use libraries and functions provide developers of all experience levels to start blinking LEDs, buzzing buzzers and sensing sensors more quickly than ever before.
For more detailed information please visit `vendor site <http://energia.nu/reference/>`_.
.. contents::
Boards

View File

@ -4,6 +4,8 @@ Framework ``mbed``
==================
The mbed framework The mbed SDK has been designed to provide enough hardware abstraction to be intuitive and concise, yet powerful enough to build complex projects. It is built on the low-level ARM CMSIS APIs, allowing you to code down to the metal if needed. In addition to RTOS, USB and Networking libraries, a cookbook of hundreds of reusable peripheral and module libraries have been built on top of the SDK by the mbed Developer Community.
For more detailed information please visit `vendor site <http://mbed.org/>`_.
.. contents::
Boards

View File

@ -2,7 +2,9 @@
Framework ``opencm3``
=====================
The libopencm3 framework aims to create a free/libre/open-source firmware library for various ARM Cortex-M0(+)/M3/M4 microcontrollers, including ST STM32, Ti Tiva and Stellaris, NXP LPC 11xx, 13xx, 15xx, 17xx parts, Atmel SAM3, Energy Micro EFM32 and others.
The libOpenCM3 framework aims to create a free/libre/open-source firmware library for various ARM Cortex-M0(+)/M3/M4 microcontrollers, including ST STM32, Ti Tiva and Stellaris, NXP LPC 11xx, 13xx, 15xx, 17xx parts, Atmel SAM3, Energy Micro EFM32 and others.
For more detailed information please visit `vendor site <http://www.libopencm3.org/wiki/Main_Page>`_.
.. contents::

View File

@ -4,6 +4,8 @@ Framework ``spl``
=================
The ST Standard Peripheral Library provides a set of functions for handling the peripherals on the STM32 Cortex-M3 family. The idea is to save the user (the new user, in particular) having to deal directly with the registers.
For more detailed information please visit `vendor site <http://www.st.com/web/en/catalog/tools/FM147/CL1794/SC961/SS1743?sc=stm32embeddedsoftware>`_.
.. contents::
Boards

View File

@ -2,6 +2,8 @@
# See LICENSE for details.
"""
Arduino
Arduino Framework allows writing cross-platform software to control
devices attached to a wide range of Arduino boards to create all
kinds of creative coding, interactive objects, spaces or physical experiences.

View File

@ -2,6 +2,8 @@
# See LICENSE for details.
"""
CMSIS
The ARM Cortex Microcontroller Software Interface Standard (CMSIS) is a
vendor-independent hardware abstraction layer for the Cortex-M processor
series and specifies debugger interfaces. The CMSIS enables consistent and

View File

@ -2,6 +2,8 @@
# See LICENSE for details.
"""
Energia
Energia framework enables pretty much anyone to start easily creating
microcontroller-based projects and applications. Its easy-to-use libraries
and functions provide developers of all experience levels to start

View File

@ -2,6 +2,8 @@
# See LICENSE for details.
"""
mbed
The mbed framework The mbed SDK has been designed to provide enough
hardware abstraction to be intuitive and concise, yet powerful enough to
build complex projects. It is built on the low-level ARM CMSIS APIs,

View File

@ -2,7 +2,9 @@
# See LICENSE for details.
"""
The libopencm3 framework aims to create a free/libre/open-source
libOpenCM3
The libOpenCM3 framework aims to create a free/libre/open-source
firmware library for various ARM Cortex-M0(+)/M3/M4 microcontrollers,
including ST STM32, Ti Tiva and Stellaris, NXP LPC 11xx, 13xx, 15xx,
17xx parts, Atmel SAM3, Energy Micro EFM32 and others.

View File

@ -2,6 +2,8 @@
# See LICENSE for details.
"""
SPL
The ST Standard Peripheral Library provides a set of functions for
handling the peripherals on the STM32 Cortex-M3 family.
The idea is to save the user (the new user, in particular) having to deal

View File

@ -284,10 +284,11 @@ def get_frameworks(type_=None):
_doc_start = fcontent.index('"""') + 3
fdoc = fcontent[
_doc_start:fcontent.index('"""', _doc_start)].strip()
description = " ".join(fdoc.split("\n")[:-2])
doclines = [l.strip() for l in fdoc.splitlines() if l.strip()]
frameworks[_type] = {
"description": description,
"url": fdoc.split("\n")[-1].strip(),
"name": doclines[0],
"description": " ".join(doclines[1:-1]),
"url": doclines[-1],
"script": script_path
}
get_frameworks._cache = frameworks # pylint: disable=W0212

View File

@ -103,7 +103,6 @@ def generate_platform(name):
lines.append("""
For more detailed information please visit `vendor site <%s>`_.""" %
p.get_vendor_url())
lines.append("""
.. contents::""")
lines.append("""
@ -146,18 +145,21 @@ def update_platform_docs():
f.write(generate_platform(name))
def generate_framework(name, data):
print "Processing framework: %s" % name
def generate_framework(type_, data):
print "Processing framework: %s" % type_
lines = []
lines.append(".. _framework_%s:" % name)
lines.append(".. _framework_%s:" % type_)
lines.append("")
_title = "Framework ``%s``" % name
_title = "Framework ``%s``" % type_
lines.append(_title)
lines.append("=" * len(_title))
lines.append(data['description'])
lines.append("""
For more detailed information please visit `vendor site <%s>`_.""" %
data['url'])
lines.append("""
.. contents::
Boards
@ -173,7 +175,7 @@ Boards
for board, data in util.get_boards().items():
frameworks = data['frameworks']
vendor = data['vendor']
if name in frameworks:
if type_ in frameworks:
if vendor in vendors:
vendors[vendor].append({board: data})
else: