成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

在Developerkit開發(fā)板上運(yùn)行blink例程-創(chuàng)新互聯(lián)

本文將介紹怎么樣在VScode環(huán)境下,將AliOS Tings提供的blink例程在Developerkit開發(fā)板上運(yùn)行起來。

在鹽亭等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供成都網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計(jì) 網(wǎng)站設(shè)計(jì)制作按需網(wǎng)站設(shè)計(jì),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),全網(wǎng)營銷推廣,成都外貿(mào)網(wǎng)站建設(shè)公司,鹽亭網(wǎng)站建設(shè)費(fèi)用合理。


DeveloperKit開發(fā)板

在例程中分別用到兩個(gè)led和一個(gè)按鈕,上圖中用紅色的框標(biāo)識(shí)出來。例程正確運(yùn)行后,會(huì)有一個(gè)LED按1s的周期閃爍,另外一個(gè)LED當(dāng)按鍵被按下時(shí),切換輸出電平。本文中,各個(gè)硬件的分配如下表:

外設(shè)名稱

對(duì)應(yīng)gpio

實(shí)驗(yàn)中的功能

LED1

PB6

每秒閃爍1次

LED2

PE3

當(dāng)檢測到按鍵時(shí)切換輸出電平

按鈕M

PE11

通過中斷方式檢測按接下來我們進(jìn)入代碼,并按照具體的硬件對(duì)應(yīng)引腳修改源碼。

同VS CODE打開AliOS-Things 2.0源碼,如果您還沒有AliOS-Things的源碼,可以在VS code的控制臺(tái)中通過git工具進(jìn)行拉取,拉取命令如下:

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

打開源碼后,我們?cè)谠创a的app/example/blink目錄下,打開blink.c,在源碼的頂部找到幾個(gè)宏定義如下:

#define GPIO_LED_IO     18#define GPIO_TRIGGER_IO 4#define GPIO_INPUT_IO   5

上述的幾個(gè)宏定義需要和我們和實(shí)際的硬件對(duì)應(yīng),對(duì)應(yīng)關(guān)系如下表:

宏定義

對(duì)應(yīng)硬件

實(shí)際IO口

OS中的引腳編號(hào)

實(shí)驗(yàn)中的功能

GPIO_LED_IO

LED1

PB6

22

每秒閃爍1次

GPIO_TRIGGER_IO

LED2

PE3

67

當(dāng)檢測到按鍵時(shí)切換輸出電平

GPIO_INPUT_IO

按鈕M

PE11

75

通過中斷方式檢測按鍵

由于AliOS-Things對(duì)硬件進(jìn)行了抽象,所以對(duì)GPIO的操作需要先按照一定的規(guī)則將MCU的GPIO轉(zhuǎn)換為編號(hào)。轉(zhuǎn)換規(guī)則為MCU的GPIO bank號(hào) X 16 + 具體gpio在bank中的位置,bank的編號(hào)從0開始。如PB6,其bank號(hào)為1在bank中的位置為6,則PB6應(yīng)被轉(zhuǎn)換為 1 X 16 + 6 = 22;同理,PE3=4 x 16 + 3 = 67。因?yàn)槔滩皇菫镈eveloperkit開發(fā)板而寫,所以需要修改例程中的宏第一如下:

#define GPIO_LED_IO     67      // PE3#define GPIO_TRIGGER_IO 22      // PB6#define GPIO_INPUT_IO   75      // PE11

完成修改后,保存blink.c文件。

在VS CODE環(huán)境中,在左下角的alios-studio中,點(diǎn)擊編譯目標(biāo)選擇按鈕

在Developerkit開發(fā)板上運(yùn)行blink例程

此時(shí)編輯器頂部的命令輸入框會(huì)彈出選擇要編譯的目標(biāo),此時(shí)選擇blink

在Developerkit開發(fā)板上運(yùn)行blink例程

緊接著會(huì)繼續(xù)要求選擇開發(fā)板,此時(shí)選擇Developerkit開發(fā)板。

在Developerkit開發(fā)板上運(yùn)行blink例程

接下來通過alios-studio工具條的編譯按鈕啟動(dòng)編譯。

在Developerkit開發(fā)板上運(yùn)行blink例程

等待編譯完成。

Making blink@developerkit.bin
Making blink@developerkit.hex
                        AOS MEMORY MAP|=================================================================|| MODULE                                   | ROM       | RAM      ||=================================================================|| newlib_stub                              | 296       | 0        || sal                                      | 6977      | 250      || kv                                       | 3055      | 104      || common                                   | 256       | 12       || libc_nano                                | 19649     | 602      || kernel_init                              | 653       | 36       || rhino                                    | 16225     | 7821     || developerkit                             | 5045      | 1403     || vfs                                      | 950       | 1141     || digest_algorithm                         | 92        | 0        || libgcc                                   | 3320      | 0        || stm32l4xx_cube                           | 26592     | 8506     || cli                                      | 6234      | 357      || yloop                                    | 2369      | 28       || device_sal_bk7231                        | 8542      | 265      || sensor                                   | 9451      | 303      || osal                                     | 1074      | 4        || log                                      | 412       | 20       || hal                                      | 164       | 12       || blink                                    | 325       | 24       || atparser                                 | 5882      | 297      || armv7m                                   | 1975      | 0        || *fill*                                   | 150       | 1599     ||=================================================================|| TOTAL (bytes)                            | 119688    | 22784    ||=================================================================|Build complete

將Developerkit連接至PC,確保開發(fā)板的STlink驅(qū)動(dòng)已被正確安裝。

在Developerkit開發(fā)板上運(yùn)行blink例程

通過alios-studio工具條中的下載按鈕,將編譯好的固件下載到開發(fā)板中。

在Developerkit開發(fā)板上運(yùn)行blink例程

燒寫完成后開發(fā)板會(huì)自動(dòng)運(yùn)行,此時(shí)可以看到LED開始按1s為間隔閃爍。按動(dòng)板上的“M”按鈕,LED2會(huì)切換輸出。這里要指出,blink Demo主要為了演示GPIO的HAL層操作函數(shù),并沒有做按鍵去抖動(dòng)工作,所以點(diǎn)按按鈕時(shí),可能會(huì)出現(xiàn)按一次LED2直接切換兩次。也請(qǐng)大家在實(shí)際的代碼設(shè)計(jì)中注意按鍵去抖能力的加入。到此,例程已成功完成運(yùn)行。

作者: 巴人壹個(gè)        

網(wǎng)頁題目:在Developerkit開發(fā)板上運(yùn)行blink例程-創(chuàng)新互聯(lián)
標(biāo)題網(wǎng)址:http://jinyejixie.com/article32/dhoepc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、營銷型網(wǎng)站建設(shè)、手機(jī)網(wǎng)站建設(shè)定制網(wǎng)站、ChatGPT、網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

營銷型網(wǎng)站建設(shè)
司法| 广昌县| 银川市| 和顺县| 阿鲁科尔沁旗| 治多县| 承德市| 萍乡市| 长岛县| 安岳县| 淮阳县| 桐庐县| 塔城市| 安陆市| 九江市| 且末县| 寿光市| 榆中县| 海安县| 彭山县| 育儿| 沾益县| 云和县| 肥乡县| 红安县| 华亭县| 广宗县| 开封县| 德令哈市| 卢湾区| 民权县| 大荔县| 西藏| 运城市| 金山区| 铅山县| 井研县| 长沙县| 莆田市| 陈巴尔虎旗| 乐陵市|