平时使用寄存器方式进行STM32的编程,这次想尝试学习一下CubeMx的使用。 看了21论坛的一些帖子,开始准备以下软件: CubeMx Keil.STM32G0xx_DFP.1.3.0 MDK以前安装过,后来升级一下STM32G0B1的PACK包 CubeMx安装过程省略,启动CubeMx 选择新建工程,搜索栏填所用的信号,在结果里选择芯片或是板子(蓝色链接)
端口的配置已经设置好,先用默认的配置看看能否顺利运行第一个程序。 观察一下指示灯的端口是哪个脚,
选择生成MDK工程,当然也可以是IAR,根据自己的开发环境来选择。
生成工程,插上Nucleo-64 STM32G0B1板子,然后直接打开MDK工程,在“debug”发现ST-LINK,但是烧写没有该芯片,需要升级PACK包。
费劲的下载了这个包,Keil.STM32G0xx_DFP.1.3.0,双击安装后,
可以仿真下载运行。此时主程序没有动作。 现在可以加段代码,让板上的指示灯点亮看看效果。
可以看到板上的指示灯,开始闪烁起来了。
下一步,利用板上的串口,让MCU上传信息,看看在一根线里既能调试,还能监视串口。
主程序添加以下代码就能实现上传信息: #include "stdio.h"
UART_HandleTypeDef huart2;
#ifdef __GNUC__
#define PUTCHAR_PROTOTYPE int __io_putchar(int ch)
#else
#define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)
#endif
PUTCHAR_PROTOTYPE
{
HAL_UART_Transmit(&huart2 , (uint8_t *)&ch, 1, 0xFFFF);
return ch;
}
编译运行:
CubeMx 入门还算友好,开始还是很担心搞不定一个指示灯,现在有信心了,以后使用这种图形配置的方法了,速度还是快多了。
|