首页 > 评测 > STM32F0入门级开发板——STM32F072RB Nucleo评测
STM32F0入门级开发板——STM32F072RB Nucleo评测
- [导读]
- STM32F0系列MCU是意法半导体公司(以下简称ST)推出的入门级32位微控制器,基于ARM Cortex M0内核,最高频率可达48MHz,面向低成本入门级应用领域。
打开STM32CUBEMX软件,选择New Project新建一个工程,
选择STM32F072RB开发板,
生成工程后可以看到,软件已经自动按照STM32F072RB开发板的外设资源配置好了,现在要做的就是打开需要使用的相应外设,这里需要打开RCC和USART就好了,而开发板的USART2是直接连接到ST-LINK的虚拟串口的,我们可以直接虚拟串口来传输数据。
然后配置时钟,时钟选择HSE,经过PLL倍频,得到系统时钟,设置为最大的48MHz,
接着配置USART2的参数,波特率设置为115200,数据位8位,停止位1位,无检验位
配置完成后就可以生成工程了,
编译工具选择比较常见的Keil MDK,最后生成并打开工程:
先编译一下确定工程没有错误,
从上面截图可以看到,生成的工程中首先调用HAL_Init();函数初始化HAL库,接着SystemClock_Config();配置了系统时钟位之前cube中设置好的频率,然后MX_GPIO_Init();
和MX_USART2_UART_Init();分别初始化一些GPIO口和USART2,最后就是应用程序部分,而这部分也是需要我们自己来写的部分。
接下来添加代码,首先在main.c文件中添加下面的代码
#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;
}
这段代码的作用是重定向printf函数,使其原本的标准输出指向串口2,这样我们就能使用printf函数从串口输出,在调试时可以非常方便的查看运行信息和输出需要的数据。
接下来在主函数中添加代码测试使用printf发送数据。
HAL_GPIO_TogglePin(LD2_GPIO_Port,LD2_Pin);的作用是反正LD2接的IO口,这样就能看到开发板上LED的闪烁,最后HAL_Delay(500);延时等待500ms;完成代码添加后编译下载运行,可以从电脑端用串口助手连接虚拟串口,就能接收到开发板发出的数据了,同时开发板上的LED以1秒间隔闪烁,结果如下图。
一个简单的例子就完成了,有了STM32CUBEMX之后,真的是方便了工程师们的开发,节省了很多底层配置的时间,真是一个很好用的开发工具,ST呕心沥血开发出来并大力推广的工具,真是名副其实,造福广大工程师们。而看了上面的介绍,应该对这块开发板已经有一定了解,作为入门级开发板,比较简单,但也功能丰富,适合新手学习入门。
资源链接:
本文系21ic原创,未经许可禁止转载
- 本文系21ic原创,未经许可禁止转载!
网友评论
- 联系人:巧克力娃娃
- 邮箱:board@21ic.com
- 我要投稿
-
欢迎入驻,开放投稿
-
人均百万?英伟达中国员工收入曝光! 2024-08-29
-
《黑神话:悟空》玩家硬盘升级攻略:提升游戏体验,畅享3A大作 2024-08-29
-
数睿数据参加《系统与软件工程 低代码开发平台通用技术要求》国家标准编制 2024-08-29
- NRF52810蓝牙数字耳机找人定制
预算:¥30005天前
- 125KW模块式PCS软硬件外包开发
预算:¥1100000015小时前
- 12V汽车启动电源项目BMS设计
预算:¥50000023小时前
- 数据可视化软件 开发
预算:¥5000023小时前
- PLC项目调试修改
预算:¥100001天前
- 起动电机控制器开发
预算:¥1100001天前