STM32CubeMX学习教程之一:GPIO输出之跑马灯
2018-03-27 11:35
686 查看
软件版本:
STM32CubeMX V4.25.0
System Workbench V2.4硬件:OneNet 麒麟座V2.3在STM32CubeMX中新建项目,选择正确的MCU型号
首先设置RCC和SYS,如下图
然后根据板子实际情况设置时钟(麒麟座外部晶振是12M,STM32F103x的最高主频是72M),如下图
GPIO设置 PC7, PC8, PA12和 PC10为GPIO_OUTPUT, (这是麒麟座V2.3的四个LED管脚),如下图
GPIO配置如下:
Project - setting ,ToolChain/IDE选择 SW4STM32,注意项目名称这里不能有空格,最好不要用中文。
勾选这里
保存以后,点击任务栏的生成代码图标
生成完毕以后在弹出的对话框点击"Open Project", System Workbench自动打开Eclipse并导入和打开了项目,然后展开项目树,双击编辑main.c,在while(1)之后和/*USER CODE END WHILE*/之间加入代码如下: MX_GPIO_Init();
/* USER CODE BEGIN 2 */
/* USER CODE END 2 */
/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
HAL_GPIO_TogglePin(LED1_GPIO_Port,LED1_Pin);
HAL_Delay(500);
HAL_GPIO_TogglePin(LED2_GPIO_Port,LED2_Pin);
HAL_Delay(500);
HAL_GPIO_TogglePin(LED3_GPIO_Port,LED3_Pin);
HAL_Delay(500);
HAL_GPIO_TogglePin(LED4_GPIO_Port,LED4_Pin);
HAL_Delay(500);
/* USER CODE END WHILE */然后任务栏上点击Run图标,然后系统可能会提示你选择Run/Debug Setting,在弹出的对话框点击New,选择Ac6 STM32 Debugging,
然后再Run一次,当然会报错的,原因请查看另一篇我的博客(https://blog.csdn.net/toopoo/article/details/79680323),所以需要右键点击 项目名Run.cfg ,给它改个名字,然后右键点击项目树里面的项目名称,选择“Propeties”,然后在Run/Debug Settings-选择项目名-Edit-Debugger-User Defined-Browse 那里选择你自己改名的配置文件:
然后右键点击那个新的cfg文件,选择"Open With - Text Editor", 进行如下更改:
source [find interface/stlink.cfg] 更改为 source [find interface/stlink-v2.cfg]
reset_config srst_only srst_nogate connect_assert_srst 这一行改为 reset_config none
然后再Run一下,就可以了。
STM32CubeMX V4.25.0
System Workbench V2.4硬件:OneNet 麒麟座V2.3在STM32CubeMX中新建项目,选择正确的MCU型号
首先设置RCC和SYS,如下图
然后根据板子实际情况设置时钟(麒麟座外部晶振是12M,STM32F103x的最高主频是72M),如下图
GPIO设置 PC7, PC8, PA12和 PC10为GPIO_OUTPUT, (这是麒麟座V2.3的四个LED管脚),如下图
GPIO配置如下:
Project - setting ,ToolChain/IDE选择 SW4STM32,注意项目名称这里不能有空格,最好不要用中文。
勾选这里
保存以后,点击任务栏的生成代码图标
生成完毕以后在弹出的对话框点击"Open Project", System Workbench自动打开Eclipse并导入和打开了项目,然后展开项目树,双击编辑main.c,在while(1)之后和/*USER CODE END WHILE*/之间加入代码如下: MX_GPIO_Init();
/* USER CODE BEGIN 2 */
/* USER CODE END 2 */
/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
HAL_GPIO_TogglePin(LED1_GPIO_Port,LED1_Pin);
HAL_Delay(500);
HAL_GPIO_TogglePin(LED2_GPIO_Port,LED2_Pin);
HAL_Delay(500);
HAL_GPIO_TogglePin(LED3_GPIO_Port,LED3_Pin);
HAL_Delay(500);
HAL_GPIO_TogglePin(LED4_GPIO_Port,LED4_Pin);
HAL_Delay(500);
/* USER CODE END WHILE */然后任务栏上点击Run图标,然后系统可能会提示你选择Run/Debug Setting,在弹出的对话框点击New,选择Ac6 STM32 Debugging,
然后再Run一次,当然会报错的,原因请查看另一篇我的博客(https://blog.csdn.net/toopoo/article/details/79680323),所以需要右键点击 项目名Run.cfg ,给它改个名字,然后右键点击项目树里面的项目名称,选择“Propeties”,然后在Run/Debug Settings-选择项目名-Edit-Debugger-User Defined-Browse 那里选择你自己改名的配置文件:
然后右键点击那个新的cfg文件,选择"Open With - Text Editor", 进行如下更改:
source [find interface/stlink.cfg] 更改为 source [find interface/stlink-v2.cfg]
reset_config srst_only srst_nogate connect_assert_srst 这一行改为 reset_config none
然后再Run一下,就可以了。
相关文章推荐
- STM32CubeMX学习教程之二:GPIO输入之外部中断
- STM32CubeMX学习教程之三:GPIO输入之利用SysTick中断给按键去抖
- 【学习OpenCV】教程三:图像的载入,显示和输出
- Python学习入门基础教程(learning Python)--1.2.1 Python输出语句print基本使用 .
- 【Scikit-Learn 中文文档】监督学习:从高维观察预测输出变量 - 关于科学数据处理的统计学习教程 - scikit-learn 教程 | ApacheCN
- 【Scikit-Learn 中文文档】监督学习:从高维观察预测输出变量 - 关于科学数据处理的统计学习教程 - scikit-learn 教程 | ApacheCN
- 【Scikit-Learn 中文文档】四十五:监督学习:从高维观察预测输出变量 - 关于科学数据处理的统计学习教程 - scikit-learn 教程 | ApacheCN
- 简明Python教程学习笔记_7_输入输出和文件操作
- 使用HAL库、STM32CubeMX和Keil 5开发入门教程:GPIO
- 【Scikit-Learn 中文文档】监督学习:从高维观察预测输出变量 - 关于科学数据处理的统计学习教程 - scikit-learn 教程 | ApacheCN
- 【Scikit-Learn 中文文档】监督学习:从高维观察预测输出变量 - 关于科学数据处理的统计学习教程 - scikit-learn 教程 | ApacheCN
- Python学习入门基础教程(learning Python)--1.2.2 Python格式化输出基础 .
- 【Scikit-Learn 中文文档】监督学习:从高维观察预测输出变量 - 关于科学数据处理的统计学习教程 - scikit-learn 教程 | ApacheCN
- 【Scikit-Learn 中文文档】监督学习:从高维观察预测输出变量 - 关于科学数据处理的统计学习教程 - scikit-learn 教程 | ApacheCN
- Python学习入门基础教程(learning Python)--1.2.3 Python格式化输出百分比
- 【Scikit-Learn 中文文档】监督学习:从高维观察预测输出变量 - 关于科学数据处理的统计学习教程 - scikit-learn 教程 | ApacheCN
- 学习原子哥STM32M4(1):GPIO输出配置
- 第一章 学习CC3200 GPIO输出
- 《objective-c基础教程》学习笔记 (一)—— 开发环境配置和简单类型输出
- STM32学习笔记——使用函数库编程控制GPIO口输出