当前位置: 首页 > news >正文

STM32 Nucleo-144开发板开箱bring-up

在这里插入图片描述

文章目录

  • 1. 开篇
  • 2. 开发环境搭建
    • 2.1 下载官方例程
    • 2.2 ST-Link安装
  • 3. STM32F446ZE demo工程
    • 3.1 STM32F446ZE简介
    • 3.2 跑个demo试一试


1. 开篇

最近做项目,用到STM32F446ZET6这款MCU,为了赶进度,前期软件需要提前开发,于是在某宝买了对应主控的官方开发板,为了避免遗忘,后面能翻出来回忆一些细节,就形成了本篇的主要内容,同时也希望能够帮助刚上手的小伙伴少走弯路,如果对你有帮助请点赞、收藏、转发,谢谢!


2. 开发环境搭建

开发环境一般是ST官方的STM32CubeIDE和MDK(Keil),博主用的是Keil,关于STM32CubeIDE和Keil的安装不是本篇的重点,在此就不赘言。默认你已经安装到位并能熟练使用。

开发板的资源可以在下面的资源页面中下载:
STM32F446ZE MCU的STM32 Nucleo-144开发板资源页面
主要参考:
【1】UM1727 用户手册 STM32 Nucleo板软件开发工具入门.pdf
【2】MB1137 开发板原理图.pdf
【3】UM1974 User manual STM32 Nucleo-144 boards (MB1137).pdf
在本篇的绑定资源中也已经为大家准备好了,请根据需求自行下载。

在这里插入图片描述


2.1 下载官方例程

例程资源包下载链接
在这里插入图片描述


在这里插入图片描述


下载完后是这样的:
在这里插入图片描述


解压开后,我们找到一个例程,拷贝一份,用Keil打开,准备编译、烧录:
在这里插入图片描述


2.2 ST-Link安装

如果自己的电脑之前没有用过ST-Link调试器,那就先安装一下:
ST-Link驱动下载页面
在这里插入图片描述


STSW-LINK009驱动下载页面
在这里插入图片描述


下载成功后,解压:
在这里插入图片描述


根据自己的系统安装对应的驱动,安装成功后,查看设备管理器,确认是否已经识别板子:
在这里插入图片描述


在Keil工程中,选择ST-Link Debugger:
在这里插入图片描述


确认Keil已经识别到了板子:
在这里插入图片描述


3. STM32F446ZE demo工程

3.1 STM32F446ZE简介

STM32F446xC/E设备基于高性能Arm®Cortex®-M4 32位RISC内核,工作频率高达180 MHz。Cortex-M4核心采用浮点单元(FPU)单精度,支持所有Arm®单精度数据处理指令和数据类型。它还实现了一整套DSP指令和一个增强应用程序安全性的内存保护单元(MPU)。

STM32F446xC/E设备包含高速嵌入式存储器(高达512 KB的闪存,高达128 KB的SRAM)、高达4 KB的备份SRAM,以及连接到两条APB总线、两条AHB总线和一个32位多AHB总线矩阵的大量增强型I/O和外围设备。

所有设备都提供三个12位ADC、两个DAC、一个低功耗RTC、十二个通用16位定时器,包括两个用于电机控制的PWM定时器和两个通用32位定时器。

它们还具有标准和高级通信接口。


资源总览:
在这里插入图片描述


所有功能:

  • core:带FPU的Arm®32位Cortex®-M4 CPU、允许从闪存执行0等待状态的自适应实时加速器(ART加速器)、频率高达180 MHz、MPU、225 DMIPS/1.25 DMIPS/MHz(Dhrystone 2.1)和DSP指令;
  • 存储
    • 512 KB的闪存
    • 128 KB的SRAM
    • 具有高达16位数据总线的灵活外部存储器控制器:SRAM、PSRAM、SDRAM/LPSSDR SDRAM、NOR/NAND闪存
    • 双模式QuadSPI接口
  • LCD并行接口,8080/6800模式
  • 时钟、重置和供应管理
    • 1.7 V至3.6 V应用电源和I/O
    • POR、PDR、PVD和BOR
    • 4至26 MHz晶体振荡器
    • 内部16 MHz工厂微调RC(1%精度)
    • 带校准的RTC 32 kHz振荡器
    • 带校准的内部32 kHz RC
  • 低功率
    • 睡眠、停止和待机模式
    • 用于RTC的VBAT电源、20×32位备份寄存器以及可选的4 KB备份SRAM
  • 3×12位,2.4 MSPS ADC:最多24个通道,三重交织模式下7.2 MSPS
  • 2×12位D/A转换器
  • 通用DMA:具有FIFO和突发支持的16流DMA控制器
  • 最多17个定时器:2个看门狗,1个SysTick定时器,最多12个16位和2个32位定时器,最高180 MHz,每个定时器最多4个IC/OC/PWM或脉冲计数器
  • 调试模式
    • SWD和JTAG接口
    • Cortex®-M4 Trace Macrocell™
  • 最多114个具有中断功能的I/O端口
    • 高达111个快速I/O,最高可达90 MHz
    • 多达112个 5 V容错I/O
  • 多达20个通信接口
    • SPDIF Rx
    • 多达4×I2C接口(SMBus/PMBus)
    • 最多四个USART和两个UART(11.25 Mbit/s,ISO7816接口,LIN,IrDA,调制解调器控制)
    • 最多四个SPI(45Mbits/s),其中三个具有多路复用I2S,通过内部音频PLL或外部时钟实现音频类精度
    • 2x SAI(串行音频接口)
    • 2×CAN(2.0B有源)
    • SDIO接口
    • 消费电子控制(CEC)I/F
  • 高级连接
    • 带片上PHY的USB 2.0全速设备/主机/OTG控制器
    • USB 2.0高速/全速设备/主机/OTG控制器,带专用DMA、片上全速PHY和ULPI
    • 专用USB电源导轨可在整个MCU电源范围内实现片上PHY操作
  • 8至14位并行摄像头接口,最高可达54兆字节/秒
    • CRC计算单元
    • RTC:亚秒精度,硬件日历
    • 96位唯一ID

3.2 跑个demo试一试

板子上电自带程序,按键按下LD1、LD2、LD3切换两灭。
我们烧录一个串口demo试试:
查看原理图,串口3和ST-LINK调试器在同一个USB口上:
在这里插入图片描述


看一下时钟配置:
配的是内部时钟在这里插入图片描述


看一下串口配置:
修改了一个demo代码,加了个循环打印
在这里插入图片描述


烧录进去后,打开串口助手,看看效果:
在这里插入图片描述


至此,STM32 Nucleo-144开发板STM32F446ZET6的bring-up完成。

http://www.lryc.cn/news/159480.html

相关文章:

  • 计算机毕业设计 基于SSM的问卷调查管理系统的设计与实现 Java实战项目 附源码+文档+视频讲解
  • 基于SpringBoot的无忌在线考试系统(源码+讲解+调试运行)做毕设课设均可
  • 无涯教程-JavaScript - EOMONTH函数
  • 【LeetCode-面试经典150题-day21】
  • 算法刷题记录-双指针/滑动窗口(LeetCode)
  • Python基础tuple元组定义与函数
  • 【linux命令讲解大全】088.深入理解 shell 脚本中的 trap 命令
  • bean的管理-bean的获取
  • 如何快速清理已经上传到Git仓库的.DS_Store文件
  • 美的的笔试
  • Android 1.2 开发环境搭建
  • vue 页面加水印
  • Android ImageView详解
  • ElasticSearch第二讲:ES详解 - ElasticSearch基础概念
  • Ajax模拟视频点赞功能
  • java解决 衣服尺码 Compare T-Shirt Sizes
  • 基于python+Django深度学习的音乐推荐方法研究系统设计与实现
  • 【枚举区间+线段树】CF Ehu 152 E
  • 宏定义天坑记录
  • Git的一些常用概念与操作方法分享
  • webpack实战:某网站JS逆向分析
  • 826. 安排工作以达到最大收益;2257. 统计网格图中没有被保卫的格子数;816. 模糊坐标
  • JAVA毕业设计097—基于Java+Springboot+Vue+uniapp的医院挂号小程序系统(源码+数据库)
  • 4.3.3.1 【MySQL】CHAR(M)列的存储格式
  • js 处理数组合并vs对象合并
  • Webpack vs Vite的核心差异
  • 53、springboot对websocket的支持有两种方式-------1、基于注解开发 WebSocket ,简洁实现多人聊天界面
  • 18 Linux之Python定制篇-Python开发平台Ubuntu
  • AMEYA360:士兰微推出600A/1200V IGBT汽车驱动模块,提升充电速度与行驶动力
  • 【Linux】Epoll Reactor【反应堆】模式的工作流程