阿里云HaaS100物联网开发板学习笔记(二)硬件控制初步--让小灯闪烁起来

摘要:无论是哪种开发板,要想开发特定的功能,必先从GPIO开始,HaaS100开发也是一样。如果仅仅利用HaaS100的联网功能,那简直是太浪费了。HaaS100拥有其他开发板所具备的所有的功能,比如GPIO、IIS、IIC、SPI、PWM等等等等。例程中的blink_demo编译并下载到HaaS100开发板后,5个指示灯是同时点亮和熄灭的,到底每个指示灯怎么控制,官方文档中并没有详细介绍。本文从控制一个特定的GPIO实现单独一个LED闪烁入手,将阿里云blink_demo例程进行更深的讲解,跟大家一起进入HaaS100底层硬件开发。

目录

实验目的

1.操作步骤

1.1 搭建编程环境

         1.2 修改程序

1.3 编译

1.4 烧录

2 编程效果

3.原理分析

3.1 硬件分析

3.2软件分析

4.结论

 


硬件:HaaS100物联网开发板

软件:aos(命令行版),win7 x64系统

 

实验目的

编程实现一个单独的LED灯闪烁。

 

 

1.操作步骤

1.1 搭建编程环境

详细步骤请参考下面连接,如果已经成功编译并下载过helloworld_demo,证明您已经掌握了基本操作,请忽略搭建编程环境这一步。

初学者入门阿里云Haas100开发板基本步骤

1.2 修改程序

打开C:\Users\Administrator\AliOS-Things\application\example\blink_demo目录下的blink_demo.c。

根据个人喜好可以使用各种工具,推荐使用Notepad++。

可通过链接https://download.csdn.net/download/youngwah292/12127037下载

打开之后,进入第31行,用0x22替代原来的GPIO_LED_IO。为什么用0x22这个特殊的十六进制数字代替呢?后面再详细分析。

注意,修改完毕后,一定点击保存按钮。否则可能编译的还是未修改的代码。

1.3 编译

使用cmd命令打开命令行

然后通过cd 命令到alios-things目录下

cd alios-things

然后运行配置命令

aos make blink_demo@haas100 -c config

然后编译

aos make

编译成功的界面是下图这样的,如果编译不成功,请参考初学者入门阿里云Haas100开发板基本步骤

1.4 烧录

首先确保开发板供电,并连接Micro USB线缆到电脑,并保证USB驱动安装成功。

进入目录C:\Users\Administrator\AliOS-Things\platform\mcu\haas1000\release\write_flash_gui

找到烧录工具

双击打开

设置串口号

选择烧录

首先拔掉电源线,然后再插上

这时开始烧录,等待烧录完成后,点击停止即可。

 

2 编程效果

如下图所示,红框选中的LED间隔1秒闪烁

3.原理分析

3.1 硬件分析

为什么将GPIO_LED_IO修改为0x22就能让指定的LED闪烁,而不是全部一起闪烁?

我们看阿里云的官方文档,这5个LED的引脚编号是40 41 36 35 34

https://help.aliyun.com/document_detail/184426.html?spm=a2c4g.11186623.6.692.2cfc5186bqGYXP

用十六进制来表示它们,就分别是 0x28(40 LED1)  0x29(41 LED2)  0x24(36 LED3)  0x23(35 LED4) 0x22(34 LED5)

经过测试,LED1(0x28)编程之后不能用(测试2遍,原因待定),LED编号标注如下:

3.2软件分析

例程中的闪烁是通过hal_gpio_output_toggle函数实现的,toggle的英文意思是“切换”。

函数的原型位于C:\Users\Administrator\AliOS-Things\platform\mcu\haas1000\hal

HAL的意思是硬件抽象层(Hardware Abstraction Layer)

gpio.c文件的内容如下图,这个文件还没有直接操作gpio,还调用了硬件驱动才完成硬件的操作。

 

4.结论

本例中并没有采用阿里云官方文档中推荐的 application/example/helloworld_demo/appdemo.c,而是采用了blink_demo,目的就是能够将GPIO的操作分析的更深入一些。HaaS100硬件资源丰富,掌握了一个简单的GPIO操作,就为操作其他硬件奠定了基础。

 

其他辅助文档请参阅

初学者入门阿里云Haas100开发板基本步骤

阿里云HaaS100物联网开发板学习笔记(一)硬件资源介绍

 

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TMS320VC5257H

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值