AliOS Things 3.0版本於9月27日在雲棲大會正式發佈,在新版本中帶來了全新的應用開發框架,幫助用戶快速構建本身的應用。使用戶能夠更專一於自身應用的開發。本文將已BlinkAPP爲例,爲你們演示如何快速使用應用開發框建立項目並完成應用代碼編寫。html
你們能夠經過github和可視化裁剪工具獲取最新的AliOS Things3.0 源碼。ios
AliOS Things 3.0 支持用戶APP存放路徑與源碼分離,因此用戶能夠單獨管理應用源碼。在使用前須要對開發用環境進行相關設置。本文以windows 10環境和vs code爲例,進行演示。
若是你是初次使用AliOS Things,那麼能夠按照以下連接中的方式,安裝AliOS Things相關開發環境。
https://dev.iot.aliyun.com/doc/detail/aliosthings?spm=a2c56.pc_iot_community_doc_center.0.0.445452065LQ8gd#dev_byaosstudio.html
若是以前已經安裝過AliOS Things的開發環境,那麼你須要升級aos-cube和vs code中的alios-studio工具。git
打開vs code並啓動終端,在終端中輸入以下命令:github
pip install -U aos-cube
命令正確運行後,經過windows
pip list
命令,能夠看到aos-cube升級到了 0.3.7版本app
Package Version ----------------------------- ---------- aos-cube 0.3.7
打開vs code的「擴展」菜單,在菜單的搜索欄輸入「alios-studio」,便可找到最新的alios-studio插件,版本爲 0.11.6。VS code會提示「須要從新加載」,點擊後會自動更新,若是以前沒有安裝過請點擊「安裝」。框架
前面提到,AliOS Things3.0支持用戶應用和OS源碼分開保存,爲了使工具在編譯時能順利找到源碼,須要將源碼存放路徑加入到環境變量中。在windows環境下設置方式以下。工具
至此AliOS Things3.0的開發環境配置完畢,如今咱們能夠經過VS code來新建用戶應用工程,開始用戶應用編寫和調試了。url
關閉VS code並從新打開,以使得VS code能夠獲取到正確的環境變量。
在VS code中點擊alios-studio提供的「+」按鈕新建項目(按鈕位於),工具會彈出爲項目命名的提示。
將項目命名爲「blinkapp」並回車確認,接下來須要輸入項目存放的路徑。在此咱們選擇默認路徑,如須要能夠按實際狀況修改
回車確認後,須要選擇用於運行當前APP的board硬件。在此咱們依然選擇develpoerkit開發板。此時,會自動生成相關工程,並在VS code中打開。app_main.c文件,就是用戶應用入口。
一張動圖演示全流程
spa
在app_main.c中添加代碼,實現兩個任務分別以不一樣的頻率點亮LED1和LED2
/* * Copyright (C) 2015-2017 Alibaba Group Holding Limited */ #include <stdio.h> #include <aos/kernel.h> #include <aos/hal/gpio.h> // 引入gpio的支持 #define LED1_PIN 22 // LED1=PB6 1x16+6 #define LED2_PIN 67 // LED2=PE3 4x16+3 gpio_dev_t led1,led2; void led_init() { int ret = -1; /* gpio port config */ led1.port = LED1_PIN; /* set as output mode */ led1.config = OUTPUT_PUSH_PULL; /* gpio port config */ led2.port = LED2_PIN; /* set as output mode */ led2.config = OUTPUT_PUSH_PULL; /* configure GPIO with the given settings */ ret = hal_gpio_init(&led1); ret = hal_gpio_init(&led2); } static void led1_task(void *paras) { while (1) { hal_gpio_output_toggle(&led1); // led1反轉 aos_msleep(200); // 任務掛起200ms } } static void led2_task(void *paras) { while (1) { hal_gpio_output_toggle(&led2); // led2反轉 aos_msleep(500); // 任務掛起500ms } } /**********************user code*************************/ int application_start(int argc, char *argv[]) { /*add your code*/ led_init(); // LED IO初始化 aos_task_new("led1_task", led1_task, NULL, 128); // 新建LED1閃爍任務 aos_task_new("led2_task", led2_task, NULL, 128); // 新建LED2閃爍任務 while(1) { /*add your code*/ printf("Blink APP is running\r\n"); aos_msleep(1000); }; }
點擊VS code狀態欄中的「√」按鈕,進行編譯。編譯完成後,將開發板與PC鏈接,點擊「閃電」按鈕,將固件下載至開發板運行
以上就是一個基礎的給予AliOS Things3.0的應用開發過程。建立的應用單獨存在與一個獨立的文件夾中,能夠將應用拷貝至其餘具有想用AliOS Things3.0環境的開發機上進行繼續開發,實現代碼分享。接下來,你能夠試試建立一個本身的應用。
本文爲雲棲社區原創內容,未經容許不得轉載。