BearPi-IoT Std学习笔记1——搭建开发环境及用GPIO点亮LED

A.开发环境的搭建:

1.MDK(Keil 5)编译开发环境搭建

1.1硬件要求:

  • 主机电脑win10+
  • BearPi-IoT Std开发板
  • USB Micro线(Windows工作台通过USB与BearPi-IoT Std开发板连接)

1.2.1MDK安装

a.登录MDK官网,下载MDK5软件,下载地址: http://www2.keil.com/mdk5 或者 https://www.keil.com/download/product/ 下载的版本最好在5.24以上.

双击MDK524应用程序文件,点击Next>>

b.打上 I agree前面的勾勾,即是同意一些安装协议。点击Next>>

c.选择安装路径,可以默认也可以安装在我们自己建立的文件夹下,安装路径最好是纯英文的,点击Next>>

 

 d.这里填写的是我们的一些信息,填写完整后,继续Next>>

 e.然后等待安装完成即可。

 f.安装完成,点击Finish

g.然后会跳出来这个界面,这个我们后面再讲,先点OK,把弹框都叉掉。

h.激活MDK,导入License,激活MDK后便可使用了,至于怎么激活,可以去搜一下。

 

 1.2.2MDK安装:

安装完MDK后,我们需要安装开发套件中单片机型号对应的Pack。

方式一: 登录官网:http://www.keil.com/dd2/pack/ 下载Keil.STM32L4xx_DFP.2.0.0.pack 后安装

 

 方式二:MDK软件上在线安装,(这部分更详细的安装教程建议去看B站江科大的视频[2-1] 软件安装_哔哩哔哩_bilibili)

打开Keil5软件,在导航栏打开Pack安装界面,然后选择ok选项。

进入在线安装界面,选着STM32L4XX Pack,点击Install进行安装 

至此,我们BearPi-IOT Stu开发板的单片机程序开发环境已经搭建完毕,重启MDK软件就可以使用了。 

1.3ST-Link驱动安装:

a.工具下载:https://pan.baidu.com/s/1wZonu5R91Wwr8FGm4VaoAg?pwd=1234 提取码:1234

解压:en.stsw-link009.zip

以管理员方式运行stlink_winusb_install.bat

将开发板与电脑连接,右击“我的电脑”打开“管理”,点击“设备管理器”,展开“端口”和“通用串行总线设备”如下图所示即为安装成功。

 2.STM32CubeMX的环境安装:

2.1安装STM32CubeMX的条件:

a.JRE(Java Runtime Environment):JAVA运行环境。

b.STM32CubeMX软件:生成初始化代码的地方。

c.HAL库 PACK包:F0、F1、F3、H7等Cortex内核,都需要对应的PACK包安装

2.2安装JAVA JRE:

64位JRE官网下载链接: https://www.java.com/en/download/manual.jsp

(1)勾选“更改目标文件夹”,点击“安装”。

以《jre-8u321-windows-x64.exe》版本为例

(2)点击“更改(C)...”修改目标路径地址,最好全是英文路径,否则极容易出bug,如D:\JAVA,然后点击下一步

 (3)等待安装完成,关闭界面。

2.3安装STM32CubeMX:

(1)官网下载安装包:www.st.com/stm32cubemx,选择“Get Software”。

(2)选择对应的STM32CubeMX版本信息,本次以STM32CubeMX-5.3.0版本为例。

 (3)打开STM32CubeMX-5.3.0安装包,点击“Next”。

(4)同意协议“I accept the terms of this license agreement.”,点击“Next”。

(5) 勾选第一个即可(I have read and understood.....),第二个选项是是否同意ST公司收集你的个人使用信息等。

(6)选择要安装的目录,点击“Next”。

(7)出现弹窗 Warning,点Yes即可

(8) 默认设置,点击“Next”即可。

(9)等待安装完成,点击“Next”。

(10)安装完成后,点击Done,即可完成安装

2.4 安装STM32 HAL库:

(1)打开桌面快捷方式STM32CubeMX 软件,点击右上角“Help”,选择“Manage  embedded  saftware packages”

(2)如下所示的选择型界面,勾选所需的HAL库,本例程以《智能小屋ZYXC》开发的STM32L431RCT6开发板作为演示,选择的则为STM32L4 —>STM32Cube MCU Package for STM32L4 Series(Size:712MB) 1.14.0版本。

 (3)安装完毕后,点击右下角的Close即可。

3.IoT Studio安装 :

IoT Studio下载地址如下:

https://developer.obs.cn-north-4.myhuaweicloud.com/idea/IoT-Studio.zip

下载会得到一份压缩包,其中包含一份安装指南,详细的安装教程可以参考该文档。

使用一键安装方式,无须再手动安装其他工具,安装步骤如下:

双击运行IoT-Studio_0.3.5.exe文件开始安装。

选择安装路径,可以改动,不要有中文和空格,否则会由bug,这里我保持默认:

 

确认设置,开始安装:

安装完成,选择是否安装ST-Link和JLink驱动和工具,推荐全选(当然前面已经装了STLINK,所以这里只需要安装JLINK即可):

 IoT Studio安装成功之后会自动运行,在首次运行时检测到没有开发工具包,选择“是”,软件会调用浏览器开始下载,下载好之后双击运行developTools.exe

软件会自动将需要用到的开发工具解压到C:\Users\Administrator\openSourceTools目录

 

这里我是Administrator,不同的用户目录名称不同!

之后软件会自动开始安装ST-LinkJ-**Link**,根据提示安装即可。

打开工具目录,里面有两个路径需要我们在IoT Studio中配置:

GNU Tools Arm Embedded:存放arm-gnone-eabi-gcc编译器的路径,用来编译程序

GNU MCU Eclipse:存放make工具的路径,用来构建编译;

这两个路径仅作了解即可,下一节创建项目时会说明如何在IoT Studio中配置

 安装完develop Tools之后,再次启动IoT Studio,无提示说明开发工具安装成功,IoT Studio的主界面如下

在IoT Studio启动页面,选择用户指导文档,即可打开 IoT Studio 完整的使用指南,在以后使用的过程中遇到任何问题,都可以在此文档中找到答案。

B.使用GPIO点亮LED:

1.了解BearPi IOT Stu开发板:

2.点亮LED:

查看原理图,确定控制LED引脚,PC13高电平时,LED灯亮,PC13低电平时,LED灯灭。

 2.1STM32CubeMX的工程创建:

a.打开STM32CubeMX软件,打开MCU选择器:

b.搜索并选中芯片STM32L431RCT6,然后双击选中右边的对应的芯片

 

 c.配置时钟源

(注:如果选择使用外部高速时钟(HSE),则需要在System Core中配置RCC;如果使用默认内部时钟(HSI),这一步可以略过;)

 这里一般都使用外部时钟

 d.接下来选择配置PC13引脚

先左键单击PC13,然后选中GPIO_Output

 e.配置时钟树

STM32L4的最高主频到80M,所以配置PLL,最后使HCLK = 80Mhz即可

f.生成工程设置,此处设置工程名称、工程保存路径、IDE类型。(注意工程路径不要有中文路径 ,我就是因为中间有个中文路径,导致最后点灯不成功)

点击ProjectManager>>Project>>建立工程文件名ProjectName>>选择工程路径>>选择IDE ——MDK-ARM ,电压为5V

 g.代码生成设置

选择左边的Code Generator,接着按下图选择: 

最后点击GENERATE CODE即可生成MDK-V5工程:

如果出现下图就说明代码生成成功了:

 h.STM32CubeMX生成的代码目录如下:

进入MDK-ARM文件夹目录,打开工程:

 

 2.2输入代码:

我们写代码之前,先要了解一些细节

我们写代码时,要在像这种的begin和end组合里写,这样在STM32CubeMX修改工程文件时,可

以避免自己写的代码被覆盖掉,所以以后写代码时,一定要先找到begin和end组合,然后在里面

写,在点灯的代码中,先找到main函数里的while函数,之后按下图去写

while (1)
  {
    /* USER CODE END WHILE */
    HAL_Delay(200);
    HAL_GPIO_TogglePin(GPIOC, GPIO_PIN_13);	 
    /* USER CODE BEGIN 3 */


  }

main.c中的main函数中编写简单的用户代码,此处的代码的意思为:

每隔200毫秒翻转一次LED引脚的电平,使LED灯达到闪烁的效果。

开发者可自行修改延时时间来调整闪烁频率

2.3代码烧录:

a.编译代码,点击如图所示的按钮编译工程

编译成功 

b.设置下载器,点击如图所示按钮打开设置页面(魔法棒):

进行下载设置,选择“ST-Link Debugger”,并点击“Settings” 

 

在“Flash Download”菜单下勾选“Reset and Run”选项,其意思为已达到烧录程序后单片机自动复位并运行程序的目的。然后点击确定

 

 c.下载运行,点击"LOAD"按钮即可烧录代码到单片机中

出现下图就代表烧录成功

 

 

本课程《华为物联网操作系统LiteOS》是朱老师物联网大讲堂推出的一套物联网理论和实践相结合的视频课程。本课程以渐次递进的方式讲了以下4个主题。主题1物联网,这是整个课程第1部分。主要讲了物联网的概念、发展历程、物联网的典型案例和应用场景,从技术角度深度阐述了物联网的4层架构、分析了各层次的核心技术和实现原理。本部分的主要目的是让大家对物联网有一定深度和专业性的理解。很多人一直对物联网有兴趣,也找了不少资料看了不少书,但是越看越糊涂,尤其很多物联网专业的大学生,经过几年的大学学习仍然不知道究竟什么是物联网,更不知该如何去学习物联网,本部分就是为解决这个疑问而生。主题2:操作系统,这是整个课程第2部分。主要讲了操作系统的基本原理,操作系统的作用和组成部分,让我们明白裸机开发和基于操作系统的开发有什么差异。这部分是比较偏理论的,是为了解决很多同学对操作系统的认知基础的。很多同学甚至是开发者,尤其是单片机的开发者习惯了裸机开发,直接基于寄存器或者官方库函数(譬如stm32的HAL库、标准库)的开发,心里很疑惑到底什么是操作系统,为什么裸机开发也能做项目还需要操作系统?用不用操作系统的差异在哪里?为什么要去学习操作系统?应该如何学习操作系统?本部分就是为了回答这些问题。主题3:物联网操作系统,这是整个课程的的3部分。物联网操作系统是专为物联网而研发和设计的操作系统,是物联网设备的核心技术。物联网操作系统也是一种操作系统,他具有操作系统的普遍特性(以前前面我们才先学习泛性的普遍的操作系统),但是物联网操作系统有它很多独特的特性,华为的LiteOS就是一款非常典型的优秀的物联网操作系统,除此之外国内还有诸如RT-Thread、AliOSThings等其他优秀物联网操作系统,国外还有Amazon的Freertos等物联网操作系统。那究竟物联网操作系统有什么特别之处?物联网产品如何选择操作系统?如何基于操作系统来开发物联网产品?本部分课程将回答这些问题。主题4:华为物联网操作系统LiteOS,这是整个课程的第4部分。本部分聚焦LiteOS,基于前3部分的铺垫,向大家详细讲解LiteOS的设计思路,专门安排了2大章节来详细分析LiteOS的kernel源码和周边组件源码,还介绍了我们专为学习物联网而设计的NB476开发板,且基于该开发板和LiteOS设计了一个温湿度和断电检测报警器的典型的物联网产品试验,在试验实战中让大家体会基于LiteOS的物联网项目的开发方式。本部分是整个课程中最重头戏的部分,篇幅占据整个课程的一半左右。因此实际上我们整个课程的内容还是比较偏技术性的,可谓低走高开。从基础概念起步,最终带大家能够去做产品。课程特色*完全零基础,降低学习门槛。*深入浅出,通俗易懂。不怕学不会,就怕你不学习。*思路清晰、语言风趣,对着视频看也不会想睡觉······*视频 + 文档 + 练习题 + 答疑,全方位保证学习质量。*基础知识 + 思路引导的教学方式,授之以鱼更授之以渔。*系列课程。本教程只是入门篇,后续还有更多更精彩视频更新中。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

夜雨星辰487

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

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

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

打赏作者

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

抵扣说明:

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

余额充值