开发准备

更新时间:2018-10-30 11:01:21

代码下载

AliOS Things 项目主页 https://github.com/alibaba/AliOS-Things
使用Git获取代码:

git clone https://github.com/alibaba/AliOS-Things.git

Note: 如遇网络问题可使用国内镜像地址替代

git clone https://gitee.com/alios-things/AliOS-Things.git

推荐使用开发者分支:

git checkout -b developer origin/developer

开发环境搭建

AliOS Studio是基于VSC(Visual Studio Code)开发的功能强大跨平台的集成开发环境(IDE),结合aos-cube强大的命令,能帮助用户快速高效地完成基于AliOS Things的代码编辑、编译、烧录、调试等一系列开发工作。IDE环境搭建包括:VSC + alios-studio + aos-cube, 详细查看这里

下载/安装 Visual Studio Code

https://code.visualstudio.com/ 支持Linux、Mac OS、Windows。

安装alios-studio插件和C/C++插件

步骤:查看-->扩展,或点击VSC左边"扩展"快捷键(如下图2所示),在商店里面搜索后进行安装。除了"扩展"用来安装第三方插件外,常见的还有:"资源管理器"可打开代码路径用于编辑(打开上述已下载的AliOS Things代码);"调试"用于在线调试;

VSC安装alios-studio插件|center
图2 VSC安装alios-studio插件

完成后重启VSC[1],此时会弹出图3,"Would you like to install aos-cube now?"点击 "Yes",过一会将会提示安装成功,此时安装的是virtualenv虚拟环境,即在~/.aos/python-venv建立虚拟环境(依赖3.1)节python和pip已完成)。
[1]Tips: 重启VSC可使用快捷键,shift+ctrl+P, 选择重启窗口(Reload)。

重启后aos-cube安装|center
图3 重启后aos-cube安装

安装python和aos-cube

aos-cube是AliOS Things基于Python开发的项目管理工具包,依赖 Python 2.7 版本(64bits,2.7.14已验证)。同时针对开发者的实际情况,还给出一种简单方便且不影响当前系统环境的方法----基于虚拟环境virtualenv的方法,以便备用。

Python和pip安装

python下载地址:https://www.python.org/downloads/release/python-2714/,在 Python 官网下载对应的 2.7.x(64bits) 版本。

  • Windowns安装如下图4,选择Python MSI 安装文件,选择 pip 和 add python.exe to Path 两个选项。

  • Ubuntu可以使用如下命令安装。详细步骤也可以参考这里

  • Mac OS可以使用 brew install python

    $sudo apt-get install -y python
    $sudo apt-get install -y python-pip
    

注1:如遇到网络问题导致pip安装失败,可以使用阿里云镜像https://mirrors.aliyun.com/pypi/simple/pip/,手动下载pip安装(python setup.py install),或者使用 python -m pip install --trusted-host=mirrors.aliyun.com -i https://mirrors.aliyun.com/pypi/simple/ --upgrade pip 指定安装源进行升级,最新pip版本为18.0。
注2:如何判断pip和python是否安装成功,且可以被系统环境识别。1) windowns的cmd中输入where python和where pip, ubuntu中输出which python 和 which pip可以找到有效路径;2) 输入python --version和pip --version查看版本号、可验证是否已被添加到系统环境中。

windowns环境下安装python|center
图4 windowns环境下安装python

aos-cube及相关依赖安装

请确保上述python和pip已经被安装成功,在命令行中依次输入如下命令安装aos-cube及相关依赖库:

$ python -m pip install setuptools
$ python -m pip install wheel
$ python -m pip install aos-cube

如遇到网络问题,可指定阿里云镜像或手动下载对应的安装包进行安装:


# 安装/升级 pip
$python -m pip install --trusted-host=mirrors.aliyun.com -i https://mirrors.aliyun.com/pypi/simple/ --upgrade pip

# 基于pip依次安装第三方包和aos-cube
$ pip install --trusted-host=mirrors.aliyun.com -i https://mirrors.aliyun.com/pypi/simple/   setuptools
$ pip install --trusted-host=mirrors.aliyun.com -i https://mirrors.aliyun.com/pypi/simple/   wheel
$ pip install --trusted-host=mirrors.aliyun.com -i https://mirrors.aliyun.com/pypi/simple/   aos-cube

# 如需要使用doubanio作备用源,如需指定版本,可改成如aos-cube==0.2.50
$ pip install  --trusted-host pypi.doubanio.com -i  http://pypi.doubanio.com/simple/  aos-cube

补充介绍[1]基于虚拟环境virtualenv开发
开发过程中,常常会遇到这类无法规避的问题:多个项目均需要依赖类似的系统环境,这时候如果强制配置特定的环境会产生各种冲突,这个时候虚拟环境便可以绕开该问题。这边以virtualenv为例,详细可参考:https://virtualenv.pypa.io/en/stable/
前提:上述python和pip安装完成;步骤如下:

# pip 安装 virtualenv, 如安装成功,可以在pip list查看版本
$ python -m pip install virtualenv

# 如遇网络问题,可使用阿里云镜像
$ pip install --trusted-host=mirrors.aliyun.com -i https://mirrors.aliyun.com/pypi/simple/ virtualenv

# 建立虚拟环境,如安装到~/venv(可更改)
$ virtualenv  ~/venv --no-download

# 启动虚拟环境
$. ~/venv/bin/activate

# 安装 aos-cube和必要的依赖包
$ `请参考上述b)aos-cube及相关依赖安装`

# 退出虚拟环境
$ deactivate

注:如何判断aos-cube及相关依赖是否成功,可在cmd(windows)中或terminal(ubuntu)中使用aos --version,或 pip list中可查看到如下版本列表,例如下面图5(基于windows)

image.png | left | 512x504
图5 python,pip,aos版本信息_

如何确认安装成功,在IDE中输入 aos --version 如下图。

IDE中aos-cube命令|center
图6 IDE中aos-cube命令

IDE使用

IDE提供了编译、烧录、串口监控、创建工程、调试等功能或相应的接口,目标是让开发者可以省去搭建开发环境、研究一堆工具等时间,直接上手开发调试。各功能分别介绍,等同的命令方式如下表[1]所示,即开发者可使用IDE也可直接使用命令。
这里我们基于stm32l476rg-nucleo 开发板来介绍IDE的使用,其他板子可以此类推。也可参考1分30秒的视频: 基于IDE开始AliOS Things开发,视屏中的开发板是StarterKit(基于stm32L433)

IDE aos-cube comments
编译 aos make example@board example和board按实际选择
烧录 aos upload example@board 依赖当前out目录的实际路径
串口监控 aos monitor $PORT $BAUD Port口和波特率,如COM3 115200
新建工程 aos new $prj_name
在线调试 - 详见下面描述

表1 IDE功能和aos-cube命令对应关系

编译

在 Visual Studio Code 中打开下载好的AliOS Things代码目录(上述2.2节打开源码),其中VSC下方的小图标从左至右功能分别是 编译 烧录 串口工具 创建工程 清除。如图所示, image.png 点击左侧的选择ldapp@stm32l476rg-nucleo 编译目标,格式遵循 应用名字@目标板名字 的规则,点击它可以依次选择应用和目标板,如下图7所示。编译目标确定以后,点击 image 开始编译。编译过程如果发现缺少 toolchain 则会自动下载解压到正确位置。

图7 IDE中选择编译目标
图7 IDE中选择编译目标

烧录

  • 通过 USB Micro 线缆连接好开发板(如stm32l476rg-nucleo)与电脑

  • 点击下方工具栏image.png闪电图标完成固件烧录,如下图.

:aos upload目前仅支持: esp32/esp8266/mk3060和stm32系列(默认),如需增加可在开源代码进行适配,具体代码地址:($aos/build/site_scons/scons_upload.py)。
小技巧(Linux):
Linux中操作串口可能会有权限问题,可以采用下述方法

  • $ sudo usermod -a -G dialout $(whoami),添加当前用户到 dialout 组,提供直接使用串口能力。

  • $lsubs 找到厂商ID。如:Bus 002 Device 008: ID 1366:0105 SEGGER,厂商ID为1366,新建/etc/udev/rules.d/99-stlink-v2.rules文件,在文件里面添加规则:SUBSYSTEM=="usb", ATTR{idVendor}=="1366", MODE="666", GROUP="plugdev"

IDE中烧录功能 | left | 826x482
图8 IDE中烧录功能

串口监控

点击下方工具栏插头图标打开串口,连接目标板,第一次连接会提示填写串口设备名和波特率,再次点击image.png可以看到串口监控界面,也可以在这里输入命令进行交互。这里如果打开串口出错,请注意你的用户是否有串口访问权限,按shift + ctrl + P输入>config serial monitor后填写正确的port口和波特率,选择 '任务'--> '终止任务'可以停用需要停用的任务。

IDE中串口监控功能
图9 IDE中串口监控功能

在线调试

细节参考Starter-Kit-Tutorial#调试或视频使用 AliOS Studio 开始 AliOS Things 调试
目前仅支持stm32系列,如需增加可在代码中增加相应的工具配置(.vscode/launch.json)

设备端开发调试

详细内容请进入查看:
ST开发板
NXP开发板
TI开发板

results matching ""

    No results matching ""