STM32G030F6P6 CubeMX和keil5开发环境的搭建

规格了解

  • 封装:TSSOP-20
  • 内核:Arm® 32 位 Cortex®-M0+ CPU
  • 工作电源电压:2 V to 3.6 V
  • CPU频率:64 MHz
  • Flash存储器:32KB
  • RAM:8KB
  • USART:两个带主/从的 USART
  • 数据总线宽度::32 bit
  • ADC分辨率:12 bit
  • 输入/输出端数量:17 I/O
  • 最小工作温度:-40 °C
  • 最大工作温度:+85°C
  • 上电/掉电复位 (POR/PDR)
  • 低功耗模式:睡眠、停止、待机
  • RTC 和备份寄存器的 VBAT 电源

软件平台相关下载

STM32CubeMX下载

到st官网,按以下流程下载:
1.根据以下选项进行选择
在这里插入图片描述
2.点击STM32Cube图标,跳转到STM32Cube生态系统中
在这里插入图片描述
3.点击STM32CubeMX
在这里插入图片描述
4.根据所使用的系统选择对应的软件
在这里插入图片描述
也可以直接在首页点击搜索框,选择Tools & Software,搜索stm32cubemx,就能直接到上面那个界面(再选择一下)
在这里插入图片描述

5.填写邮箱地址即可下载文件
6.解压出来文件如下:我下载的是v6.5.0版本,如果下载的是5.几或者4.几的版本,可能需要一个Java的运行环境JRE(JRE到oracle官网下载)
在这里插入图片描述
7.点击解压出来的.exe文件,前面一直点击next,到下面勾选一下:
在这里插入图片描述
8.选择路径(最好不要出现中文及中文标点符号)
9.选择下列选项,之后便开始安装
在这里插入图片描述
10.下载完成后的界面
在这里插入图片描述

keil下载

https://www.keil.com/官网下载或者其他途径

1.keil不仅能够开发arm的STM32,也能开发C51单片机以及其他单片机,所以在以下界面进行选择时,要选对选项:MDK-Arm
在这里插入图片描述
2.如果ST-Link不是官方的ST-Link,那么需要下载keil5.25的版本,官方没有提供,需要想购买ST-Link的商家索要(询问清楚是否新版IDE能够通过该ST-Link进行升级)。填写相关信息后,就会出现下载链接

3.软件包的下载地址www.keil.com/dd2/pack,找到对应的软件包:
在这里插入图片描述

4.在点击MDK525.EXE后的安装过程中,会出现下面两个路径:

  1. 指定keil5的安装路径
  2. 指定Keil.STM32G0xx_DFP.1.4.0.pack的安装路径(keil安装好后点击pack包即可安装)

在这里插入图片描述

5.注意填写真实的邮箱,方便之后的注册:

在这里插入图片描述

6.取消勾选,不阅读更新的内容
在这里插入图片描述

7.弹出来的这个界面相当于CubeMX的固件安装界面,但由于我们提前把pack给下载好了,所以直接点击安装即可

在这里插入图片描述

8.打开在第3步下载好的pack包,点击下一步进行安装后,程序会将这个软件包解压到对应的路径中:
在这里插入图片描述

9.要使用keil5还需要进行注册,不然使用的过程中会出现没办法编译或者说其他问题;以右键以管理员身份进行运行,点击File→License Management:

注册破解方法

10.keil5用于代码的编写以及烧录,CubeMX用于代码的生成

软件平台的使用

我们这个开发板是 STM32G030F6P6 ,需要下载对应的库,cubemx是用来生成这一个工程的配置文件的,比如说初始化IO端口,初始化外设,这样就不用自己写代码来配置每一个外设了。

一般情况下,CubeMX软件如果用在商业途径的话,是需要购买授权的,但是F0和G0在开发的时候,是提供了免费的授权的,这两个系列都是可以免费开发使用的

CubeMX对应固件下载

1.开始使用时,会弹出以下一个界面,接下来要下载固件库(Firmware Repository):
在这里插入图片描述
2.使用前,最好先修改固件库的安装路径:
在这里插入图片描述
在这里插入图片描述

3.下载对应的固件库
在这里插入图片描述
4.这里我选择最新版的STM32G0,下载过程中会弹出一个 license agreement,点击accept
在这里插入图片描述

Keil ST-Link的设置

CubeMX工程新建及ST-Link的设置

  • 6
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
下面是一个简单的示例程序,使用STM32G030F6P6控制WS2812 LED灯带。请注意,此示例需要使用STM32CubeMX和Keil IDE进行配置和编译。 1. 配置STM32G030F6P6 使用STM32CubeMX创建一个新的项目,并进行以下配置: - 选择正确的芯片型号 - 配置时钟源和时钟分频器 - 配置GPIO引脚,将WS2812的数据线连接到其中一个引脚,例如PA0 - 配置定时器TIM2,用于产生精确定时的时钟信号 2. 编写WS2812驱动程序 在Keil IDE中创建一个新的C文件,并将以下代码复制到其中: ```c #include "stm32g0xx_hal.h" #define LED_COUNT 8 // 8个LED灯 #define LED_DATA_SIZE (LED_COUNT * 24) // LED数据大小 #define TIM_PRESCALER 0 // 定时器分频器 #define TIM_PERIOD 89 // 定时器周期(根据WS2812的要求计算得出) // WS2812数据缓冲区 uint8_t led_data[LED_DATA_SIZE]; // WS2812驱动函数 void ws2812_send(uint8_t *data, uint16_t size) { uint16_t i, j; // 禁用中断 __disable_irq(); // 发送数据 for (i = 0; i < size; i++) { for (j = 0; j < 8; j++) { if ((data[i] & (1 << j)) != 0) { // 发送逻辑“1” HAL_GPIO_WritePin(GPIOA, GPIO_PIN_0, GPIO_PIN_SET); __NOP(); __NOP(); __NOP(); __NOP(); HAL_GPIO_WritePin(GPIOA, GPIO_PIN_0, GPIO_PIN_RESET); __NOP(); __NOP(); __NOP(); } else { // 发送逻辑“0” HAL_GPIO_WritePin(GPIOA, GPIO_PIN_0, GPIO_PIN_SET); __NOP(); HAL_GPIO_WritePin(GPIOA, GPIO_PIN_0, GPIO_PIN_RESET); __NOP(); __NOP(); __NOP(); __NOP(); } } } // 启用中断 __enable_irq(); } // 定时器中断处理函数 void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) { // 发送WS2812数据 ws2812_send(led_data, LED_DATA_SIZE); } int main(void) { // 初始化HAL库 HAL_Init(); // 初始化时钟 SystemClock_Config(); // 配置GPIO引脚 GPIO_InitTypeDef GPIO_InitStruct = {0}; GPIO_InitStruct.Pin = GPIO_PIN_0; GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP; GPIO_InitStruct.Pull = GPIO_NOPULL; GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_HIGH; HAL_GPIO_Init(GPIOA, &GPIO_InitStruct); // 配置定时器 TIM_HandleTypeDef htim2 = {0}; htim2.Instance = TIM2; htim2.Init.Prescaler = TIM_PRESCALER; htim2.Init.Period = TIM_PERIOD; htim2.Init.CounterMode = TIM_COUNTERMODE_UP; htim2.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1; htim2.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_ENABLE; HAL_TIM_Base_Init(&htim2); // 启动定时器 HAL_TIM_Base_Start_IT(&htim2); // 测试代码:设置LED颜色 uint8_t i; for (i = 0; i < LED_COUNT; i++) { led_data[i * 24] = 255; // 红色 led_data[i * 24 + 1] = 0; // 绿色 led_data[i * 24 + 2] = 0; // 蓝色 } while (1) { // 循环等待 } } ``` 3. 编译和下载程序 在Keil IDE中编译程序,并将程序下载到STM32G030F6P6芯片中。连接WS2812 LED灯带的数据线到配置的GPIO引脚上,然后启动程序。 如果一切正常,你应该能看到WS2812 LED灯带显示出设置的颜色。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值