aboutsummaryrefslogtreecommitdiffstats
path: root/docs/source/usb.rst
diff options
context:
space:
mode:
authorMarti Bolivar <mbolivar@leaflabs.com>2011-04-26 03:27:10 -0400
committerMarti Bolivar <mbolivar@leaflabs.com>2011-04-26 03:27:10 -0400
commit1f98566c939c84a986ee8b60fde6aa601c3521da (patch)
tree8a0069ca9758bf6f3952bd71bf1a7c149d161bc1 /docs/source/usb.rst
parent621706150fc55b8266229131cc7fb6db6b2f7cd9 (diff)
downloadlibrambutan-1f98566c939c84a986ee8b60fde6aa601c3521da.tar.gz
librambutan-1f98566c939c84a986ee8b60fde6aa601c3521da.zip
0.0.10 Documentation checkpoint.
The vast majority of the Maple-specific values have been pulled out of the higher-level overview pages and replaced with refs into documents under /docs/source/hardware/. Much of the work that's left to be done in this regard is labeled with versioned TODO and FIXME comments. Suggestions from StephenFromNYC and gbulmer were incorporated from this forum thread: http://forums.leaflabs.com/topic.php?id=703
Diffstat (limited to 'docs/source/usb.rst')
-rw-r--r--docs/source/usb.rst54
1 files changed, 27 insertions, 27 deletions
diff --git a/docs/source/usb.rst b/docs/source/usb.rst
index f040034..a67d710 100644
--- a/docs/source/usb.rst
+++ b/docs/source/usb.rst
@@ -2,34 +2,32 @@
.. _usb:
-=====
- USB
-=====
+USB
+===
-The Maple STM32 microprocessor includes a dedicated USB peripheral
-which can be configured to act as a general USB slave device with
-transfer rates up to 12Mbps (it unfortunately can't be configured as a
-host or on-the-go device). By default, the peripheral is configured
-for two uses: first, to receive sketch/program uploads from the IDE,
-and second, to emulate a regular serial port for use as a terminal
-(text read/write).
+The STM32 microprocessors include a dedicated USB peripheral which can
+be configured to act as a general USB slave device with transfer rates
+up to 12Mbps. (It unfortunately can't be configured as a host or
+on-the-go device). By default, the peripheral is configured for two
+uses: first, to receive sketch/program uploads from the :ref:`IDE
+<ide>`, and second, to emulate a regular serial port for use as a
+terminal (text read/write).
The emulated terminal is relatively slow and inefficient; it is best
for transferring data at regular serial speeds (kilobaud). Library
support for accessing the emulated terminal is available at the
:ref:`SerialUSB <lang-serialusb>` reference.
-The SerialUSB channel is used as part of the auto-reset feature of the
-IDE to program the board on Maple Rev 3 and Rev 5: a :ref:`magic
-sequence of control line toggles and transmitted data
-<bootloader-rev3>` causes the Maple to reset itself and enter
-bootloader mode. As an unfortunate consequence, the auto-reset will
-not work if the IDE can not access the serial port, either due to a
-conflict with another program (serial monitor) or because the
-interface has been disabled from the Maple side (through
-:ref:`SerialUSB.end() <lang-serialusb-end>`). A solution to the
-second problem is the use of :ref:`perpetual bootloader mode
-<troubleshooting-perpetual-bootloader>`.
+The SerialUSB channel is used with the :ref:`Maple bootloader
+<bootloader>` to reprogram the board: a :ref:`magic sequence of
+control line toggles and transmitted data <bootloader-rev3>` causes a
+Maple to reset itself and enter bootloader mode. As an unfortunate
+consequence, the auto-reset will not work if the IDE can not access
+the serial port, either due to a conflict with another program (serial
+monitor) or because the interface has been disabled from the Maple
+side (through :ref:`SerialUSB.end() <lang-serialusb-end>`). A
+solution to the second problem is the use of :ref:`perpetual
+bootloader mode <troubleshooting-perpetual-bootloader>`.
Recommended Reading
-------------------
@@ -40,9 +38,11 @@ Recommended Reading
* `Embedded USB - a brief tutorial <http://www.computer-solutions.co.uk/info/Embedded_tutorials/usb_tutorial.htm>`_
* `Wikipedia article on Universal Serial Bus (USB) <http://en.wikipedia.org/wiki/Universal_Serial_Bus>`_
* Linux Kernel documentation for `USB ACM <http://www.kernel.org/doc/Documentation/usb/acm.txt>`_ and `USB Serial <http://www.kernel.org/doc/Documentation/usb/usb-serial.txt>`_
-* STMicro documentation for STM32F103RB microcontroller:
-
- * `Datasheet <http://www.st.com/stonline/products/literature/ds/13587.pdf>`_ (pdf)
- * `Reference Manual <http://www.st.com/stonline/products/literature/rm/13902.pdf>`_ (pdf)
- * `Programming Manual <http://www.st.com/stonline/products/literature/pm/15491.pdf>`_ (pdf; assembly
- language and register reference)
+* ST documentation:
+ * Reference Manual `RM0008
+ <http://www.st.com/stonline/products/literature/rm/13902.pdf>`_
+ (PDF), Chapter 23, "Universal serial bus full-speed device
+ interface"
+ * `Programming Manual
+ <http://www.st.com/stonline/products/literature/pm/15491.pdf>`_
+ (PDF; assembly language and register reference)