STM32H503开发(1)—-开发板测试

STM32H503开发—-1.开发板测试

  • 概述
  • 硬件准备
  • 视频教学
  • 样品申请
  • 源码下载
  • 产品特性
  • 参考程序
  • 生成STM32CUBEMX
  • 串口配置
  • LED配置
  • 堆栈设置
  • 串口重定向
  • 主循环
  • 演示
  • 概述

    STM32H503 & SENSOR是一款基于STM32H5系列微控制器的评估套件。该微控制器采用了40nm工艺制造,具有更快的FLASH访问,更高的性能以及更低的功耗。此外,该套件具有丰富的接口和外设,以及传感器(SENSOR)系列连接器接口,为开发者提供了便捷且灵活的开发环境。
    这里通过配置LED和UART输出进行简单测试。

    最近在弄ST的教程,需要样片的可以加群申请:615061293/925643491 。

    硬件准备

    首先需要准备一个开发板,这里我准备的是自己绘制的开发板,需要的可以进行申请。
    主控为STM32H503CBT6

    视频教学

    https://www.bilibili.com/video/BV1cdDLYEEdT/

    STM32H503开发(1)—-开发板测试

    样品申请

    https://www.wjx.top/vm/OhcKxJk.aspx#

    源码下载

    产品特性

    STM32H503xx 设备是基于高性能 Arm ® Cortex ® -M33 32 位 RISC 内核的高性能微控制器系列 (STM32H5 系列) 。它们的工作频率高达 250 MHz。
    Cortex ® -M33 内核具有单精度浮点单元 (FPU),支持所有 Arm ®单精度数据处理指令和所有数据类型。
    Cortex® – M33内核还实现了全套DSP(数字信号处理)指令以及内存保护单元(MPU),增强了应用程序的安全性。
    该设备嵌入高速存储器(128 KB 双组闪存和 32 KB SRAM),以及连接到三条 APB 总线、三条 AHB 总线和一个 32 位多 AHB 总线矩阵的大量增强型 I/O 和外设。

    参考程序

    https://github.com/CoreMaker-lab/STM32H503
    https://gitee.com/CoreMaker/STM32H503

    生成STM32CUBEMX

    用STM32CUBEMX生成例程,这里使用MCU为STM32H503CB。
    配置时钟树,配置时钟为250M。

    串口配置

    查看原理图,PA9和PA10设置为开发板的串口。

    配置串口,速率为115200。

    LED配置

    查看原理图,对应LED分别为PA8,PB14,PB15。

    配置如下所示。

    堆栈设置

    若无法正常运行需要修改优化等级。

    串口重定向

    打开魔术棒,勾选MicroLIB

    在main.c中,添加头文件,若不添加会出现 identifier “FILE” is undefined报错。

    /* USER CODE BEGIN Includes */
    #include "stdio.h"
    /* USER CODE END Includes */
    

    函数声明和串口重定向:

    /* USER CODE BEGIN PFP */
    int fputc(int ch, FILE *f){
    	HAL_UART_Transmit(&huart1 , (uint8_t *)&ch, 1, 0xFFFF);
    	return ch;
    }
    /* USER CODE END PFP */
    

    主循环

      /* Infinite loop */
      /* USER CODE BEGIN WHILE */
      while (1)
      {
    		HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_SET);		
    		HAL_GPIO_WritePin(LED2_GPIO_Port, LED2_Pin, GPIO_PIN_SET);			
    		HAL_GPIO_WritePin(LED3_GPIO_Port, LED3_Pin, GPIO_PIN_SET);		
    		printf("LED ON!\n");
    		HAL_Delay(1000);
    		HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_RESET);		
    		HAL_GPIO_WritePin(LED2_GPIO_Port, LED2_Pin, GPIO_PIN_RESET);			
    		HAL_GPIO_WritePin(LED3_GPIO_Port, LED3_Pin, GPIO_PIN_RESET);		
    		printf("LED OFF!\n");		
    		HAL_Delay(1000);
        /* USER CODE END WHILE */
    
        /* USER CODE BEGIN 3 */
      }
      /* USER CODE END 3 */
    

    演示

    作者:记帖

    物联沃分享整理
    物联沃-IOTWORD物联网 » STM32H503开发(1)—-开发板测试

    发表回复