datasheet

STM32开发笔记75: 使用STM32CubeMX点亮一个LED

2019-07-13来源: eefocus关键字:STM32  STM32CubeMX  LED

今天调试在自己的程序框架下调试RTC始终不成功,只要初始化RTC就进入死机状态。现在重温一下STM32CubeMX的使用方法,看STM32CubeMX生成的程序是否有RTC初始化不成功的问题。本日志从工程的建立讲到点亮一个LED。


1、启动STM32CubeMX,我现在使用的版本是5.2.1。



2、File-New Project,选择相应的芯片类型。



3、双击相应的芯片类型后,进入配置界面。进行SYS配置,选中Debug Serial Wire,由于我习惯于使用FreeRTOS所以在我的项目中Timebase Source都选择定时器。



4、进行RCC设置。



5、时钟设置如下:



6、在芯片引脚图中,将连接LED的引脚设置为GPIO_Output



7、在GPIO设置中,将LED引脚的User Label设置为LED。



8、上述完成后,首先保存共存,然后对工程进行配置,如下图。



9、接下来,就可以生成程序了,点击GENERATE CODE即可。



10、用keil打开工程文件,在while(1)中加入如下代码:


while (1)

  {

    /* USER CODE END WHILE */

HAL_GPIO_TogglePin(LED_GPIO_Port, LED_Pin); //LED取反

  HAL_Delay(1000);

    /* USER CODE BEGIN 3 */

  }

11、对keil进行设置,勾选Reset and Run。



12、编译后,将程序下载到目标板,就可以看到LED以1秒为间隔闪亮了。


关键字:STM32  STM32CubeMX  LED

编辑:什么鱼 引用地址:http://www.eeworld.com.cn/mcu/ic467680.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:STM32开发笔记76: 初始化RTC后死机的原因
下一篇:STM32开发笔记74: STM32L0低功耗唤醒后的时钟选择

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

STM32又添一虎将,一芯双核,性能飙升

自2007年意法半导体(ST)在北京发布首款STM32产品以来已有10年之久,在这风雨十年里,STM32出货量高达30亿颗,成为中国第一大微控制器品牌。不止于此,随着IoT的应用趋势逐渐明显,对其中的MCU需求也日益增加。为此,在ST的战略中,最终目标是要打造一个宏伟的战略生态系统,成为产业领导者。  ST不断扩充着STM32系列,2019年7月,ST在北京召开新品发布会,推出了首款双核MCU——STM32H7。来自ST微控制事业部高级市场经理Renaud Bouzereau详细介绍了它的性能优势。  STM32H7采用Arm Cortex-M系列中性能最高的480MHz
发表于 2019-07-15
STM32又添一虎将,一芯双核,性能飙升

STM32开发笔记45:看门狗驱动程序的移植

单片机型号:STM32F070F6P6本文介绍将看门狗驱动程序移植到自己工程中的方法,本项目使用的是独立看门狗IWDG。1、在STM32CubeMX中使能看门狗,如下图所示。2、查看看门狗时钟。3、对看门狗进行设置,这里主要的是设置IWDG down-counter reload value。IWDG counter clock prescaler为分频系数,我现在项目设置的IWDG的时钟是40KHz,所以分频后为40000/64=625Hz,我先在项目需要使用5秒的看门狗,则625*5=3125,就是IWDG down-counter reload value的数值。4、在自己的工程中引入stm32
发表于 2019-07-15
STM32开发笔记45:看门狗驱动程序的移植

STM32开发笔记46:STM32F0低功耗设计

单片机型号:STM32F070F6P6项目中需要使单片机STM32F070F6P6进入低功耗模式,本文记录整个过程。1、STM32F070的低功耗模式:2、低功耗模式描述,在项目中希望外部中断予以唤醒,所以三种低功耗模式,都可以使用。3、进入Stop模式的代码如下,实际测得进入Stop模式后,8.0uA。在这里需要注意的是,我选用的单片机STM32F070F6P6,仅有端口A、端口B和端口F。我使用参考例程,没有注意里面的具体写法,增加了端口C和端口D,则一直进入不了Stop模式,网上说需要停止SysTick,这些都是不正确的。只有进入Sleep模式,才需停止SysTick,在Stop模式中,不需事先关闭SysTick。程序开始
发表于 2019-07-15
STM32开发笔记46:STM32F0低功耗设计

STM32开发笔记47:STM32F4+DP83848以太网通信指南系列(一)

单片机型号:STM32F407VGT本章为系列指南第一章,主要是介绍一下项目思路,并且尽可能列出从零开始着手开发这个项目过程中,所需要理解的各类知识点,关于这些知识点,如果需要更详细的介绍,请列为看官自行百度谷歌。STM32F407简介STM32F407主频168MHz,主频这个数值的意义可以这么理解:每秒执行168,000,000步简单指令,也就是每毫秒168,000次,每微秒168次。我们工业以太网进入实时通信后的数据传输周期大概每2ms交互4次,每次60个Byte,最差的算法复杂度计算下来需要每毫秒4 / 2 * 60byte = 120步(事实上用不了这么多步),而这颗STM32F07的芯片提供每毫秒168,000次操作
发表于 2019-07-15
STM32开发笔记47:STM32F4+DP83848以太网通信指南系列(一)

STM32开发笔记48:STM32F4+DP83848以太网通信指南系列(二):系

本章为系列指南第二章,主要是介绍一下STM32F4的时钟配置。时钟是一个嵌入式产品从零开始开发的基石,一切逻辑都在时钟的节奏中安静地弹奏着,时钟为整个电路带来了欢快的「心跳」。开发者如果对时钟没有控制能力,就会把脉不准整个旋律的节奏,从而导致诸如通信波特率、通信时序、延时操作等关键功能全都紊乱,系统的构建也就无从谈起。时钟如此重要,那么普通开发者,需要对时钟有多深的认知呢?STM32F4的时钟配置到底复不复杂?几行代码能搞定?不要着急,我下面将用最简单的白话文来剖析STM32的时钟系统。不过在这之前,我们应该先吃一颗定心丸,因为在STM32中配置时钟是非常简单的,简单到我们甚至不需要写一行代码就能配置好,因为从标准库3.5版本
发表于 2019-07-15
STM32开发笔记48:STM32F4+DP83848以太网通信指南系列(二):系

STM32开发笔记49:STM32F4+DP83848以太网通信指南系列(三)

本章为系列指南的第三章,这一章将会在正式进入以太网的配置和使用之前,复习一下STM32的中断以及中断向量,因为我们以后要在中断中响应以太网收包。中断—嵌入式中的多线程从51单片机到ARM架构的32位微芯片,到树莓派、Ardunio等单板机,中断的概念对于这些芯片都非常重要。本人是纯软件工程师出身,科班学习时根本没有接触过嵌入式开发,学的都是C++,C#,JAVA,Go这些语言。在我看来嵌入式中的中断就相当于这些高级语言中的多线程,main()函数定义了一条主线程,然后各种配置出来的中断Handle就是游离在主线程之外的各种事件的回调函数,他们会在不同的事件下响应并触发,一旦触发中断,CPU的运算逻辑将会在主线程中打个断点,并立
发表于 2019-07-15

小广播

何立民专栏

单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2019 EEWORLD.com.cn, Inc. All rights reserved