diff --git a/docs/Advanced_development/zh/HeliosSDK/Helios_SDK_01.md b/docs/Advanced_development/zh/HeliosSDK/Helios_SDK_01.md index 8dd0ca3d00380fcf16594f533e50e7a360079e22..0b0d87960a259e2ef04d9e0da782b063e59e1484 100644 --- a/docs/Advanced_development/zh/HeliosSDK/Helios_SDK_01.md +++ b/docs/Advanced_development/zh/HeliosSDK/Helios_SDK_01.md @@ -28,14 +28,16 @@ Helios SDK(以下简称SDK;Helios,古希腊太阳神)以组件化方式 **步骤一:下载工具链** -从Github下载Windows 10环境下的工具链安装包[helios- -toolchain.exe](https://github.com/quecpython/toolchain/releases) +从quecPython官网下载Windows 10环境下的工具链安装包[helios- +toolchain.exe](https://github.com/quecpython/toolchain/releases),如下图: + +![Helios_SDK_01_01](media\Helios_SDK_01_01.png) **步骤二:安装工具链** 以管理员身份运行helios-toolchain.exe,如下图,点击安装即可。 -![image_1f4938o2fu9h10vd17pc1lt01m7n9.png-14.2kB](http://static.zybuluo.com/chenchi/w5y7tm21ii80rzci7xd0fbqm/image_1f4938o2fu9h10vd17pc1lt01m7n9.png) +![Helios_SDK_01_02](media\Helios_SDK_01_02.png) > 目标文件夹目前仅限定为`C:\`, **请勿修改** 。 @@ -43,8 +45,10 @@ toolchain.exe](https://github.com/quecpython/toolchain/releases) **步骤一:下载工具链** -从Github下载Ubuntu16.04环境下的工具链安装包[helios- -toolchain](https://github.com/quecpython/toolchain/releases) +从quecPython官网下载Ubuntu16.04环境下的工具链安装包[helios- +toolchain.linux](https://github.com/quecpython/toolchain/releases),如下图: + +![Helios_SDK_01_03](media\Helios_SDK_01_03.png) **步骤二:安装工具链** @@ -56,7 +60,9 @@ toolchain](https://github.com/quecpython/toolchain/releases) 在终端键入以下命令,安装`p7zip-full`、`git`、`make`和`python3`。 - 1. sudo apt install p7zip-full git make python3 +```makefile + 1. sudo apt install p7zip-full git make python3 +``` ​ @@ -66,10 +72,12 @@ toolchain](https://github.com/quecpython/toolchain/releases) 在命令行中按照顺序分别执行以下命令,即可拉取完整的SDK代码。 - 1. git clone https://gitee.com/quecpython/HeliosSDK.git - 2. cd HeliosSDK - 3. git submodule init - 4. git submodule update +```makefile + 1. git clone https://gitee.com/quecpython/HeliosSDK.git + 2. cd HeliosSDK + 3. git submodule init + 4. git submodule updateg +``` ​ @@ -86,7 +94,7 @@ toolchain](https://github.com/quecpython/toolchain/releases) * 灰色:编译生成的文件夹,可被清除 * 黑色:注释信息 -![SDK目录结构.png-1233.1kB](http://static.zybuluo.com/chenchi/v27475d5dbzcytwvgxe9hdd3/SDK%E7%9B%AE%E5%BD%95%E7%BB%93%E6%9E%84.png) +![Helios_SDK_01_04](media\Helios_SDK_01_04.png) ## 应用代码编写 @@ -118,9 +126,11 @@ toolchain](https://github.com/quecpython/toolchain/releases) 包含头文件的代码如下所示: - 1. #include "helios.h" - 2. #include "helios_debug.h" - 3. #include "helios_os.h" +```c + 1. #include "helios.h" + 2. #include "helios_debug.h" + 3. #include "helios_os.h" +``` ​ @@ -138,32 +148,38 @@ toolchain](https://github.com/quecpython/toolchain/releases) 在`sample.c`中定义自定义标签的日志输出接口,标签名称为`APP`,代码如下所示: - 1. #define app_debug(fmt, ...) custom_log(APP, fmt, ##__VA_ARGS__) // custom_log在helios_debug.h中定义 +```c + 1. #define app_debug(fmt, ...) custom_log(APP, fmt, ##__VA_ARGS__) // custom_log在helios_debug.h中定义 +``` ​ * **实现应用功能** -在`sample.c`中实现每一秒钟循环打印一次日志的功能,代码如下所示: + 在`sample.c`中实现每一秒钟循环打印一次日志的功能,代码如下所示: - - 1. static void AppSample(void *argv) + + ```c + 1. static void AppSample(void *argv) 2. { - 3. UNUSED(argv); // 在helios.h中定义 - 4. 5. while (1) - 6. { - 7. app_debug("app sample running ...\r\n"); // 自定义的带标签的日志输出 - 8. Helios_sleep(1); // 在helios_os.h中定义 - 9. } - 10. } - - + 3. UNUSED(argv); // 在helios.h中定义 + 4. + 5. while (1) + 5. { + 6. app_debug("app sample running ...\r\n"); // 自定义的带标签的日志输出 + 7. Helios_sleep(1); // 在helios_os.h中定义 + 8. } + 9. } + ``` + * **添加为自启动项** 编写完应用功能代码后,调用以下接口,会在系统启动完成后,自动启动应用功能: - 1. application_init(AppSample, "AppSample", 2, 0); // 在helios.h中定义 + ```c + 1. application_init(AppSample, "AppSample", 2, 0); // 在helios.h中定义 + ``` @@ -184,10 +200,12 @@ toolchain](https://github.com/quecpython/toolchain/releases) > 编译管控脚本的详细写法可参考SDK根目录下的`README.MD`,此处仅针对`sample.c`做阐述。 - 1. NAME := SAMPLE # 组件名称,建议和组件根目录名称一致,全部大写 - 2. 3. $(NAME)_SRCS := sample.c # 添加需要编译的源码的相对路径(相对于组件代码根目录,此处相对于sample目录) - 4. 5. $(NAME)_INCS := . # 仅组件内部可引用的头文件相对路径(相对于组件代码根目录,此处相对于sample目录,其实sample下无头文件,此行可删除) - 6. 7. $(NAME)_COMPONENTS := # 当前组件依赖的其他组件相对路径(相对于SDK根目录,置空时可删除此行) +```makefile + 1. NAME := SAMPLE # 组件名称,建议和组件根目录名称一致,全部大写 + 2. $(NAME)_SRCS := sample.c # 添加需要编译的源码的相对路径(相对于组件代码根目录,此处相对于sample目录) + 3. $(NAME)_INCS := . # 仅组件内部可引用的头文件相对路径(相对于组件代码根目录,此处相对于sample目录,其实sample下无头文件,此行可删除) + 4. $(NAME)_COMPONENTS := # 当前组件依赖的其他组件相对路径(相对于SDK根目录,置空时可删除此行) +``` ​ @@ -202,13 +220,16 @@ toolchain](https://github.com/quecpython/toolchain/releases) 输出结果如下: - 1. Usage: helios [] [] [] - 2. 3. These are common commands used in various situations: - 4. menuconfig - Do the project configuration - 5. make [[] []] - Do the compilation work - 6. private_clean - Clean the app private target - 7. clean - Clean the output directory - 8. help - Show this help page +```makefile + 1. Usage: helios [] [] [] + 2. + 3. These are common commands used in various situations: + 4. menuconfig - Do the project configuration + 5. make [[] []] - Do the compilation work + 6. private_clean - Clean the app private target + 7. clean - Clean the output directory + 8. help - Show this help page +``` ​ @@ -220,7 +241,9 @@ toolchain](https://github.com/quecpython/toolchain/releases) 以EC600SCN_LB模块为例,在命令行中键入以下命令,并回车: - 1. helios make sample @EC600SCN_LB EC600SCNLBR01A01M08 +```makefile + 1. helios make sample @EC600SCN_LB EC600SCNLBR01A01M08 +``` ​ @@ -234,7 +257,9 @@ toolchain](https://github.com/quecpython/toolchain/releases) 如需清除编译目标,在命令行中键入以下命令,并回车: - 1. helios clean +```makefile + 1. helios clean +``` ​ @@ -243,7 +268,7 @@ toolchain](https://github.com/quecpython/toolchain/releases) 生成的固件包存储于SDK根目录下的`output/release`文件夹中,如下图所示。 -![image_1f4ga4bf316861em8ojm3451mhs9.png-4.7kB](http://static.zybuluo.com/chenchi/z0dmqoxye285heg27yk6fsy3/image_1f4ga4bf316861em8ojm3451mhs9.png) +![Helios_SDK_01_05](media\Helios_SDK_01_05.png) **步骤四:烧录固件** @@ -259,7 +284,7 @@ toolchain](https://github.com/quecpython/toolchain/releases) 打开PC的设备管理器,如下图,本实验的Debug串口号为COM20。 -![image_1f5ac1jtflcq1rng1a8q1n815hl9.png-26.4kB](http://static.zybuluo.com/chenchi/qw0g8xrt5hvcujamf3zmmp6s/image_1f5ac1jtflcq1rng1a8q1n815hl9.png) +![Helios_SDK_01_06](media\Helios_SDK_01_06.png) **步骤三:打开PC端的串口调试工具** @@ -267,7 +292,7 @@ toolchain](https://github.com/quecpython/toolchain/releases) 点击`Port`选项的下拉菜单,选中COM20,其余参数严格遵照图中的配置即可。 点击右下角`Connect`按钮即可打开串口。 -![image_1f5acgsin1aaq1n9fm9n173rfejm.png-29.2kB](http://static.zybuluo.com/chenchi/1t3cgtbqwytpbpqd5dj3elqk/image_1f5acgsin1aaq1n9fm9n173rfejm.png) +![Helios_SDK_01_07](media\Helios_SDK_01_07.png) **步骤四:启动模块程序** @@ -277,7 +302,7 @@ toolchain](https://github.com/quecpython/toolchain/releases) 在SecureCRT的串口数据接收区查看运行日志,如下图: -![image_1f55ahtn91eni18d4v5it63gm.png-20.2kB](http://static.zybuluo.com/chenchi/tqe86xfa2c7hnq3gojnqbqyw/image_1f55ahtn91eni18d4v5it63gm.png) +![Helios_SDK_01_08](media\Helios_SDK_01_08.png) 上图可看出,日志输出的格式包含了自定义标签`APP`、输出日志的函数名`AppSample`、输出日志的文件行数`L29`,及日志内容`app sample running ...`。 diff --git a/docs/Advanced_development/zh/QuecPythonCloud/media/Helios_SDK_01_01.png b/docs/Advanced_development/zh/QuecPythonCloud/media/Helios_SDK_01_01.png new file mode 100644 index 0000000000000000000000000000000000000000..9b4d47557d1674ce4a70149e9fdf1a602d8eb32d Binary files /dev/null and b/docs/Advanced_development/zh/QuecPythonCloud/media/Helios_SDK_01_01.png differ diff --git a/docs/Advanced_development/zh/QuecPythonCloud/media/Helios_SDK_01_02.png b/docs/Advanced_development/zh/QuecPythonCloud/media/Helios_SDK_01_02.png new file mode 100644 index 0000000000000000000000000000000000000000..17d8ca45e42c3bfd110053dda461bb51bef09927 Binary files /dev/null and b/docs/Advanced_development/zh/QuecPythonCloud/media/Helios_SDK_01_02.png differ diff --git a/docs/Advanced_development/zh/QuecPythonCloud/media/Helios_SDK_01_03.png b/docs/Advanced_development/zh/QuecPythonCloud/media/Helios_SDK_01_03.png new file mode 100644 index 0000000000000000000000000000000000000000..19f749fb5d7408335339b63c14ebcb305b051cb4 Binary files /dev/null and b/docs/Advanced_development/zh/QuecPythonCloud/media/Helios_SDK_01_03.png differ diff --git a/docs/Advanced_development/zh/QuecPythonCloud/media/Helios_SDK_01_04.png b/docs/Advanced_development/zh/QuecPythonCloud/media/Helios_SDK_01_04.png new file mode 100644 index 0000000000000000000000000000000000000000..11e7f653797924bddb3bb9f3b3a8662f2e98b3c4 Binary files /dev/null and b/docs/Advanced_development/zh/QuecPythonCloud/media/Helios_SDK_01_04.png differ diff --git a/docs/Advanced_development/zh/QuecPythonCloud/media/Helios_SDK_01_05.png b/docs/Advanced_development/zh/QuecPythonCloud/media/Helios_SDK_01_05.png new file mode 100644 index 0000000000000000000000000000000000000000..c67cdab1ee4ec8b7ccc91ed9b31e83cedb56623f Binary files /dev/null and b/docs/Advanced_development/zh/QuecPythonCloud/media/Helios_SDK_01_05.png differ diff --git a/docs/Advanced_development/zh/QuecPythonCloud/media/Helios_SDK_01_06.png b/docs/Advanced_development/zh/QuecPythonCloud/media/Helios_SDK_01_06.png new file mode 100644 index 0000000000000000000000000000000000000000..57c463e51c1ee8c6b3eca6fa1d0f699af592b678 Binary files /dev/null and b/docs/Advanced_development/zh/QuecPythonCloud/media/Helios_SDK_01_06.png differ diff --git a/docs/Advanced_development/zh/QuecPythonCloud/media/Helios_SDK_01_07.png b/docs/Advanced_development/zh/QuecPythonCloud/media/Helios_SDK_01_07.png new file mode 100644 index 0000000000000000000000000000000000000000..af845db7695cdee7180651f29a605f17fbfaf084 Binary files /dev/null and b/docs/Advanced_development/zh/QuecPythonCloud/media/Helios_SDK_01_07.png differ diff --git a/docs/Advanced_development/zh/QuecPythonCloud/media/Helios_SDK_01_08.png b/docs/Advanced_development/zh/QuecPythonCloud/media/Helios_SDK_01_08.png new file mode 100644 index 0000000000000000000000000000000000000000..4ab7c1afe1d5d3044e6320fffd3ede44c77eede8 Binary files /dev/null and b/docs/Advanced_development/zh/QuecPythonCloud/media/Helios_SDK_01_08.png differ