内容简介:开发板首先需要准备一个小熊派IoT开发板,并通过USB线与电脑连接。
1. 准备工作
硬件准备
开发板
首先需要准备一个小熊派IoT开发板,并通过USB线与电脑连接。
软件准备
需要安装好Keil - MDK及芯片对应的包,以便编译和下载生成的代码,可参考 MDK安装教程
2.生成MDK工程
选择芯片型号
打开STM32CubeMX,打开MCU选择器:
搜索并选中芯片 STM32L431RCT6
:
配置时钟源
- 如果选择使用外部高速时钟(HSE),则需要在System Core中配置RCC;
- 如果使用默认内部时钟(HSI),这一步可以略过;
这里我都使用外部时钟:
配置LED的GPIO引脚
查看小熊派开发板的原理图,如下:
所以接下来我们选择配置 PC13
引脚:
设置用户标签为LED:
配置按键的GPIO引脚
查看原理图,确定控制按键引脚,这里我们的F1按键接的是PB2,F2按键接的是PB3。
所以接下来我们选择配置 PB2
引脚和 PB3
引脚:
因为没有设置硬件上拉,所以我们配置开启上拉电阻,并设置用户标签为 KEY1
和 KEY2
:
配置时钟树
STM32L4的最高主频到80M,所以配置PLL,最后使 HCLK = 80Mhz
即可:
生成工程设置
代码生成设置
最后设置生成独立的初始化文件:
生成代码
点击 GENERATE CODE
即可生成MDK-V5工程:
3. 在MDK中编写、编译、下载用户代码
编写用户代码
打开MDK工程,在main.c中的main函数中编写简单的用户代码,这里的代码意思为:一直循环读取按键引脚的电平,当读取到F1按键引脚为低电平时,LED灯引脚输出高电平;当读取到F2按键引脚为低电平时,LED灯引脚输出低电平,所以当按下KEY1,LED点亮,按下KEY2,LED熄灭。
1 int main(void) 2 { 3 4 HAL_Init(); 5 6 SystemClock_Config(); 7 8 MX_GPIO_Init(); 9 10 while (1) 11 { 12 /* USER CODE BEGIN 3 */ 13 if(0 == HAL_GPIO_ReadPin(KEY1_GPIO_Port, KEY1_Pin)) 14 { 15 HAL_GPIO_WritePin(LED_GPIO_Port,LED_Pin,GPIO_PIN_SET); 16 } 17 if(0 == HAL_GPIO_ReadPin(KEY2_GPIO_Port, KEY2_Pin)) 18 { 19 HAL_GPIO_WritePin(LED_GPIO_Port,LED_Pin,GPIO_PIN_RESET); 20 } 21 } 22 /* USER CODE END 3 */ 23 }
编译代码
点击如图所示的按钮编译工程
编译成功
设置下载器
点击如图所示按钮打开设置页面
进行下载设置,选择“ST-Link Debugger”,并点击“Settings”。
在“Flash Download”菜单下勾选“Reset and Run”选项,已达到烧录程序后单片机自动复位并运行程序的目的。
下载运行
点击"LOAD"按钮即可烧录代码到单片机中。
烧录成功
实验现象
下载运行后,实验现象如下:
- 上电复位时LED处于熄灭状态;
- 按下KEY1,LED点亮;
- 按下KEY2,LED熄灭;
至此,我们已经学会了如何使用STM32CubeMX快速生成MDK的工程,以及如何使用 STM32CubeMX初始化GPIO进行按键检测,下一节讲述如何配置NVIC使用外部中断检测按键。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- GuiLite 2.9 发布:单片机 + 3D
- 单片机:I/O 输出功能
- 看我如何用Python操作单片机(一)
- GuiLite 1.6 发布:也为“单片机UI”而生
- Micropython进阶 | 如何用单片机制作鞋码匹配仪
- EmbedXrpc V1.9.4 已经发布,用于单片机场景的“gRPC”
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Pattern Recognition and Machine Learning
Christopher Bishop / Springer / 2007-10-1 / USD 94.95
The dramatic growth in practical applications for machine learning over the last ten years has been accompanied by many important developments in the underlying algorithms and techniques. For example,......一起来看看 《Pattern Recognition and Machine Learning》 这本书的介绍吧!