平时使用寄存器方式进行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 入门还算友好,开始还是很担心搞不定一个指示灯,现在有信心了,以后使用这种图形配置的方法了,速度还是快多了。
|