STM32CubeMX Nucleo F767ZI 教程(1)
STM32CubeMX Nucleo F767ZI 教程(1)文章目录
- STM32CubeMX Nucleo F767ZI 教程(1)
- 前言
- 一、开发环境以及要求
-
- 1.开发板 NUCLEO-F767ZI
- 2.STM32CubeMX Version 6.1.1
- 3.MDK-ARM
- 二、简单的LED入门项目
-
- 1.STM32CubeMX配置
- 2.MDK-ARM 代码编写
前言
官网上买了个NUCLEO F767ZI 的开发板,144引脚的芯片,本系列的文章就是记录整个学习的过程。默认大家是有一定的基础,有些地方过于简单的就不进行说明了。 这块开发板的网址贴在下方了。https://www.st.com/content/st_com/zh/products/evaluation-tools/product-evaluation-tools/mcu-mpu-eval-tools/stm32-mcu-mpu-eval-tools/stm32-nucleo-boards/nucleo-f767zi.html。
一、开发环境以及要求
1.开发板 NUCLEO-F767ZI
2.STM32CubeMX Version 6.1.1
3.MDK-ARM
二、简单的LED入门项目
1.STM32CubeMX配置
选择这个开发板对应的选择界面
选择之后,它会提示按照默认的模式进行配置项目文件,我们点OK即可。
在UM1974 文档中的 6.8 OSC clock 一章中有说明。
MCO from ST-LINK (Default): MCO output of ST-LINK is used as input
clock. This frequency cannot be changed, it is fixed at 8 MHz and
connected to the PF0/PH0-OSC_IN of STM32 microcontroller.
板载了一个ST-LINK V2.1,这颗F767芯片的输入时钟是由ST-LINK的MCO提供的。此处我们要修改一下RCC的配置选项,使得主频达到最高。
其他的暂时可以不用修改。然后进入项目配置页面,设置一下以生成MDK-ARM的工程文件,然后以单个文件的形式生成各个驱动。
然后就可以点击右上角的 GENERATE CODE 生成项目文件。
2.MDK-ARM 代码编写
int main(void)
{
/* USER CODE BEGIN 1 *//* USER CODE END 1 *//* MCU Configuration--------------------------------------------------------*//* Reset of all peripherals, Initializes the Flash interface and the Systick. */HAL_Init();/* USER CODE BEGIN Init *//* USER CODE END Init *//* Configure the system clock */SystemClock_Config();/* USER CODE BEGIN SysInit *//* USER CODE END SysInit *//* Initialize all configured peripherals */MX_GPIO_Init();//MX_ETH_Init();MX_USART3_UART_Init();MX_USB_OTG_FS_PCD_Init();/* USER CODE BEGIN 2 *//* USER CODE END 2 *//* Infinite loop *//* USER CODE BEGIN WHILE */while (1){
HAL_GPIO_TogglePin(LD1_GPIO_Port,LD1_Pin);HAL_GPIO_TogglePin(LD2_GPIO_Port,LD2_Pin);HAL_GPIO_TogglePin(LD3_GPIO_Port,LD3_Pin);HAL_Delay(100);/* USER CODE END WHILE *//* USER CODE BEGIN 3 */}/* USER CODE END 3 */
}
此处需要把 MX_ETH_Init(); 注释掉,不然需要插入网线才能往下跑。
下载代码,复位一下,就能看到三个LED在闪烁了。