mbed环境搭建和工作流
<p><a href="https://os.mbed.com/docs/mbed-os/v5.14/introduction/index.html">https://os.mbed.com/docs/mbed-os/v5.14/introduction/index.html</a></p>
<h3>手动安装</h3>
<ul>
<li><code>pip install mbed-cli</code></li>
<li><code>git</code></li>
<li><code>mercurial</code></li>
<li><a href="https://os.mbed.com/docs/mbed-os/v5.14/tools/index.html#compiler-versions">https://os.mbed.com/docs/mbed-os/v5.14/tools/index.html#compiler-versions</a></li>
<li><a href="https://os.mbed.com/docs/mbed-os/v5.14/tools/manual-installation.html">https://os.mbed.com/docs/mbed-os/v5.14/tools/manual-installation.html</a></li>
</ul>
<p>或下载安装器安装<code>https://github.com/ARMmbed/mbed-cli-windows-installer/releases/tag/v0.4.10</code></p>
<ul>
<li>配置编译器位置
<code>mbed config -G ARM_PATH "C:\Program Files\ARM"</code></li>
</ul>
<p><img src="https://www.showdoc.cc/server/api/common/visitfile/sign/5bb9cfbddaa524f3a8aa093bee500b6f?showdoc=.jpg" alt="" /></p>
<h3>新建工程</h3>
<p>新建工程时,自动导入最新Mbed OS(包含所有组件:源码,构建工具和IDE导出器)</p>
<pre><code>$ mbed new mbed-os-program
[mbed] Creating new program "mbed-os-program" (git)
[mbed] Adding library "mbed-os" from "https://github.com/ARMmbed/mbed-os" at latest revision in the current branch
[mbed] Updating reference "mbed-os" -> "https://github.com/ARMmbed/mbed-os/#89962277c20729504d1d6c95250fbd36ea5f4a2d"</code></pre>
<blockquote>
<p><code>--scm</code>可指定特定源码控制系统或不使用控制系统
<code>--mbedlib</code>自动导入最新库</p>
</blockquote>
<h3>管理多个mbed工程</h3>
<p><code>MBED_OS_DIR</code>配置选项可以指定OS命令,让所有工程共享一个OS库</p>
<pre><code>$ cd /absolute/path/to/project/dir
$ mbed import mbed-os
$ mbed config -G MBED_OS_DIR /absolute/path/to/project/dir/mbed-os
[mbed] /absolute/path/to/project/dir/mbed-os now set as global MBED_OS_DIR
$ mbed new project1
[mbed] Creating new program "project1" (git)
$ mbed new project2
[mbed] Creating new program "project2" (git)</code></pre>
<h3>编译</h3>
<pre><code>$ mbed compile -t ARM -m LPC1768 --source project1 --source mbed-os --build BUILD/project1
$ mbed compile -t ARM -m K64F --source project2 --source mbed-os --build BUILD/project2</code></pre>
<h3>导入程序</h3>
<pre><code>$ mbed import https://github.com/ARMmbed/mbed-os-example-blinky#mbed-os-5.11.0
[mbed] Working path "C:\dev" (directory)
[mbed] Importing program "mbed-os-example-blinky" from "https://github.com/ARMmbed/mbed-os-example-blinky" at branch/tag "mbed-os-5.11.0"
[mbed] Adding library "mbed-os" from "https://github.com/ARMmbed/mbed-os" at rev #6a0a86538c0b</code></pre>
<h3>增加库</h3>
<pre><code>$ mbed add https://github.com/ARMmbed/mbed-cloud-client
[mbed] Working path "C:\dev\mbed-os-example-blinky" (program)
[mbed] Adding library "mbed-cloud-client" from "https://github.com/ARMmbed/mbed-cloud-client" at latest revision in the current branch
[mbed] Updating reference "mbed-cloud-client" -> "https://github.com/ARMmbed/mbed-cloud-client/#377c6b8fb0f8b66be03408a438ff0cd96be0c454"</code></pre>
<h3>删除库</h3>
<p><code>mbed remove mbed-cloud-client</code></p>
<h3>更新库</h3>
<p><code>mbed update</code></p>
<h3>库版本管理</h3>
<p><code>mbed releases</code></p>
<h3>设置默认目标板</h3>
<p><code>mbed target</code></p>
<h3>设置默认工具链</h3>
<p><code>mbed toolchain GCC_ARM</code></p>
<h3>编译成库</h3>
<p><code>mbed compile --library</code></p>
<h3>编译profile</h3>
<p>默认是<code>develop</code>,使能debug logging。<code>debug</code> profile打开<code>debug symbols</code>,<code>release</code> profile关闭了debug logging
<code>$ mbed compile --profile debug</code></p>