博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在Developerkit开发板上运行blink例程
阅读量:6955 次
发布时间:2019-06-27

本文共 2263 字,大约阅读时间需要 7 分钟。

摘要: 本文将介绍怎么样在VScode环境下,将AliOS Tings提供的blink例程在Developerkit开发板上运行起来。 DeveloperKit开发板 在例程中分别用到两个led和一个按钮,上图中用红色的框标识出来。

本文将介绍怎么样在VScode环境下,将AliOS Tings提供的blink例程在Developerkit开发板上运行起来。

在例程中分别用到两个led和一个按钮,上图中用红色的框标识出来。例程正确运行后,会有一个LED按1s的周期闪烁,另外一个LED当按键被按下时,切换输出电平。本文中,各个硬件的分配如下表:

图片描述
同VS CODE打开AliOS-Things 2.0源码,如果您还没有AliOS-Things的源码,可以在VS code的控制台中通过git工具进行拉取,拉取命令如下:
git clone

打开源码后,我们在源码的app/example/blink目录下,打开blink.c,在源码的顶部找到几个宏定义如下:

define GPIO_LED_IO 18

define GPIO_TRIGGER_IO 4

define GPIO_INPUT_IO 5

上述的几个宏定义需要和我们和实际的硬件对应,对应关系如下表:

图片描述
通过中断方式检测按键
由于AliOS-Things对硬件进行了抽象,所以对GPIO的操作需要先按照一定的规则将MCU的GPIO转换为编号。转换规则为MCU的GPIO bank号 X 16 + 具体gpio在bank中的位置,bank的编号从0开始。如PB6,其bank号为1在bank中的位置为6,则PB6应被转换为 1 X 16 + 6 = 22;同理,PE3=4 x 16 + 3 = 67。因为例程不是为Developerkit开发板而写,所以需要修改例程中的宏第一如下:

define GPIO_LED_IO 67 // PE3

define GPIO_TRIGGER_IO 22 // PB6

define GPIO_INPUT_IO 75 // PE11

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

在VS CODE环境中,在左下角的alios-studio中,点击编译目标选择按钮
图片描述
此时编辑器顶部的命令输入框会弹出选择要编译的目标,此时选择blink

图片描述

紧接着会继续要求选择开发板,此时选择Developerkit开发板。

图片描述
接下来通过alios-studio工具条的编译按钮启动编译。
图片描述

等待编译完成。

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,确保开发板的STlink驱动已被正确安装。
图片描述
通过alios-studio工具条中的下载按钮,将编译好的固件下载到开发板中。
图片描述

烧写完成后开发板会自动运行,此时可以看到LED开始按1s为间隔闪烁。按动板上的“M”按钮,LED2会切换输出。这里要指出,blink Demo主要为了演示GPIO的HAL层操作函数,并没有做按键去抖动工作,所以点按按钮时,可能会出现按一次LED2直接切换两次。也请大家在实际的代码设计中注意按键去抖能力的加入。到此,例程已成功完成运行。

转载地址:http://dztil.baihongyu.com/

你可能感兴趣的文章
模糊搜索神器fzf
查看>>
使用 Flexbox 实现一个网格系统
查看>>
Flask五之表单
查看>>
前端面试总结--数据结构与算法三
查看>>
关于事件兼容性
查看>>
dva源码解析(一)
查看>>
B2C商城系统凭这四大优点取胜
查看>>
wamp非集成安装
查看>>
关于WeX5的carousel控件如何清除图片和增加图片
查看>>
MailBee.NET Objects发送电子邮件(SMTP)教程一:使用SMTP服务器发送消息
查看>>
Struts2 Action : Maven 配置
查看>>
PHP基础算法之插入排序法
查看>>
rusty_sr-让你的图片变得更高清
查看>>
springBoot 整合freemark自定义函数
查看>>
对react技术栈的一些理解
查看>>
服务平台化,知乎 HBase 实践
查看>>
专访赵加雨:WebRTC在网易云信的落地
查看>>
健壮性V.S.准确率——18个深度图像分类模型的健壮性综述
查看>>
363. Max Sum of Rectangle No Larger Than K
查看>>
InfoQ视频直播分享报名:前贝尔实验室、Oracle架构师为你在线揭秘分布式平台内核...
查看>>