這篇文章主要講解了“怎么為AliOS Things應用增加自定義cli命令”,文中的講解內(nèi)容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“怎么為AliOS Things應用增加自定義cli命令”吧!
參數(shù)名稱
參數(shù)描述 | |
char *pwbuf | 當函數(shù)執(zhí)行完成返回時,通過控制臺打印出來的字符串指針??梢圆粋魅搿?/p> |
int blen | 上述字符串長度 |
int argc | 命令調(diào)用時傳入的參數(shù)長度,沒有參數(shù)傳入時為1 |
char **argv | 傳入?yún)?shù)緩存,字符串。第一個有效參數(shù)的角標從1開始。 |
接下來填寫注冊用結構體,以便將命令信息傳遞給cli服務。按照前所講的設計,注冊結構體信息如下,將結構體拷貝到blink.c文件中。
struct cli_command led_switch_command[] = { { .name = "led_switch", // 命令名稱 .help = "[on] turn on led2;[off] trun off led2",// 幫助文本 .function = led_switch // 命令具體執(zhí)行的函數(shù)指針 }};
將cli命令注冊到系統(tǒng)中。cli命令注冊只需要一個函數(shù)如下:
aos_cli_register_commands(&led_switch_command[0],1);
函數(shù)需要傳入兩個參數(shù),參數(shù)1為剛剛創(chuàng)建的命令信息體的結構體指針;參數(shù)2,為本次需要注冊的命令數(shù),也就是說可以一次性注冊多個命令,只需要在命令信息結構體中,用數(shù)組的方式同時填入幾個命令的信息即可。
將上述函數(shù)調(diào)用加入到blink.c文件application_start函數(shù)的如下位置:
aos_cli_register_commands(&led_switch_command[0],1); // 注冊cli命令函數(shù) aos_loop_run();
至此,一個cli命令的實現(xiàn)和注冊的代碼編寫部分就完成了。編譯并下載至開發(fā)板中運行。在cli控制臺輸入help,看到led_switch命令已注冊成功。
# help====Build-in Commands========Support 4 cmds once, seperate by ; ====help : print this p : print memorym : modify memoryecho : echo for commandexit : close CLI devname : print device name sysver : system versionreboot : reboot systemtime : system timeota : system ota====User Commands====loglevel : set log level tasklist : list all thread info dumpsys : dump system info udp : [ip] [port] [string data] send udp data wifi_debug: wifi debug mode mac : get/set mac kv : kv [set key value | get key | del key | list]version : show version led_switch: [on] turn on led2;[off] trun off led2
測試命令是否執(zhí)行,在命令提示符下輸入如下命令,并回車:
#led_switch on
led2點亮
測試參數(shù)有效性判斷,輸入如下指令,不帶參數(shù)。命令按設計返回錯誤報警。
## led_switch[1291080]<V> 參數(shù)錯誤
感謝各位的閱讀,以上就是“怎么為AliOS Things應用增加自定義cli命令”的內(nèi)容了,經(jīng)過本文的學習后,相信大家對怎么為AliOS Things應用增加自定義cli命令這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關知識點的文章,歡迎關注!
網(wǎng)站欄目:怎么為AliOSThings應用增加自定義cli命令-創(chuàng)新互聯(lián)
轉載來源:http://chinadenli.net/article38/dhpepp.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供標簽優(yōu)化、外貿(mào)建站、網(wǎng)站內(nèi)鏈、用戶體驗、品牌網(wǎng)站制作、網(wǎng)站設計
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)