diff options
author | Marti Bolivar <mbolivar@leaflabs.com> | 2011-08-19 14:03:06 -0400 |
---|---|---|
committer | Marti Bolivar <mbolivar@leaflabs.com> | 2011-08-19 14:07:09 -0400 |
commit | 02a32f2b79ead308306975576910ef731e760492 (patch) | |
tree | 1b733d0f2497bb180de31b2428de016e97895547 /source/troubleshooting.rst | |
parent | 653c06fed765d9748e18f289ac3f1e995c6a9486 (diff) | |
download | librambutan-02a32f2b79ead308306975576910ef731e760492.tar.gz librambutan-02a32f2b79ead308306975576910ef731e760492.zip |
troubleshooting.rst: Add debugging pointers to "throbbing LED" item.
Diffstat (limited to 'source/troubleshooting.rst')
-rw-r--r-- | source/troubleshooting.rst | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/source/troubleshooting.rst b/source/troubleshooting.rst index 80f6df4..7654c40 100644 --- a/source/troubleshooting.rst +++ b/source/troubleshooting.rst @@ -17,9 +17,23 @@ This page documents common problems and their solutions. The LED is throbbing and my program is stopped! ----------------------------------------------- -The LED throbs when there has been a failed software :ref:`assertion +The LED throbs when there has been a failed software :ref:`ASSERT() <lang-assert>` or some other error. +In the case of a failed assertion, a first debugging step you can take +is to find out the file and line where the failed assertion took place +(for instructions on this, see the ``ASSERT()`` documentation linked +to above). This may give you some clue about the source of the error. + +:ref:`libmaple` often uses ``ASSERT()`` to halt immediately when it +detects that something has gone wrong, so if you're not using +assertions, then what's probably happening is that some bug is causing +the failed ``ASSERT()`` lower down. + +If it's not a failed assertion, then you're likely looking at +something like a `hard fault +<http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0337e/ch05s12s01.html>`_. + There are a few issues with the bootloader which mean you might not be able to upload your program when this happens. You can still reprogram by using :ref:`perpetual bootloader mode |