应用笔记(1)
  • 文档
  • 版本
  • 更新时间
  • 译文
  • 下载次数
  • 相关资源
  • 分享
AN3967 STM32F417xx控制器上的安全套接层协议
1.4
2022-10
501

文档说明:这文档主要描述了如何STM32F417XX系列控制器使用PolarSSL免费的SSL/TLS库。

通讯接口(89)
  • LAT名称
  • 文档(文件大小)
  • 下载次数
  • 软件包(文件大小)
  • 下载次数
  • 更新时间
  • 分享
LAT0161 STM32F103上USB的端点资源
(0.4M)
607
2015-06-12

文档说明:某客户使用STM32F103的USB模块做设备时和上位机PC连接时碰到一个问题:PC端驱动已经固定好,是对下位机USB设备上的地址编号为0x0A和0x0B的两个端点通信,从0x0A端点读取数据,向0x0B端点写数据。而STM32F103的USB模块只有8个双向端点,能否支持这样的寻址。

LAT0232 STM32 Bootloader中DFU使用限制
(0.2M)
563
2016-06-28

文档说明:本文将针对客户无法使用内置Bootloader的DFU方式进行固件升级的问题进行分析。

LAT0136 SPI接收数据移位分析一例
(0.1M)
561
2015-12-01

文档说明:该问题在不同客户使用不同芯片的SPI功能时都曾经提到。主要现象是slave端接收到的数据时有移位现象,例如0x10接收成0x08。此种移位一旦发生,当前通讯的后续数据也都发生了移位。

LAT0134 STM32F0中Guard Time的设置
(0.2M)
457
2015-12-02

文档说明:客户使用STM32F091的USART工作于smartcard模式用于7816通讯,发现不正常。本篇LAT的内容简介了STM32F0中关于USART中Smartcard模式的Guard Time的设置。

LAT0064 一个判断I2C总线通信异常原因的方法
(0.2M)
600
2016-01-12

文档说明:此问题由某客户提出,应用处理器AP 与MCU 进行I2C 通信,通信会经常发生异常,需要定位原因.

LAT0208 关于STM32 USB作为从机设备时管脚连接以及通讯的简易验证方法
(0.5M)
570
2016-03-25

文档说明:USB作为从机设备时,管脚连接以及通讯的验证方法其实就是下载一段简单USB程序,在不需要任何驱动的前提下实现简单的USB通讯。通过这个简单程序的运行情况来判断USB管脚和通讯是否正常。

LAT0200 LwIP内存配置
(0.3M)
598
2016-03-25

文档说明:LwIP在lwipopts.h和opt.h头文件中提供了多个配置选项。用户可以根据不同的性能需求和不同应用的内存限制对协议栈用到的内存配置进行调节。Opt.h头文件中包括协议使能和设置,内存设置,调试选项等等。而Lwipopts.h头文件中集合了opt.h中一些常常需要改动的部分。一般情况下用户对lwipopts.h头文件进行修改就可以了。不管是对lwipopts.h还是opt.h进行修改,都必须保证是在已经对你所改动的内容足够的了解的情况下进行,所做的改动是正确的,否则有可能导致协议栈不能正常工作,或者

LAT0212 USART中断方式接收无响应问题的一种情况及其处理方法
(0.3M)
596
2016-05-13

文档说明:此问题由客户工程师提出,客户在使用STM32F103 的USART 做串口通讯时,发现了一个问题,当设备正常通信一段时间后,串口不响应外部的通信请求了。

STM32 基于 Nucleo板 CAN总线的建立
(1.0M)
2143
2016-06-21

文档说明:STM32 NUCLEO开发平台是ST最新发布的易用性好、可扩展性佳的低成本平台。开发平台具有mbed功能支持Arduino接口,同时还提供ST Morpho扩展排针,可连接微控制器的所有周边外设,可以利用Arduino巨大生态系统优势,便于快速实现STM32学习和评估! 这儿我们评估它的CAN外设功能。

STM8 CAN总线的IdMask模式的讲解
(0.6M)
1358
2016-06-21

文档说明:学习了STM8的CAN总线的IdMask模式。在CAN协议里,报文的标识符不代表节点的地址,而是跟报文的内容相关的。因此,发送者以广播的形式把报文发送给所有的接收者。节点在接收报文时-根据标识符的值决定软件是否需要该报文;如果需要,就拷贝到RAM里;如果不需要,报文就被丢弃且无需软件的干预。为满足这一需求,beCAN为应用程序提供了个可配置的、位宽可变的6个(0-5)过滤器组,用于只接收那些软件需要的报文。硬件过滤的做法节省了CPU开销,否则就必须由软件进行过滤,从而占用一定的CPU资源。

UART异常错误分析
(0.2M)
1365
2016-06-28

文档说明:客户在产线批量生产测试uart的时候,发现有一部分出现了如noise detect,framing err等异常状态进入中断处理。

LAT0023 时钟延展导致 I2C 通信不可靠
(0.2M)
532
2015-07-29

文档说明:该问题由某客户提出,发生在 STM32F103R8T6 器件上。据其工程师讲述:其产品中设计中,STM32 与一颗 MPEG 解码芯片通过I2C接口通信。其中,STM32 为 SLAVE节点,而 MPEG 解码芯片为 MASTER 节点。在产品调试过程中,发现该通信不可靠。在系统运行一段时间后,该通信会出现故障而导致整个系统死机。使用示波器测量,发现这时I2C总线的 SCL 信号持续为低电平。

LAT0226 串口工作在DMA模式下有时接收异常
(0.3M)
600
2016-07-05

文档说明:客户反馈在使用STM32F205的串口工作在DMA模式时,有时能够接收数据,有时完全没有数据,但如果换成中断模式来接收又能100%正常收到数据。

LAT0225 通过STM32CubeMX生成HID双向通讯工程
(0.9M)
461
(5.2M)
409
2016-07-05

文档说明:客户在做USB通讯的时候,基本的需求就是发送某些数据到USB host端,同时接收一些数据从USB Host端,那么如何快速的建立一个工程并验证数据是否正确呢?下边我们就结合STM32F072的评估板(其他的STM32xx系列的实现方式都是类似的)来快速实现一个简单的数据收发实验。

LAT0233 MCU在STOP状态下通过UART唤醒分析
(0.2M)
439
2016-07-05

文档说明:最近有客户反映STM32F103进入STOP模式后无法通过串口唤醒。

LAT0241 STM32F746ZG USB 驱动不正常
(0.5M)
461
2016-07-14

文档说明:某客户的产品,需要评估NUCLEO-F746ZG板上的USB功能,使用cube Version 4.15.1 版本工具生成工程,但在win7和win10上遇到驱动不正确。

LAT0250 如何基于HID(MOUSE)例程生成一个可以输入输出任何长度小于等于64字节的例程
(0.3M)
361
(1.1M)
430
2016-08-09

文档说明:本篇LAT的内容简介 如何应用ST USB HID(MOUSE)例程,生成一个可以输入和输出任何长度小于等于64字节的例程。

LAT0246 bxCAN的过滤器的4种工作模式以及使用方法总结
(0.9M)
458
(10.2M)
413
2016-08-09

文档说明:bxCAN是STM32系列最稳定的IP核之一,无论有哪个新型号出来,这个IP核基本未变,可见这个IP核的设计是相当成熟的。本文所讲述的内容属于这个IP核的一部分,掌握了本文所讲内容,就可以很方便地适用于所有STM32系列中包含bxCAN外设的型号。有关bxCAN的过滤器部分的内容在参考手册中往往看得“不甚明白“,本文就过滤器的4种工作模式进行详细讲解并使用具体的代码进行演示,这些代码都进行过实测验证通过的,希望能给读者对于bxCAN过滤器有一个清晰的理解。

LAT0254 基于Cube库无法检测CAN2的接收中断
(1.1M)
390
(3.5M)
394
2016-08-30

文档说明:本文将针对客户在使用Cube库时CAN2不能产生接收中断进行分析。

LAT0253 基于STM32F7的网络时间同步例程
(0.5M)
373
(3.0M)
386
2016-09-20

文档说明:本文介绍的是NTP客户端,NTP协议是TCP/IP协议中的应用层协议。NTP的全称是Network Time Protocol, 它是用来同步网络中个计算机的时间的协议。它的目的是在国际互联网上传递统一、标准的时间。具体的实现方案是在网络上指定若干时钟源网站,为用户提供授时服务,并且这些网站间应该能够相互比对,提高准确度。

LAT0142 使用CubeMX生成TCPEchoServer程序
(0.6M)
536
2015-11-03

文档说明:在STM32的众多外设中,以太网这个外设相对而言还是比较复杂,初始化的过程也比较复杂,涉及到MAC,DMA,PHY好几块内容的初始化。可能有时候datasheet都看得头疼了,可初始化还是有问题。而STM32CubeMX工具就可以帮我们轻松完成这部分工作。在本文中,将分别以STM3220G-EVAL板为例,通过CubeMXv4.11来新建一个基于RAW API的TCPEchoServer的工程。

LAT0108 在OTG主机库对NAK的处理
(0.3M)
374
(16.0M)
435
2015-07-28

文档说明:某客户使用 STM32F4 的 OTG 库做 USB 主机控制 Wifi 网卡。使用 BULK 传输类型时,从数据读取数据时, 如果设备返回需要把设备返回的 NAK 状态告知上层应用,该如何修改OTG 库。

LAT0280 在进行USB CDC类开发时,无法发送64整数倍的数据
(0.8M)
464
(0.3M)
428
2016-12-16

文档说明:在向客户推STM32F4芯片的时候,客户反馈使用CDC类无法发送64个字节,于是通过深入研究问题,发现问题之所在,到解决问题。本文将基于STM32F4DISCOVERY板,一步步重现问题,一方面介绍如何使用USB的CDC类进行开发,另一方面,对在开发过程中碰到发送64整数倍数据时会失败的问题分析及解决方案。

LAT0099 STM32以太网电路设计注意事项
(0.2M)
656
2015-07-12

文档说明:STM32Fxx7 系列(互联型产品)中内置了MAC,配合外置的 PHY可以实现以太网通讯。这篇文档将介绍以太网接口的信号定义,重点介绍时钟电路的设计,并给出在实践中已成功应用的设计方案,希望可以对需要进行以太网电路设计的朋友提供帮助。

LAT0164 USB device库使用说明
(0.8M)
595
2015-06-13

文档说明:本篇LAT从控制传输的角度解析了运行在“USB FS IP”这款USB模块上的全速USB设备库的结构和用法。

LAT0019 I2C 接口进入 Busy 状态不能退出
(0.2M)
547
2015-07-04

文档说明:该问题由某客户提出,发生在 STM32F103VDT6 器件上。据其工程师讲述:在其产品设计中,使用了 STM32 的一个 I2C 接口与一个 EEPROM 通信。在系统可靠性测试中发现,经过长时间运行后,STM32 会 出现不能读写 EEPROM 的现象。通过 NRST 管脚对 STM32 进行复位,复位后该现象依旧存在。关掉电 源,然后重新上电,现象消失。通过进一步测试发现,如果对 STM32 反复做复位操作,会很容易复现 这一现象。

LAT0096 M0的USART波特率自动识别问题
(0.4M)
453
2015-07-05

文档说明:某客户用STM32F051的芯片做了一个自动波特率的实验(代码是仿照ST库里面的例子写的),用串口发送数字键的ASCII码,在接收端只有奇数ASCII被确认。

LAT0079 OTG 主机对于NAK 的延迟处理(2)
(0.3M)
415
2015-07-06

文档说明:该问题由某客户提出,发生在 STM32F405RGT6 器件上。据其工程师讲述:STM32F405RGT6 作为主机向 从机做 Bulk_Receivdata()传输,每次收到 NAK 时,主机会每隔 5us 左右重新发起 TokenIn,从机在这 段时间内没有准备好数据,所以依然发送 NAK。客户想在 200us 左右发起 IN 令牌,这样给从设备以准 数据的时间(实际数据的准备时间预计为 300us 左右)。

LAT0098 OTG主机库V2.1.0上的兼容性调整
(0.4M)
422
2015-07-07

文档说明:某客户使用 STM32F2 的 OTG 库中的 U 盘主机例程在连接 U 盘时,有些 U 盘不能识别,甚至出现操作死机的情况。现就针对版本 V2.1.0 的 USB 主机库中的 MSC Host 例程做一些修改,以能够兼容更U盘。

LAT0033 SPI3 接口没有信号送出
(0.2M)
427
2015-07-08

文档说明:该问题由某客户提出,发生在 STM32F103VDT6 器件上。据其工程师讲述:在其产品设计中,使用了 STM32 的 SPI3 接口连接到一个串行 EEPROM。在软件调试时,发现该接口没有信号送出。

LAT0017 SPI接口发片选信号导致死机
(0.2M)
484
2015-07-09

文档说明:该问题由某客户提出。据其工程师描述:其产品设计中,使用了 STM32F103VDT6 器件。该器件的 SPI2 通信接口外接一个 EEPROM,在其进行软件调试时,发现当程序发起对 EEPROM 的读写 时会导致 STM32 死机。

LAT0113 STM32F2 Ethernet(FreeRTOS)驱动更新
(0.4M)
446
(1.8M)
455
2015-07-11

文档说明:很多朋友反映 ST 官网的例程 stsw-stm32060(也就是 STM32F2x7 的以太网例程)中的 FreeRTOS 驱 动有问题,表现为在网络压力测试下向 STM32 进行 ping测试,过段时间后会出现无法恢复的网络延时,甚至出现 ping 不通(网络不通的情况,注意不是超时)。

LAT0066 STM32以太网硬件设计——PHY
(0.2M)
629
2015-07-13

文档说明:OSI 的7 层基准模型中PHY 属于第一层 ——物理层。PHY是数据链路层的媒体访问控制部分和媒体的接口。PHY对所有传输的数据只是进行编码转化,没有对有效数据信号进行任何分析或改变,但是MAC 所有的数据传输都必须经过PHY 发送和接收才能传输到目标MAC。PHY 还可以完成连接判断,自动协商以及冲突检测。MAC 可以通过修改PHY 的寄存器完成对自动协商的监控,当然也可以读取PHY 的寄存器来判断PHY 的状态。

LAT0016 对Flash 操作导致USART 接收丢数据
(0.2M)
555
2015-07-28

文档说明:该问题客户提出,发生在STM32F103VDT6 器件上。据其工程师讲述:在其产品设计中,使用了STM32 片上Flash 模拟了一个EEPROM 的功能,用于存贮数据。在软件调试时,发现开启此功能,会影响到USART 通信,导致偶尔发生个别数据接收不到的现象。

LAT0077 STM8L051F3P6串口UART数据起始位判断的问题
(0.4M)
471
2015-07-14

文档说明:某客户反映新换成STM8L的单片机,UART配置后,利用库函数软件代码,无法正常接收正确的数据。客户对照波形,初步判断是起始位的问题。为了能测出STM8L能够识别的起始位前面的最短高电平,对客户发送的数据进行了模拟,不断调整起始位前面的高电平宽度,最后发现高电平宽度>=21uS的时候STM8L可以正常接收数据。

LAT0074 STM8L152C6T6 硬件IIC,发送从地址后无ACK信号
(0.3M)
505
2015-07-15

文档说明:某客户反映使用STM8L的IIC的库的DEMO,master和slave通信,使用IIC1的端口PC0与PC1,并分别上拉接4.7k的电阻至3.3V,主机的SCL与从机的SCL相连,SDA也一样,但是slave一直没有应答,想不明白原因,波形客户看了认为没有问题,就是没有应答,不知道原因是什么,IIC速度给的都是100K。

LAT0072 STM8中UART奇偶校验的使用方法
(0.3M)
360
(0.0M)
308
2015-07-17

文档说明:该问题由某客户提出,发生在 STM8S105C6T6 器件上。据其工程师讲述:当他所撰写的程序不使用奇偶 校验的时候,程序工作是正常的;但是当他把奇偶校验改成偶检验 EVEN时,程序无法正常工作;现象为:一、不管上位机发送的数据是不带校验位的,还是带奇偶校验位的,STM8S 都可以正常地接收到数据;二、当奇偶校验位使能后,接收到的数据再返回上位机,显示的数据不一定是正确的。

LAT0020 UART 发送数据丢失最后一个字节
(0.3M)
425
2015-07-18

文档说明:该问题由某客户提出,发生在 STM32F103VCT6 器件上。据其工程师讲述:在其产品的设计中要使用 STM32 的 STOP 低功耗模式。而在使 STM32 进入 STOP 模式之前,需要对整个系统做一些设置工作, 其中一项工作是通过 USART3 向某个功能模组发送一个命令报文。在实测中发现,该报文没有发全, 总是缺少最后一个字节。

LAT0028 UART的断帧检测
(0.2M)
475
(15.0M)
287
2015-07-19

文档说明:在某些串行工业总线协议中,如 Profibus,每帧发送的数据长度不定,导致接收方在接收数据时无法确定帧的结束点。

LAT0024 USART1不能设定600BPS的波特率?
(0.2M)
434
2015-07-20

文档说明:某客户工程师在某型号新产品的设计中,使用了 STM32 器件,型号为:STM32F103VDT6。据其工程师 讲述:为了实现产品的某项设计要求,他想要通过 USART1 以 600BPS 的波特率与另一颗器件进行通 信。通过编写程序测试发现,该通信接口未能工作在 600BPS 的波特率上,而是工作在一个较高的波 特率上,大约在 1600BPS。更改波特率设定,将波特率设定改为 1200BPS 时,该接口能够工作在设定 的波特率上。

LAT0018 USB 接口易损坏
(0.3M)
504
2015-07-23

文档说明:该问题由某客户提出,发生在 STM32F205VCT6 器件上。据其工程师讲述:为了实现产品的设计中使用 STM32 的 USB OTG 接口,作为其产品的一个通用 USB 接口来用。在其产品小批量试产后,发现 STM32 的 USB OTG 接口在其产品的使用过程中易损坏。

LAT0112 VCP例程用于数据传输时丢失数据的处理
(0.3M)
445
2015-07-24

文档说明:某客户工程师在其产品的设计中,使用了 STM32F205VET6。据其工程师讲述:他使用 ST 的USB 固件库中的VCP例程来实现虚拟串口的功能,但是他发现虚拟串口一次输出的数据(从串口到上位机)如果超过2Kbytes 就会造成数据丢失,只输出尾部的2Kbytes。客户工程师检查代码发现USB 的FIFO 大小由宏定义APP_RX_DATA_SIZE 决定,而APP_RX_DATA_SIZE 的大小刚好为2Kbytes。所以他认为此FIFO设计太小而造成的,于是他将FIFO 的大小改成5Kbyte,不过

LAT0027 使用 CCM 导致以太网通信失败
(0.4M)
441
2015-07-26

文档说明:该问题由某客户提出,发生在STM32F407IGT6 器件上。据其工程师讲述:在其产品设计中使用了STM32 的以太网接口进行通信。在软件最初的调试中,该接口工作正常。后来为了满足软件对内存容量的需求,启用了STM32 的CCM 存贮器,但启用后发现以太网接口不能通信。

LAT0273 HID与音频冲突问题
(0.1M)
365
2016-11-17

文档说明:Demo 程序中,HID 和 Audio 单独运行都不会有问题,把 HID 和 Audio 整合在一起,同进传送数据时,会出现Audio 不能传送数据的情况。

LAT0278 从零开始使用CubeMX创建以太网工程
(2.1M)
242
2016-12-16

文档说明:在前面一篇文章中,介绍了如何使用CubeMX来建立一个简单的TCPEchoserver工程。但是在新建CubeMX项目时,是通过直接选择ST的开发板的方式实现的。对于大多数实际的开发场景,可能并不是在ST的开发板上进行的,所以在这篇文章中,我将介绍如何从零开始建立一个以太网工程。今年ST推出的Nucleo-144板子上集成了以太网接口,所以在本文中,将以STM32F746-Nucelo板为例,通过CubeMXv4.18来新建一个TCPEchoserver的程序。

LAT1449 STM32 USBx Host HID standardalone 移植示例
(0.1M)
10
2024-11-20

文档说明:目前 USBx host standalone 的官方示例较少,仅有一个。不过使用 CubeMX 可以快速地生成USBx Host 相关类的示例工程,会很方便大家的开发。这里以 NUCLEO-H563 为例,实现USBx Host HID 类,大家可以以此为参考移植到其他的 USBx Host 类。

LAT0630 STM32F767的USB工作在HOST模式下的远程唤醒问题
(0.6M)
400
(1.3M)
361
2018-03-26

文档说明:本文针对STM32F767的USB_OTG_FS模块工作在Host模式下的挂起与恢复以及远程唤醒方面的问题进行讨论。

LAT1436 UART RX是否可以同时使用EXTI外部中断
2024-07-26

文档说明:这个例子中,使用了 I/O 口作为复用引脚时,其 I/O 引脚仍然还是连接到内部其他电 路的,包括连接到输入数据寄存器,连接到 EXTI 电路。所以,我们可以利用这种连接来 帮助我们实现一些特殊的功能。 很多时候,有些问题可以通过 STM32 内部的一些连接来实现一些特殊的使用情况。 STM32 在内部其实是提供很多内联的信号,特别是 TIM 外设、ADC 外设、DMA 外设等 等。所以,在实际使用中,多动动脑筋,说不定就能找到一个简单的解决方案。

LAT1437 选择USBX模块生成USB CDC ACM无PD的项目
(0.1M)
69
(0.1M)
52
2024-07-26

文档说明:是协助客户解 决这个问题,提供给客户不带 PD 功能的虚拟串口工程。

LAT1343 STM32H5 USBD Classic驱动 CDC移植
(0.1M)
246
2024-03-21

文档说明:细心的用户可能会发现,使用到我们的 STM32CubeMX 6.9.1 对 STM32H5 的USB 外设进行配置的时候,只能用 USBX,而以前的 Classic USB 库不能选择了。 由于 USBx 是基于 Threadx OS 的,客户更多的希望是裸机版本的,所以在这儿给大家提供一个移植的方法。

LAT1315 串口DMA接收不定长数据的一种方法
(0.1M)
669
2023-09-22

文档说明:这次我们介绍另外一种方法,在 DMA 方式下利用硬件接收超时中断(Receiver timeout interrupt)实现不定长数据的接收。

LAT1323 STM32L452 I2C关闭时钟延展功能的使用
(0.1M)
331
2023-09-22

文档说明:I2C 的时钟延展功能是可选功能,主机可以不支持该功能,但从机需要相应的适配。未来 ST公司的 STM32 Cube 库后续有计划增加对时钟延展功能的支持。

LAT1070 STM32L433在STOP模式USART不能工作的问题解决
(0.1M)
595
2022-02-21

文档说明:本文档描述了在STOP0/1 模式下使用USART需要注意的地方。

LAT1016 USB发送数据时出现迟滞现象
(0.3M)
580
2021-11-04

文档说明:客户反馈,使用STM32F446 的高速USB 外设,即USB_OTG_HS 外设,且使用内置全速PHY。客户的产品USB 用做device,自定义HID 类,当连接带UOS 操作系统的HOST 时,会发现当前数据并没有成功发送,但是会发送上一次的数据,即发送数据出现”迟滞”现象。但在Windows 下却没有出现此类问题。另外,客户同时还使用了STM32F446 上的USB_OTG_FS 外设,且此外设做同样的事一切正常,目前此问题只出现在USB_OTG_HS 外设上。

LAT0286 STM32F4xx的I2C总线挂起异常处理
(0.4M)
499
2016-12-30

文档说明:客户使用I2C对EEPROM进行读取操作时,正常读取的最后一个字节,主机会传送一个NACK给EEPROM,以便结束该次读取过程,如果主器件给出ACK,而程序又默认结束读取过程,会出现EEPROM认为主机还需要读取数据,但此后SCL的时钟不会给出,将导致I2C总线被挂起占用,此时START,STOP命令将不会再次成功送出信号;本文针对这个异常状况结合实际应用问题给出处理方法。

LAT0759 STM32以太网MAC Loopback的实现
(0.4M)
534
2020-12-01

文档说明:在 STM32 以太网调试中经常会遇到“设备接收不到数据”,或者“设备发出的数据对端设备收不到”之类的问题。遇到这类 问题首先要做的是定位问题发生的部位,这样做的好处就是可以指明下一步调试的方向,缩小分析的范围。

LAT0793 Lwip中和IP分包的相关参数
(0.3M)
539
2020-10-19

文档说明:前不久接到一个客户的问题。在 H743 上需要通过 UDP 发送大的数据包,涉及到 IP 分包的问题。他们在测试的过程中遇到了 只要发送 6KB 的 UDP 数据包就会出现 hardfault 的问题。拿到这个问题的时候,调试得到了和客户一样的现象,程序进入 hardfault,并且是由 Lwip 协议栈的 ip_reass_free_complete_datagram 函数触发。后经过一番调试,搞清楚了问题的原 因,要说清楚,我们得先来看看 Lwip 中 IP 分包的实现。

一个因初始化顺序而导致异常的话题
(0.3M)
1933
2019-11-21

文档说明:有STM32用户反映,他使用STM32F4系列芯片进行开发,通过STM32CubeMx配置初始化代码,使用了UART的DMA传输。但他发现DMA根本不工作。后来他无意中发现,是因为他在用户代码里不经意地调整过UART外设和DMA外设初始化代码的前后顺序,当他重新调整二者的先后顺序后就一切正常了。他想知道这个顺序是怎么影响DMA功能的。

LAT0572 通过DfuSe Demo软件控制程序跳转到DFU模式
(0.6M)
461
2019-01-07

文档说明:我们之前经常有讲到过如何通过USB的DFU方式来对固件进行升级,在示例中我们通常是通过一个按键来触发APP跳转到BOOT从而进入到DFU升级模式。但是也有一种情况,客户的环境是没有任何按键或者其它触发条件,只有一个USB口连接运行windows操作系统的上位机。这不,前不久就碰到这么个客户,下位机MCU端仅仅只有一个USB口连接上位机,且MCU端与上位机之间的USB是常连的,并不能通过USB的拔插操作来触发APP的跳转,在此情况下,我们又该如何来实现客户的需求?

LAT0624 一个关于LPUART输出异常的问题分享
(0.4M)
413
2018-03-26

文档说明:根据客户反馈,使用基于STM32L496的Nucleo板的LPUART 做打印输出时,电脑端始终没法出现任何信息。。根据该开发板使用手册说明,外设LPUART的TX/RX脚【PG7/PG8】默认与开发板STLINK部分的VCP端口相连,这样做可以省去飞线的麻烦,更不需要外接USB-UART转换器件。本文档对该问题做了解答。

LAT0750 STM32以太网MAC地址Hash过滤
(0.1M)
691
2021-06-21

文档说明:STM32MCU 的以太网外设提供多种数据包过滤的模式。

LAT0633 HID+CDC复合设备在WIN10系统中的识别问题
(0.4M)
470
(0.0M)
425
2018-03-22

文档说明:本文以STM32F405为例,详细说明上HID_CDC复合设备在WIN10的识别问题。

LAT0368 在进行USB CDC类开发时,无法发送64整数倍的数据(续)
(0.4M)
525
(2.7M)
386
2017-04-19

文档说明:此文延续之前相同文章的话题,是对上篇文章的补充,之所以会有此文,主要是之前发现问题是在STM32F4上,解决方案也是基于CubeF4,但是,当相同问题出现在STM32F0上时,使用之前的代码修改并不能适用,这也就是本文的目的所在。

LAT0380 基于STM32 I2S的音频应用开发介绍
(1.7M)
555
(14.0M)
439
2017-10-30

文档说明:在音频开发中,I2S(Inter-IC Sound)接口被广泛采用。大部分STM32集成了I2S接口。本文主要为了让STM32使用者了解I2S音频接口,及快速实现I2S接口的音频应用开发。 首先,对STM32的I2S接口进行简单介绍,然后描述了几种常见I2S音频应用架构及每种架构音频部分的电路图,最后围绕每种架构给出实现例,以便读者进行参考理解。其中,实现例会围绕STM32CubeMX展开,以便开发者能够参考并快速、简便地实现软件开发。除此之外,在Cube软件包中有I2S外设应用例程,提供了更完善的实现参

LPUART唤醒STOP MODE下的MCU
(0.2M)
1224
2017-03-24

文档说明:在很多低功耗应用中都需将MCU 进入STOP MODE 以节省更多的功耗,但是在以前的架构中,如果要达到这种应用,只能在进入低功耗模式之前将串口的管脚设置成普通的GPIO 的中断模式,虽然也可以达到效果,但是这样会丢失第一个字节.所以我们现在可以使用新的LPUART,这样不仅可以把MCU 从STOP mode 下,还可以不丢失第一个数据,但是还是有一定限制和使用方法的.下面我们将详细介绍一下。

LAT0347 STM8L I2C程序第二次数据通信失败的问题分析
(0.4M)
439
2017-04-19

文档说明:本篇文章主要是对STM8Lxxxx 在I2C 通信调试中遇到的第一次通信正常,但第二次通信失败问题的分析和处理。

LAT0339 增加UART接口应用时的异常分析
(0.4M)
436
2017-05-16

文档说明:Cube软件包的提供,极大的降低了开发难度。使用者在开发的过程中,只需参考Cube包中提供的例程就能快速的实现对应功能开发。开发者为了快速开发UART功能,参考Cube包中的UART例程,并根据应用情况,扩展了另一组UART接口。但是在应用过程中,发现两路UART不能共存。本文分析了这种情况出现的原因。

LAT0298 USB DFU IAP例程移植的两个话题
(0.3M)
529
2017-03-21

文档说明:在STM32 的系列产品中,很多型号都带有USB 接口,为使用USB 来进行代码升级提供了便利。这些型号中又有很大一部分可以通过内部System Memory 中的Bootloader 直接进行USB DFU 升级,具体哪些型号支持USB DFU,可参考应用笔记AN2606《STM32 微控制器系统存储器自举模式》。有些型号虽然有USB,但是System Memory 中的Bootloader 并没有支持USB DFU,比如STM32F102 / STM32F103、或者Bootloader V2.x 的

LAT0207 STM32系列MCU模拟双盘符U盘的应用
(0.2M)
357
(2.1M)
377
2017-03-21

文档说明:客户使用STM32F429系列MCU,存储介质有两种,分别为SDIO连接TF-card,SPI Flash,目的是通过1个usb口连接到PC后,能够看到两个盘符,PC能够分别对TF-card和SPI Flash进行读写操作。

LAT0343 一个UART应用异常案例的分析
(0.2M)
461
2017-05-22

文档说明:在Cube软件包中,为不同系列MCU、不同外设提供了对应的例程方便开发参考。其中,针对STM324xG-EVAL平台提供了UART中断发送接收的例程。开发者参考了这个例程进行UART功能开发,并且为了实现不间断的接收功能,在接收回调函数中,再次调用中断接收函数。在这种情况下,出现了例程执行异常。本文分析了这种情况出现原因及解决方法。

LAT0351 I2C配置顺序引发的异常案例
(0.3M)
497
2017-05-24

文档说明:在参考Cube软件包中I2C例程后, 根据应用需要新增了一路I2C接口,结果新增I2C无法收发数据。本文主要对问题进行描述,分析产生原因,提供解决方法。

LAT0369 USBD Vbus PA9如何配置为普通GPIO口引脚
(0.6M)
437
2017-06-29

文档说明:某客户准备用STM32F205VCT6做USB FS Device设备时,配置PA9作为普通通用的GPIO口(外部上拉电阻10K到电压3.3V,NO PU/PD),在项目测试的时候发现,该引脚上的电压只有2V。

LAT0377 USB传输数据时出现卡顿现象
(0.4M)
487
2017-09-22

文档说明:在进行USB开发的过程中,有多个客户反馈,USB传输数据时出现卡顿现象。本文将针对这一问题进行分析。

LAT0379 STM32的高速USB信号质量测试实现
(0.6M)
532
2017-10-23

文档说明:STM32提供了丰富的接口资源,其中包括USB FS、USB HS、OTG FS和OTG HS。对于高速USB,由于信号速率相对较高。在开发过程中,会对高速USB信号质量进行测试,例如运用广泛的眼图测试。STM32的高速USB/OTG IP遵循USB 2.0规范,能够配合实现眼图等信号质量测试项。本文中,首先介绍眼图等信号质量测试的实现框架,然后以Cube软件包中USB 设备类的HID例程为基础,提供软件层面的修改。最后通过USB官方提供的HSETT工具,一步一步呈现如何使STM32实现的USB设备进入测

LAT0337 输出的数据和数据长度始终不匹配
(0.3M)
358
2017-04-05

文档说明:客户反应使用我们的STM32F446 的CEC 库的时候,输出的数据和数据长度始终不匹配,跟电视通信不正常,如果输出的数据始终比长度多一个字节.客户试着按字节数减一去做输出,但是又不能输出一个字节的情况.

LAT1398 STM32H7 SPI NSS功能的灵活应用案例
(0.1M)
222
2024-02-22

文档说明:某客户开发一款高精度工业测量仪器,打算使用 STM32H7+外置高精度 ADC 采样的分离方案来实现。客户选取了一款所属行业内比较通用的 ADC 采样芯片。在读取该 ADC芯片手册后,客户发现该款 ADC 采样芯片使用 MCU 标准 SPI 与之通信存在问题,手册里面也推荐使用 DSP/FPGA 的来实现,客户一下就犯难了。为了降低成本和开发周期,客户想使用 MCU 来替代 DSP/FPGA 与 ADC 采样芯片的高速通信。

LAT1350 基于 STM32U5创建USBx_CustomHID通信
(0.1M)
429
2024-01-03

文档说明:某客户在使用 STM32U5 开发一款产品时需要使用到 USB Custom 进行双向通信,并反馈STM32U5 使用的是 Azure USBx 协议栈,不再支持 ST USB device 库。客户表示只熟悉 STUSB Device 库,对 USBx 协议栈与 API 没有任何使用经验。查阅目前所有 USBx 的例程,发现目前 USBx 均没有可参考的 Custom HID 双向通信范例,客户希望提供使用 USBx HID 进行双向通信的例程,这里简单介绍下利用 CubeMx 创建工程的实现过程。

LAT1350 基于 STM32U5 创建 USBx_CustomHID 通信
(0.1M)
163
2024-01-03

文档说明:某客户在使用 STM32U5 开发一款产品时需要使用到 USB Custom 进行双向通信,并反馈STM32U5 使用的是 Azure USBx 协议栈,不再支持 ST USB device 库。客户表示只熟悉 STUSB Device 库,对 USBx 协议栈与 API 没有任何使用经验。查阅目前所有 USBx 的例程,发现目前 USBx 均没有可参考的 Custom HID 双向通信范例,客户希望提供使用 USBx HID 进行双向通信的例程,这里简单介绍下利用 CubeMx 创建工程的实现过程。

LAT1269 SPI读取数据的最后一位出错问题
(0.1M)
511
2023-02-08

文档说明:客户在项目开发中使用 STM32F427ZGT6 的 SPI 连接外部 Flash 时,发现在常温下能正常读写,但是在高温下一段时间后(大概 5 分钟左右)出现读写异常的情况。读写异常时发生在发送 0x5 指令后,返回数据通过软件读取的是 0,而硬件抓取的是 1 。同时也发现同一份代码,同样硬件,如果 flash 换成别的厂家的,在同样温度条件下又没有出现读写异常。

LAT1298 基于Azure USBx开发USB_OTG_HS MSC应用的几个问题
(0.1M)
396
(0.1M)
235
2023-09-22

文档说明:本文主要介绍使用 STM32U599 USB_HS 开发 USBx 应用时的几个问题点,详细配置和移植过程,读者可自行参考本文附件中的工程源码。

LAT1282 一个串口通信异常的案例
(0.1M)
531
2023-06-13

文档说明:客户的产品使用的是 STM32L471VET6, 通过串口外部连接一个 zigbee 模块, 波特率 115200bps.。出现问题时的具体情况是, 从 MCU 发出的串口波形检测到一个位的宽度明显不正确, 导致外部的 zigbee 模式识别不到。

LAT0139 使用STM32CubeMX实现USB虚拟串口环回测试功能
(0.1M)
837
2022-11-29

文档说明:客户在 STM32F401RET6 中使用到了 USB 的虚拟串口功能。要求提供一个在STM32Cube 中实现虚拟串口进行数据环回测试功能的范例程序。因为在我们目前所提供范例程序中,并没有适合客户需求的范例,所以我们在 STM32CubeMX 中创建一个范例程序给客户进行参考。

LAT1017 多次插拔后USB无法再工作
(0.1M)
841
2021-09-22

文档说明:多次插拔后USB无法再工作

LAT1435 使用 GPDMA 进行 SPI LCD 整屏传输
(0.1M)
11
2024-11-20

文档说明:客户需要评估 STM32U5+SPI LCD 整屏刷新时的显示效果。一般 SPI LCD 都内置了GRAM,在使用 TouchGFX 时都会选用部分帧缓冲以节省内存。客户需要整屏刷新,并尽量节省内存,则需要使用单帧缓冲的方式。

LAT1318 STM32L011在SPI bootloader模式下的PA6状态分析
(0.1M)
326
2023-11-29

文档说明:客户反映 STM32L011 PA6 空片时进入 system memory 内部自带的 bootloader后,GPIO 的实际测试状态同 AN2606 中描述 push-pull pull-down 有出入,实际测试为高电平。

LAT1361 STM32的USART能否支持9位数据格式话题
(0.1M)
310
2024-01-03

文档说明:有客户反馈,他最近在做一个项目用到 STM32L051 这款单片机。平常的 USART 串口传输是 8 位数据,但是他的项目需要用串口传输 9 位数据。当设置为 8 位数据时,串口响应中断正常。但是,当设置为 9 位数据时,串口就不产生中断了。USART2 的 ISR 寄存器 RXNE 位被置1,RDR 寄存器接收到了数据,就是不产生中断,数据也读不出来。请问是不是 HAL 库函数哪里出了bug?另外,客户还补充说,使用 STM32CubeMX 进行配置并创建的工程代码。

LAT1242 如何让CDC类USB设备批量接收64字节以上数据
(0.1M)
726
2023-02-08

文档说明:STM32 开发者在实现 CDC 类虚拟串口与 PC 主机通信过程中,有时会遇到点麻烦而不得其解。那就是当主机端单次发送的数据不超过 64 字节时,接收正常。一旦发送数据量大于 64 字节时就接收失败,总是出现丢包现象,似乎只能接收 64 字节以内的数据。网上有人干脆建议主机每次发送不要超过 64字节,当然,也有人提及要作分包处理但没具体实现代码可以参考。这个问题在网络上也有些人在试图寻求答案。

LAT1184 STM32 DCMI的带宽与性能介绍
(0.1M)
439
2023-02-03

文档说明:对于使用 STM32 DCMI 开发相机应用的客户,经常有以下问题:STM32 DCMI 最大支持的像素时钟是多少?STM32F4/F7/H7/U5 能支持 1280×720 的分辨率吗?最大的帧率是多少?如何判断所设计的应用产生的带宽是否能充足?相机输出是选择 8 位、10位、12 位、还是 14 位?针对这些问题,本文档从 DCMI 使用的几个方面,介绍了 STM32 DCMI 在连续抓取模式下带宽的估算,以及提升性能需要注意的事项。客户在设计相机应用时可以参考。

LAT1022 STM32H7以太网的MMC中断
(0.1M)
562
2021-11-03

文档说明:STM32H7 以太网的MMC(MAC management counter)中断是个有点特别的中断。特殊之处在于它是默认使能。如果我们在代码里不针对MMC 进行相关处理,就会造成一些异常现象。我们先来看一个真实的客户案例。

数据手册(1)
  • 文档
  • 版本
  • 更新时间
  • 译文
  • 更新时间
  • 下载次数
  • 分享
DS8597_STM32F415xx,STM32F417xx...
8
2016-10
DS8597_STM32F415xx,S...
2014-11
9928

文档说明:【STM32F415xx,STM32F417xx】介绍了它的主要外设资源和电特性参数,外设资源包括:MCU+FPU、210DMIPS、高达 1MB Flash/192+4KB RAM、加密、USB OTG HS/FS、以太网、17 个定时器、3 个ADC、15 个通信接口,摄像头接口等;

IAP和Bootloader(31)
  • LAT名称
  • 文档(文件大小)
  • 下载次数
  • 软件包(文件大小)
  • 下载次数
  • 更新时间
  • 分享
LAT1419 从BOOT跳转到APP后运行失败的问题分析
(0.1M)
110
2024-07-26

文档说明:客户使用 STM32G0B0 在做产品开发时碰到一个问题, 当程序从 BOOT 程序跳转到 APP 时, APP 运行失败. 而 BOOT 程序和 APP 程序单个运行时均能正常. 本文主要是介绍如何追踪并定位问题的方法, 以及所涉及到的工具和文件, 以供开发者参考

LAT0259 STM32L011和STM32F091空片检测进行System Bootloader编程注意事项
(0.3M)
426
2016-09-20

文档说明:部分STM32 是具有空片检测功能的,以便直接进入System Memory 中执行Bootloader,方便通过某些个外设来直接进行编程。比如STM32L011xx、STM32L021xx、STM32F04x和STM32F09x。有看过《STM32F091 空片使用System Bootloader下载代码》和《STM32L011x 和STM32L021x启动模式注意事项》的都知道这个功能。

LAT0158 STM32F09x不使用BOOT脚实现System Bootloader升级代码
(1.5M)
428
(0.0M)
382
2015-07-21

文档说明:某客户在其产品的设计中,使用了STM32F091RCT6,产品在出厂后将来可能由于功能的升级需要升级代码。由于外观的需要,客户不希望留一个用于升级的按键或是跳线槽在外边。希望能够是通过接收串口命令来实现启动升级,又希望能够直接使用System Memory 中的Bootloader 进行代码升级。

LAT0081 STM32 MCU IAP例程跳转到APP代码简要分析
(0.2M)
718
2015-07-21

文档说明:有客户在初次使用STM32 MCU IAP 的例程的,可能会对跳转到APP 部分的函数的实现产生疑问 。

LAT0030 从 IAP Loader 向 App 跳转不可靠
(0.3M)
508
2015-07-21

文档说明:该问题由某客户提出,发生在 STM32F103TBU6 器件上。据其工程师讲述:在其产品设计中,软件的架构采用 IAP Loader+App 的模式。IAP Loader 部分负责管理和更新 App 部分,而 App 部分则负责常规的业务的处理,两部分代码分别由独立的软件工程生成。系统运行时先启动 IAP Loader,由其判断是否需要更新 App,如不需更新则跳转到 App,由 App 进行常规业务处理。在软件调试过程中,其软件工程师发现从 IAP Loader 到 App 的跳转存在某种不可靠性。该跳

LAT0021 Boot Loader与上位机通信不稳定
(0.3M)
416
2015-07-21

文档说明:客户工程师在某型号新产品的设计中,使用了 STM32L151VCT6。据其工程师讲述:他使用 ST 的 Flash Loader demo 通过 STM32 的 USART1 向其加载用户程序,发现 Boot Loader demo 与 STM32 通信不稳定,时而成功时而不成功,有时甚至连接不上。

LAT0160 STM32F0启动模式相关问题探讨
(0.2M)
365
(1.9M)
321
2015-07-21

文档说明:本文的内容为简单介绍STM32F0 的启动模式,并重点介绍有可能产生的问题。

LAT0029 IAP+APP 模式下不能启动 RTOS
(0.2M)
438
2015-07-21

文档说明:该问题由某客户提出,发生在 STM32F407IGT6 器件上。

LAT0150 STM32F091空片使用System Bootloader下载代码
(1.7M)
450
2015-09-28

文档说明:我们在《STM32F09x 不使用BOOT 脚实现System Bootloader 升级代码》中实现了通过修改Option Bytes 来达到控制BOOT0 和BOOT1,在不需要外部BOOT 脚的情况下实现了使用System Bootloader进行代码升级的功能。可是,这个功能必须在程序中预先烧写了功能程序后,才能不断地进行升级。也就是说,在第一次空片烧写时,必须使用SWD进行烧写的。那有没有可能在空片烧写时,就可以直接使用System Bootloader 进行烧写呢?这样我们就可以完全使用串口进

LAT0137 如何通过STM32的串口实现简易脱机编程器
(0.9M)
403
(14.8M)
372
2015-12-01

文档说明:本篇应用笔记为实现一个简易脱机编程器。通过本文档,您可以了解如何通过UART来实现一款简易的脱机编程器,并提供一个范例工程以供大家参考。

LAT0154 STM8L IAP 应用程序中编程指导
(0.4M)
450
2015-12-01

文档说明:本篇主要介绍STM8Lxxxx 如何实现在应用程序中编程(In-application programming)。

LAT0232 STM32 Bootloader中DFU使用限制
(0.2M)
482
2016-06-28

文档说明:本文将针对客户无法使用内置Bootloader的DFU方式进行固件升级的问题进行分析。

LAT0228 利用USB DFU实现IAP功能
(0.7M)
492
2016-07-05

文档说明:伴随着固件升级需求的增加,STM32提供了灵活的升级方式。本文一步一步介绍如何利用USB DFU Class以及ST提供的DfuSe demo软件工具实现IAP(In Application Program)功能,但并不涉及到DFU class移植。

LAT0237 一种从用户代码调用系统存储器中Bootloader的方法
(0.7M)
404
(0.0M)
340
2016-07-14

文档说明:某客户在其产品的设计中,使用了STM32F411。由于产品外观的要求,无法在外部对BOOT 脚进行控制,而且外观上只有USB 接口是留在外边的,需要使用USB DFU 进行升级。而且USB接口只用于代码升级,没有其他功能,所以客户不想去碰USB 代码,希望能够直接使用System Memory 中的Bootloader 进行代码升级。

LAT0249 STM32L011x/021x启动模式注意事项
(0.7M)
405
2016-08-30

文档说明:针对客户在STM32L011D4P6应用开发过程中,碰到的启动模式问题进行了分析。并且根据问题,介绍开发工具、烧录工具中如何配置以避免影响。

LAT0256 无法使用内置Bootloader的DFU方式进行固件升级
(0.5M)
416
2016-09-20

文档说明:本文将针对客户无法使用内置Bootloader的DFU方式进行固件升级的问题进行分析。

LAT0262 如何使用STM32NUCLEO板来测试串口Bootloader
(0.3M)
404
2016-09-20

文档说明:问题:有客户想用我们的STM32 NUCLEO(如STM32F072NUCLEO) 开发板来测试串口Bootloader。

LAT0276 在STM32L011上通过I2C接口实现IAP
(0.2M)
395
(17.9M)
394
2016-11-17

文档说明:客户计划使用STM32L011xx开发一款光模块产品,需要MCU支持I2C接口下载代码。但STM32L011xx内部Bootloader没有支持I2C接口,所以需要我们使用IAP的方式来帮助客户实现该功能。

LAT0272 一种在IAR中实现通过将程序在SRAM中调试的方法
(2.0M)
161
2016-11-18

文档说明:此问题由客户工程师提出,客户在使用STM32F411 芯片的时候,希望将程序放在SRAM 里面调试来评估下相应的功耗。

LAT0298 USB DFU IAP例程移植的两个话题
(0.3M)
512
2017-03-21

文档说明:在STM32 的系列产品中,很多型号都带有USB 接口,为使用USB 来进行代码升级提供了便利。这些型号中又有很大一部分可以通过内部System Memory 中的Bootloader 直接进行USB DFU 升级,具体哪些型号支持USB DFU,可参考应用笔记AN2606《STM32 微控制器系统存储器自举模式》。有些型号虽然有USB,但是System Memory 中的Bootloader 并没有支持USB DFU,比如STM32F102 / STM32F103、或者Bootloader V2.x 的

LAT0333 STM32F769双bank启动
(0.6M)
416
2017-06-21

文档说明:STM32F769的双bank Flash,可以在执行程序的同时对另一个bank进行擦除和编程的操作。利用这个特性,可以实现在线程序更新,双bank启动的功能。本文将结合笔者在实际应用中遇到的问题,针对性的介绍nDBOOT分别设置为0和1时,两种不同的启动方式。同时你也可以参考AN4826和STM32F7 Cube库中的例程来进一步加深理解。

LAT0373 DFU加载工具DfuSeCommand的使用
(0.4M)
404
2017-08-10

文档说明:STM32提供了灵活的固件加载模式,其中大部分型号支持DFU加载。并且在电脑端,提供了配套的演示软件DfuSe。包含可视化版DfuSeDemo.exe和命令版DfuSeCommand.exe。本文主要介绍DfuSeCommand.exe的使用。

LAT0468 STM32F0使用DFU升级后Leave DFU Mode不能运行用户代码
(0.2M)
404
2018-05-07

文档说明:某客户在其产品的设计中,需要使用了STM32F072RBT6。客户在使用过程中,使用System Memory 中的USB DFU 功能对代码进行更新,并直接使用“Leave DFU mode”跑用户代码,进行功能观察。但是,发现STM32F0 在点击“Leave DFU mode”按钮后,用户代码并没有正常工作。本文主要解决这个问题。

LAT0563 系统BOOTLOADER异常复位
(0.4M)
433
2019-03-07

文档说明:客户反馈通过PC软件flashloader 不能够跟STM32 MCU自带bootloader连接,并且系统运行一段时间后异常复位。本文主要解决这个问题。

LAT0768 MCU无法进入内建Bootloader_V1.0.pdf
(0.2M)
434
2021-01-29

文档说明:某客户在应用中需要使用 STM32F765 片上 Bootloader 对用户 Flash 进行升级,结果发现有小批量产品在将 Boot0 拉高并复位 MCU 后,DFU 升级操作失败,PC 也未识别到 STM32 bootloader USB 设备。 用户很奇怪,STM32 启动时 BOOT0 为高不就进入片上 Bootloader?难道 MCU system loader 代码有问题? 本文主要解决这个问题。

LAT1097 STM32G474双bank模式下在线升级
(0.1M)
650
2022-02-21

文档说明:本文对双Bank 模式下程序在线升级进行介绍,指出操作中的注意事项。

LAT1050 NUCLEO-G071使用CubeProg不能从Boot跳转到用户App _v1.0
(0.1M)
466
2022-02-22

文档说明:某客户使用我们的STM32G071 MCU,使用CubeProg 工具通过USART 接口烧录程 序后,执行 “Run after programming”并不能如期望般看到NUCLEO-G071 LED 灯的闪烁。

LAT0163 STM32F091从自举程序向应用程序跳转的问题与解决
(1.1M)
451
2015-06-21

文档说明:当使用STM32的Bootloader 中的GO 命令进行从Bootloader 向用户代码进行跳转时,需要正确地在用户代码中设置向量表,才能正常地运行用户代码。

LAT1171 STM32F745 USART1 Bootloader 失败原因分析与解决
(0.1M)
542
2022-10-19

文档说明:STM32 的 Bootloader 可以支持多种协议的,比如 USART,I2C,DFU 等等,USART Bootloader 是客户使用 STM32 的时候常常会用到的协议。客户在使用 STM32F745 进行产品开发的时候,出现了使用 STM32CubeProgramer 无法通过 USART1 Bootloader 进行程序升级的问题。为了解决客户的问题,我在 NUCLEO-F746ZG 开发板上,复现了同样的现象,本文针对这个现象,分析了该问题的原因和解决方法,作为一个记录。

LAT1400 STM32G0执行I2C bootloader Go命令后无法连接问题解析
(0.1M)
120
(0.1M)
56
2024-02-22

文档说明:在 STM32G0B1x 的 0x92 版本的 bootloader 中,通过 I2C 接口执行完"Go"命令跳转到应用程序时,会将设备的 DBG_SWEN 位配置为 0,也就是禁用设备的调试能力。如果我们想要恢复调试能力的话,可以在应用程序中添加设置 DBG_SWEN 位为 1 的操作。但是其它型号或者其它版本的 bootloader 执行"Go"命令后,不一定会有这种设置,我们应该具体应用具体分析,详细可以参考 AN2606,AN2606 是 STM32 bootloader 的说明文档

LAT1238 STM32WB如何一次性烧写FUS+STACK+APP
(0.1M)
402
2023-02-22

文档说明:在使用 STM32WB 系列 MCU 时,通过 STM32CubeProgramer GUI 方式更新 FUS,Stack,User APP,需要操作多次,并且要输入不同的地址,比较烦琐,不适合在量产中操作使用。根据 RN0109:STM32CubeProgrammer v2.11.0 release information 描述,在STM32CubeProgrammer v2.11.0 中已经支持通过 CLI 的方式自动更新 FUS,STACK,以及User APP。

实战经验(1)
  • LAT名称
  • 文档(文件大小)
  • 下载次数
  • 软件包(文件大小)
  • 下载次数
  • 更新时间
  • 分享
LAT0453_STM32F769DK 云端固件升级例程使用说明
(1.4M)
975
(24.4M)
1419

文档说明:对于一个物联网应用,远程监控设备状态、远程更新设备固件都是其要包含的典型基本功能。本示例在百度天工IoT平台和STM32F769探索板上实现了上述功能。

模拟外设(31)
  • LAT名称
  • 文档(文件大小)
  • 下载次数
  • 软件包(文件大小)
  • 下载次数
  • 更新时间
  • 分享
LAT1444 ADC采样中的阻抗匹配计算方法
(0.1M)
107
2024-09-25

文档说明:本文对 SAR 型 ADC 的架构和采样电路的工作原理进行了简单的介绍,在实际的 ADC 应用中,如果输入阻抗与采样时间不匹配,就无法得到准确的采样结果,本文针对此问题给出了如何保证阻抗匹配,以及如何通过示波器的观测采样波形判断输入阻抗和采样时间的选择是否合理的方法。

LAT0391 模拟比较器COMP在STM32H7上的应用
(0.7M)
399
(23.8M)
335
2017-11-28

文档说明:STM32H7集成了运算放大器(COMP),可与模拟信号进行比较来进行电压检测,内置的COMP节省了MCU外接COMP的硬件成本。本文档将介绍STM32H7的片内COMP的不同工作模式,并提供配置COMP的例程。

LAT0034 扫描模式下 ADC 发生通道间串扰
(0.2M)
446
2015-07-28

文档说明:该问题由某客户提出,发生在STM32F103VDT6 器件上。据其工程师讲述:在其产品中,需要使用STM32 的 ADC 对多路模拟信号进行同步采样。在具体的实现上,采用了 ADC 常规通道的扫描模式来完成这一功能。然而,在调试中过程中发现一个奇怪的现象:当将各路模拟信号的电平设置成相同时,ADC 对各路模拟信号的转换结果相同,用 A 来表示。改变其中一路模拟信号的电平,并保持其各路模拟信号的电平不变,则 ADC 对该路信号的转换结果变为 B。然而,此时与其在扫描次序上相邻的下一路模拟信号的转换结果也发生

LAT0143 STM32F30x的ADC采样的傅立叶变换
(0.3M)
474
(3.0M)
416
2015-07-28

文档说明:本文目的是演示如何使用STM32F30x 内部的DSP 进行浮点快速傅立叶变换(FFT),为联系实际应用,使用ADC 对波形发生器进行ADC 采样,然后对ADC 采样结果进行FFT, 与Matlab 仿真结果进行比较察看最终结果的准确性。会使用到ARM的DSP 库文件,以及STM32F30x 的浮点运算单元以及DSP 指令等。

LAT0093 DAC无法输出0V的问题分析解决
(0.3M)
372
2015-07-28

文档说明:该问题由某客户提出,发生在STM32F100R8T6器件上。据其工程师讲述:在使用 STM32F100 的DAC时,不管如何设置输出的值,最低只能输出到63mV,无法输出0V,而63mV 的电压经过他的放大电路,对产品的性能产生较大的影响。故其工程师询问是否有办法可以输出0V?

LAT0031 ADC 对小信号的转换结果为零
(0.2M)
420
2015-07-28

文档说明:该问题由某客户提出,发生在 STM32F103VBT6 器件上。据其工程师讲述:在其产品设计中,使用了 STM32 的 ADC 扫描按键。在软件调试时,发现对于小于 200mV 的输入信号,ADC 转换出的结果匀为 零。

LAT0039 ADC 键盘读键不准
(0.2M)
355
2015-07-28

文档说明:该问题由某客户提出,发生在 STM32F103VBT6 器件上。据其工程师讲述:在其产品设计中,使用了 STM32 的 ADC 扫描按键。为了能在低功耗模式下通过按键唤醒 STM32,按键信号在送给 ADC 的同时,也送给一路外部中断,如图(一)所示。在待机状态下,有按键被按下时外部中断输入引脚上的电平会向下降跳变,从而唤醒 STM32。之后,STM32 通过 ADC 采样来判断是哪一个按键被按下,如果是电源键,则做开机处理,否则回到待机状态。在实测中,发现这种情况下对按键的误判率很高,造成开 机困难。调

LAT0223 STM32F1的DAC示例详解
(1.8M)
426
2016-06-21

文档说明:基于学习的目的,详细讲解关于Cube库中的DAC的功能。本次介绍DAC。

LAT0242 ADC连续采样浮空引脚问题
(0.2M)
425
2016-07-14

文档说明:本篇讨论了一个由ADC 连续模式下采样浮空引脚出现的问题,分析了其原因。

LAT0283 PWM硬件间隔触发ADC
(0.3M)
464
2016-12-30

文档说明:在各种应用场景中,比如电机,电源,变频器等应用中,ADC的采样点会有很严格的要求,如果采样点选择错误,会给整个控制系统造成严重后果,本文针对STM32Fxxx的PWM波硬件间隔ADC采样实现方式做简要介绍。

LAT0210 STM32F30x禁止ADC已关闭情况下再次关闭ADC
(0.3M)
433
2017-03-21

文档说明:STM32F30x 系列的12 位SAR ADC 有很多鲜明的特色性能,比如采样率可以达到5 MSPS,可支持差分输入,等等。但是,由于设计的不同,在使用上也有不少不太一样的地方,我们在使用STM32F30x 的ADC 外设的时候,还是要仔细了解一些使用的细节。

LAT0296 STM32L4系列中ADC通道配置上的区别
(0.3M)
405
2017-03-21

文档说明:即使同是STM32L4 系列中的子系列,其配置也可能会有微小的变化,需要注意一下。

LAT0236 STM32 ADC模拟看门狗及其应用
(0.3M)
422
2017-04-07

文档说明:模拟看门狗特性允许应用程序检测输入电压是否超出用户定义的高低阈值,用户可以预先设定个模拟看门狗的上下限电压值,一旦采集到的电压超出该上下限,将会触发模拟看门狗中断。模拟看门狗一般用于检测单个的常规或注入转换通道,或同时检测所有的常规和注入通道。

LAT0356 STM32L053 comp2 比较电压无效问题
(0.2M)
388
2017-08-09

文档说明:某客户在调试STM32L053的比较器1时,使用内部1.2V的参考电压,没有问题.但当使用比较器2时,使用同样的设置,却发现比较电压无法调到1.2V,只能设置到0.6V左右,到时是什么问题呢?

LAT0378 运算放大器OPAMP在STM32L4上的应用
(0.7M)
411
(2.4M)
342
2017-09-22

文档说明:STM32L4集成了运算放大器(OPAMP),可对模拟信号进行放大处理,可节省MCU外接OPAMP的硬件成本。本文档将介绍STM32L4的片内OPAMP的不同工作模式,并提供配置OPAMP的例程。

LAT0618 STM32F334上管脚的ADC和DAC复用问题
(0.3M)
448
2018-09-25

文档说明:本文确认了:STM32F334的PA5和PA6在DAC通道与GPIO断开的情况下是可以当作ADC的管脚的。

LAT0739_STM32多个ADC模块同时采样转换的应用示例
(0.1M)
2566
2019-07-18

文档说明:本文重点介绍利用含有3个ADC模块的STM32F4、STM32F7等系列,以满足多个ADC模块同时工作的需要

LAT1096 ADC交错工作方式碰到的问题与解决方法
(0.1M)
579
2022-01-18

文档说明:在G4中存在最多5个ADC转换单元,其中ADC1/2和ADC3/4可以工作在双路模式下(Dual mode),双路模式的交错工作方式可以提高ADC的采样速率,实现采样率翻倍。客户在使用交错工作方式时,发现了一些问题。本文将对出现的问题进行解释,并给出解决办法。

LAT1308 STM32U5 ADC自校准不成功的问题分析
(0.1M)
380
2023-08-17

文档说明:很多STM32系列中的ADC都带有自校准的功能。它提供了一个自动校准的过程,用于驱动包括ADC上电/掉电序列在内的所有校准动作。在这个过程中,ADC计算出一个校准因子,并在内部应用到此ADC模块,直到下一次ADC掉电。在执行任何ADC操作之前必须校准,以消除芯片之间ADC结果的偏差。

LAT1334 基于MCSDK5.4.8电机库修改两电阻采样方法
(0.1M)
339
2023-10-18

文档说明:在当前使用的电机电阻采样方式中分为单电阻,双电阻,三电阻三种方式,其中在 ST MCSDK5.4 库中支持了两种采样方式,单电阻和三电阻,在市面还存在另外一种采样方式,即双电阻采样,本文讨论的是如何修改现有驱动库支持该种采样方式。

LAT1407 通过LSE校准HSI偏差大的问题解决
(0.1M)
111
2024-02-22

文档说明:某客户使用 STM8AL 时,由于设计限制需使用 HSI 作为系统时钟。为减小 HSI 偏差,使用 LSE 对其进行校准。小批量试产发现 3%左右产品校准后频率和 16MHz 偏差较大。

LAT0086 DAC无法输出满量程电压的分析解决
(0.2M)
328
(0.0M)
289
2015-07-28

文档说明:该问题由某客户提出,发生在 STM32L100RBT6 器件上。据其工程师讲述:在使用STM32L100 的DAC1时,为了能够输出满量程,客户工程师将DAC 的Output Buffer 关闭,当DAC 的输出值为0x000 时,可以正常输出0V,但是当DAC 的输出值为0xFFF 时,输出电压却只有0.67V。客户工程师甚是不解。

LAT1370 STM32G431 双ADC注入并发模式异常解析
(0.1M)
159
2024-04-07

文档说明:某客户使用 STM32G431 的双 ADC 注入组同步采样,两个 ADC 各采集两个注入组通道,在选择独立模式 independent mode 时是 ok 的,但是配置为仅注入组同步模式 Dual injected simultaneous mode only 后,只有 ADC1(主)会触发采样,ADC2(从)不会触发,客户想了解背后的原因会是什么。

LAT1018 STM32F334的DAC输出管脚功能
(0.1M)
540
2021-08-11

文档说明:STM32F334 系列 MCU 中包含了 2 个 DAC 模块,总共 3 路 DAC 输出,且 DAC1-CH2 和DAC2-CH1 的通路上包含了一个 Switch 开关,可以控制 DAC 是否输出到外部管脚。客户在Switch 开关禁能的情况下将原本的输出管脚做 GPIO 使用,发现无法控制其输出电平。

LAT1065_STM32G4中ADC触发分频的实现方式
(0.1M)
842
2022-04-12

文档说明:当前的数字电源设计中,ADC 与定时器是最重要的两个外设,算法基于ADC 的采样结果来计算更新PWM输出,以实现环路控制。一般情况下使用定时器的复位/周期事件或是某个比较事件来触发ADC 转换,然后在ADC 转换完成中断中执行环路算法,让ADC 的转换频率、算法执行频率与PWM 频率保持一致。但是某些情况下ADC 的转换频率或是环路计算频率跟不上PWM 的频率,需要对ADC 的触发进行分频,实现每N 个PWM周期触发一次ADC 转换。本文基于STM32G474 介绍在高精度定时器与高级控制定时器中如何实现

LAT1158 STM32H723 的序列 ADC 无法启动转换
(0.1M)
511
2022-10-19

文档说明:客户使用 ADC 进行序列转换,配置完成后,不调用 Cube 库函数而使用寄存器操作进行ADC 转换,发现无法启动 ADC 转换,且无任何报错。如果只使用一个通道转换 ADC,则可以正常启动 ADC 转换。

LAT1220 关于BlueNRG-2在低功耗模式下端口保持的问题
(0.1M)
399
2023-01-11

文档说明:BlueNRG-2 作为一款高性能低成本的低功耗蓝牙 SoC 解决方案,实现了在有限的资源下兼容蓝牙 5.2 协议的功能。客户在使用 BlueNRG-2 芯片设计产品时,通常会将其当作方案中的主控芯片来用,控制外围器件,最常见的应用就是使用 GPIO 输出高低电平控制外部器件或作为某些器件的开关使能信号,本文讨论下 BlueNRG-2 在低功耗模式下,客户关于 GPIO 口使用上的一些常见问题。

LAT1332 基于STM32U5片内温度传感器正确测算温度
(0.1M)
304
2023-10-18

文档说明:STM32 在内部都带有一个温度传感器,STM32U5 也不例外。这个位于晶圆上的温度 传感器虽然不太适合用来测量外部环境的温度,但是用于监控一下晶圆上的温度也是挺好的,可以防止芯片过温运行。

LAT1362 利用STM32 TIMER触发ADC实现分组转换
(0.1M)
360
2024-01-03

文档说明:有客户使用 STM32G4 系列芯片开发产品,用到其中一个 ADC 模块的多个通道,他希望使用 TIMER 来定时触发这几个通道的转换。不过他有两点疑惑。第一,他期望定时器触发这几个通道是每触发一次则只转换一个通道,这样依次触发转换,而不是触发一次就把几个通道都转换完结。他不知这样是否可行?第二,既然是 TIMER 每触发一次就转换一次,如果说某个通道正在转换时来了触发,这个触发事件是否会丢失?是否会导致最终转换的数据混乱。

LAT1337 STM32G0B1 ADC数据异常原因
(0.1M)
167
2024-02-22

文档说明:在设计之前,强烈建议客户除了阅读参考手册,数据手册等资料外,阅读芯片勘误表也是极为重要的,这样可以规避芯片本身已知的一些局限。

LAT1027 ADC 触发源介绍
(0.1M)
855
2022-04-12

文档说明:在STM32 MCU 中,ADC 有多种启动触发方式,本文对各种触发源的原理进行介绍,方便大家以后如何选择合适的触发源。

音频应用(2)
  • LAT名称
  • 文档(文件大小)
  • 下载次数
  • 软件包(文件大小)
  • 下载次数
  • 更新时间
  • 分享
LAT1108 DFSDM模块的配置 STM32H743 v1.0.pdf
(0.1M)
689

文档说明:客户在使用STM32H743 的DFSDM 模块时,配置有误。于是协助客户按照下面的方 法进行配置并分享之。

LAT1099 DFSDM时钟配置问题_
(0.1M)
634
2022-01-24

文档说明:DFSDM 全称为Digital filter for sigma delta modulators。顾名思义,其作用主要是对外部ΣΔ调制的数字信号进行滤波。STM32L462xx 系列支持最多4 个外部串行通道,2 个数字滤波器,最大可达到24bit 的ADC 分辨率。并且支持SPI 接口和曼切斯特编码1-wire接口。

计数外设(53)
  • LAT名称
  • 文档(文件大小)
  • 下载次数
  • 软件包(文件大小)
  • 下载次数
  • 更新时间
  • 分享
LAT1463 STM32 IWDG 定时精度的优化
(0.1M)
4
2024-11-20

文档说明:STM32 MCU 独立看门狗 IWDG,使用内部低速时钟(LSI)驱动定时器,即使 MCU 主时钟发生故障也能保持正常工作,可用来在定时器超时时触发系统复位,用于检测并解决由于软件错误导致的死机故障。使用 IWDG 是提高 MCU 应用健壮性的一个有力手段。由于 LSI精度不高,IWDG 定时精度较低是正常情况,适合用于对定时精度要求不高的情景。有客户在使用 IWDG 过程中发现有些情况定时偏差过大,希望进行优化。本文将以 STM32F746 为例,介绍定时偏差较大的原因并给出优化思路。

LAT0131 STM32Cube_FW_F4中RTC_Calendar例程的BUG
(0.1M)
360
(0.1M)
318
2016-01-06

文档说明:某客户在其产品的设计中,使用了STM32F429IIT6。客户在使用过程发现一个问题,虽然已经有使用电池对VBAT 进行供电,但是在经常频繁的VDD 上下电之后,发现时钟会比准确的时间慢几秒钟。

LAT0683 MC SDK 5.x中增加位置环
(1.0M)
426
2020-03-30

文档说明:在MC SDK 5.x 中有两个环路控制,分别是电流环和速度环,有些应用需要使用到位置环,比如无人机的云台电机控制,地铁闸机等等应用,本文将阐述如何在现有ST 电机库基础上增加简易的位置环。

LAT0665 LAT_关于“STM32定时器触发SPI逐字收发之应用示例”的解析
(0.6M)
429
2019-11-21

文档说明:我们在做SPI应用时,有时希望通过定时器来定时地触发SPI的收发,并利用DMA完成数据的传输。这里,我基于STM32L476芯片来做个演示,以供参考

LAT0741_基于STM32定时器实现定制波形的示例
(0.1M)
1781
2019-07-18

文档说明:本文介绍如何用STM32定时器实现PWM输出波形等定制波形,以STM32F334 Nucleo开发板验证,说明利用定时器的比较输出切换模式,结合DMA外设,可以灵活地输出各种自定义波形。

LAT0579 硬件机制实现固定个数的PWM脉冲输出
(0.9M)
468
2019-07-18

文档说明:本文利用STM32CubeMX,介绍如何利用STM32 的高级定时器实现固定个数PWM 脉冲的输出

LAT0620 Cube 库应用于Timer捕获输入的DMA功能的错误
(0.6M)
430
2018-06-04

文档说明:本文重点介绍利用STM32CubeMx初始化配置工具和STM32Cube库如何通过TIMER的捕获功能完成对频率、占空比的测试,同时我们对如何解决实验过程中遇到的一些问题,做了特别提示。

LAT0332 STM32F030低温下RTC不工作
(1.0M)
422
2017-02-22

文档说明:客户反馈在批量生产阶段,发现部分产品的MCU的RTC在低温(0℃)下工作不正常,但是在常温下又是正常的,且其他正常的MCU的RTC在常温与低温下都是正常的。

LAT0283 PWM硬件间隔触发ADC
(0.3M)
417
2016-12-30

文档说明:在各种应用场景中,比如电机,电源,变频器等应用中,ADC的采样点会有很严格的要求,如果采样点选择错误,会给整个控制系统造成严重后果,本文针对STM32Fxxx的PWM波硬件间隔ADC采样实现方式做简要介绍。

LAT0277 窗口看门狗启动时异常复位问题
(0.2M)
343
2016-12-16

文档说明:窗口看门狗(Window watchdog, WWDG),提供了一种在指定时间窗内刷新看门狗的功能。同时WWDG提供了一个提前唤醒中断,能够在WWDG计数器值降到触发复位的上一个值时触发。实际应用中,可以在此中断被触发时,刷新WWDG,并记录当前运行信息,以满足运行错误信息记录等功能需求。

LAT0239 HRTIMER产生多相相移信号
(0.5M)
428
(0.0M)
381
2016-07-05

文档说明:STM32F334内部集成了高精度Timer,最高主频4.6GHz,灵活的控制用于产生数字电源等产品的PWM控制信号,内部丰富的联动机制可以产生各种实际需求波形,本文针对多相相移信号的产生给开发者一定启示,抛砖引玉,开发者可以根据不同需求产生应用所需的波形。

LAT0209 FreeRTOS定时器精度研究
(0.1M)
441
2016-05-13

文档说明:客户在基于cortex-m3 的平台上使用FreeRTOS 系统提供的定时器功能时,意外发现定时器的精确度不够高。譬如,设置1 秒钟的定时器,理论上1 秒超时,并且执行相应的回调函数。但是调试却发现,有时回调函数是在1.4 秒后被执行!这对于精度要求较高的实时系统,是不能接受的!

LAT0146 如何用LSE校准STM32F4内部RC振荡器
(0.2M)
371
(5.1M)
354
2016-01-06

文档说明:此问题由客户提出,客户在使用STM32F411 开发产品的时候,采用的是HIS 作为主时钟,同时使用了UART 与其他MCU 进行异步通信.客户发现部分产品UART 不能正常通信.

LAT0794 基于高级控制定时器的全桥移相PWM发波方案
(0.4M)
502
2020-05-06

文档说明:本文基于 STM32 中高级控制定时器设计了一种全桥移相控制 PWM 发波方案。

LAT0135 STM32F1通用定时器示例详解--OnePulse
(0.6M)
421
2016-01-06

文档说明:基于学习的目的,详细讲解关于标准外设库中的定时器的17个示例项目函数文件。本次介绍OnePulse。

LAT0147 一种使用Timer测试HSI实际值的方法
(0.3M)
339
(2.2M)
326
2016-01-06

文档说明:此问题由客户提出,客户在使用STM32F411 MCU 的后期软件联合调试时候,需要知道HSI 的误差值, 一般的方法是将HIS 从MCO1 的引脚上输出.

LAT0152 STM32F334 应用于LLC+SR的高精度Timer波形产生
(0.3M)
488
(0.0M)
365
2015-09-09

文档说明:LLC 谐振变换器优于常规串联谐振变换器和并联谐振变换器:在负载和输入变化较大时,频率变化仍很小,且全负载范围内切换可实现零电压开关(ZVS),越来越多的被使用,同时使用二次同步整流(SR)可以实现零电流开关(ZCS)。微控制器的使用带来体积更小,控制更灵活的产品, STM32F334 内部集成高精度Timer 高精度,高灵活性的PWM 波形产生不仅使控制变简单,同时对产品效率提升带来好处。

LAT0153 HRTIMER的多种Fault事件联动机制
(0.2M)
394
(0.0M)
315
2015-09-07

文档说明:STM32F334 内部集成了高精度Timer,最高主频4.6GHz,灵活的控制用于产生数字电源等产品的PWM 控制信号,与此同时对于产品安全部分也就有更高要求,而STM32F334 内部的Fault 联动机制可以保证这样的控制要求,比如过流保护,过压保护任意一项都可以产生Fault 事件,关闭PWM 输出,与此同时可以区别对待Fault 事件,可以一直关闭PWM 输出,也可以关闭再打开的操作等。

LAT0036 RTC 计秒不均匀
(0.5M)
365
2015-07-28

文档说明:该问题由某客户提出,发生在 STM32F103RBT6 器件上。据其工程师讲述:其产品为车载 GPS 导航监 控设备,其中使用了 STM32 作为主控器件,负责管理整个设备。在该产品的设计中,使用了 STM32 的 RTC,并将其计时显示在产品的屏幕上。计时显示的更新是由 RTC 的秒中断来完成的,即由 RTC 的秒中断服务程序从 RTC 中读出新的时间并更新到相关的变量中,再触发屏幕刷新程序更新屏幕上的显示。在测试时发现屏幕上显示时间的秒部分走时不均匀,时快时慢,甚至会丢掉某个中间值而发生跳变。

LAT0106 STM32F030R8 定时器移植问题
(0.2M)
417
2015-07-28

文档说明:某客户工程师在某型号新产品的设计中,使用STM32F030R8的TIM15的CH1和CH2来产生需要的波形(2路PWM信号)。据其工程师讲述:在以前的产品上,是使用STM32F101的TIM3/4产生同样的波形。现在,将原代码移植到STM32F030的TIM15上,发现仅有一路输出(CH2),另一路(CH1)没有输出。

LAT0053 STM32L053可控PWM脉冲方法之DMA
(0.7M)
439
2015-07-28

文档说明:目标要求:系统时钟8Mhz,6个PWM脉冲。实现上述目标的方法有很多种,比如两个定时器级连,定时器定时中断翻转IO口,等等,这里使用DMA的方式去实现。

LAT0050 软件启动模式导致 IWatchDog 失效
(0.3M)
377
2015-07-28

文档说明:该问题由某客户提出,发生在 STM32F103VDT6 器件上。据其工程师讲述:在其产品设计中,使用了 STM32 的片上看门狗 IWDG 进行系统监控。在实测中发现,在软件中去掉喂狗代码之后,IWDG 并没有 复位系统。

LAT0063 STM32F0使用RTC Tamper的几个注意事项
(0.3M)
336
(0.0M)
288
2015-07-28

文档说明:该问题由某客户提出,发生在 STM32F072 器件上。据其软件工程师讲述:使用 STM32F0 系列的标准外设库中RTC_Tamper 的例程来进行修改,例程中配置的是当在RTC_TAMP1引脚检测到上升沿的时候,复位备份寄存器并产生中断;客户根据其实际应用将配置中的上升沿改成下降沿,以期待在检测到下降沿的时候,复位备份寄存器并产生中断。结果,客户发现经常是只要一开始跑程序,会产生中断,复位备份寄存器。使用示波器观察RTC_TAMP1 引脚,并没有发现下降沿波形。客户百思不得其解。

LAT0159 STM32F1通用定时器示例详解--TIM15_ComplementarySignals
(1.1M)
433
2015-07-28

文档说明:基于学习的目的,详细讲解关于标准外设库中的定时器的17个示例项目函数文件。本次介绍TIM15_ComplementarySignals的示例。

LAT0157 STM32F1通用定时器示例详解--TimeBase
(0.5M)
439
2015-06-12

文档说明:基于学习的目的,详细讲解关于标准外设库中的定时器的 17 个示例项目函数文件。本次介绍 TimeBase 的示例。

LAT0740_STM32高精度定时器PWM输出话题
(0.1M)
1638
2020-04-24

文档说明:以STM32F334 的HRTIM 为例,简单介绍下利用它实现PWM 输出的实现原理。

LAT0787_RTC意外恢复到初始值
(0.1M)
382
2021-06-21

文档说明:客户反馈在使用STM32F446 的产品做上电、掉电测试时,RTC 会意外恢复到配置的初始值。

LAT1451 HRTimer 同步 TIM1 产生 4 路相移 PWM 以及触发 ADC 的方法
(0.1M)
13
2024-11-20

文档说明:本文介绍了一种 High-resolution timer (HRTimer)同步 Advanced-control timer(TIM1)产生 4 路相移 PWM 的方法,即 HRTimer 产生 3 路相移PWM,再用 TIM1 产生 1路相移 PWM,这四路 PWM 相位差为 90°。与此同时,HRTimer 产生的 3 路 PWM 触发ADC 规则通道采样,采样结果用 DMA 搬运到指定地址。

LAT1030_BCM控制方式在STM32中的实现使用高级定时器
(0.1M)
473
2021-11-03

文档说明:在电源变换器的控制方式中,BCM 模式即临界传导模式(Boundary Conduction Mode),或者叫CRM(Critical Conduction Mode),由于其容易实现软开关,开关损耗低,EMI 小等优点在AC/DC 变换器中被越来越多的使用。本文在简单介绍BCM 控制模式的基本原理的基础上,以STM32G071 为例,给出如何使用STM32 系列MCU 中的高级控制定时器来实现BCM 控制PWM的发波方案。

LAT1458 使用16位定时器实现对RTC校准
(0.1M)
41
2024-09-25

文档说明:本文基于 AN4759 及 AN2592,测试验证了使用 16 位 timer 替换 32 位 timer,实现相同的目标,切实可行。在其他遇到类似的情况时,可以参考本文。

LAT1447 电机测速方法以及在STM32中的实现
(0.1M)
86
2024-07-26

文档说明:本文简单介绍了电机控制中 M 法和 T 法测速的原理,给出了在 STM32 中如何利用定时器 的编码器接口和多个定时器合作的方式实现两种测速的方案,并对方案进行了模拟测试,给出测 试结果,高速下 M 法的效果更好,在低速情况下 M 法测速偏差大,T 法测速更适合低速测速

LAT1346 PWM脉宽跟随方案介绍
(0.1M)
280
2024-01-03

文档说明:本文将介绍如何利用高精度定时器实现 PWM 输出脉宽跟随,一种使用 Push-pull + Balance Idle + AutoEnable 方式,一种是使用 Auto Delay 方式。

LAT1319 Push-Pull模式在全桥峰值电流控制中的应用
(0.1M)
307
2023-10-18

文档说明:客户在全桥变换器的应用中需要采用峰值电流控制方式,为了防止磁偏,要求滞后臂的 PWM驱动脉宽严格跟随超前臂的 PWM 驱动脉宽。但在峰值电流控制中,超前臂 PWM 的关断是由峰值电流比较事件决定(即桥臂电流达到给定电流),是不可预知的,所以常规的通过更新比较寄存器修改脉宽的方式无法实现该功能。

LAT1299 定时器不按设定超时产生中断(PDF)
(0.1M)
309
2023-08-17

文档说明:某客户设计需要启动定时器在3ms后产生中断,其后定时器不再运行,直至下一次软件要求再次启动定时器产生中断,实测代码后发现定时器启动后立即产生了超时中断。

LAT1299 定时器不按设定超时产生中断(ZIP)
(0.1M)
55
2023-08-17

文档说明:某客户设计需要启动定时器在3ms后产生中断,其后定时器不再运行,直至下一次软件要求再次启动定时器产生中断,实测代码后发现定时器启动后立即产生了超时中断。

LAT0052 CounterMode,OCMode与OCPolarity关系
(0.4M)
407
2014-11-12

文档说明:研究下 CounterMode,OC Mode 与 OCPolarity 的排列组合的关系。

LAT1046 逐波限流保护实现方案
(0.1M)
659
2022-02-22

文档说明:本文基于STM32G474 高精度定时器,介绍如何实现逐波限流保护以及保护次数计数。

LAT1045 高精度定时器与高级控制定时器PWM封波后再恢复的区别
(0.1M)
471
2022-02-22

文档说明:高精度定时器与高级控制定时器PWM 封波后再恢复的区别。

LAT1047 高精度定时器Push_Pull模式输出逻辑
(0.1M)
619
2022-01-24

文档说明:STM32G474中高精度定时器的PWM输出支持Push-Pull模式,该模式可以用于Push-Pull拓扑或是LLC拓扑的驱动,在使用该模式时需要遵循RM手册中给出的准则,否则输出的波形将会出现异常。

LAT1076 STM32G4 Advanced Timer Break功能详解
(0.1M)
745
2022-02-21

文档说明:本文将针对break 功能做细致说明,方便PWM 驱动使用者更好去应用break 功能。

LAT1023 STM32H750上PCROP的使用问题
(0.1M)
705
2021-11-03

文档说明:PCROP 全称为Proprietary code read out protection(专用代码保护),它提供了一种新的代码保护机制,在PCROP 区域的内容只能为可执行,不能读取或写入。这种机制可以为OEM 厂商提供保护,方便保护自己IP 的代码。本文主要记录在使用PCROP 上遇Hardfault 问题。

LAT1425 一种PFC TCM控制模式的实现方式
(0.1M)
175
2024-06-05

文档说明:FPC TCM 控制模式在降低开关损耗,提升系统效率方面优势明显,但是控制方式相对复杂,本文基于 TCM 工作原理,利用 STM32G474 的片上资源设计了一种可用于 TCM 控制的方案,可帮助客户快速实现功能。

LAT1176 DAC,COMP,HRTIM Fault 功能的使用
(0.1M)
537
(0.1M)
328
2022-10-19

文档说明:这个例程是使用 STM32G474 NUCLEO 进行测试的,集合了 DAC, COMP, HRTIM 的功能模块。

LAT1073_STM32L0无高级定时器输出固定脉冲方式之一
(0.1M)
663
2022-04-12

文档说明:STM32 L0 系列作为一款低功耗芯片,具有丰富的外设和高温下保持极低功耗的特性,广泛应用于各种节能设备上和消费类电子产品中。

LAT1288 STM32 G474中Triggered-half模式的实现
(0.1M)
420
2023-06-13

文档说明:STM32 G474 中包含了针对数字电源应用的高精度定时器(HRTIMER)外设,作为 HRTIMER V2 版本,其新增了 Triggered-half 功能,目的就是为了简化采样变频控制方式下两相交错并联工作电源的设计。

LAT1259 STM32使用DMA产生PWM时波形异常分析
(0.1M)
474
(0.1M)
258
2023-02-22

文档说明:有客户反馈,使用 STM32F4 的 TIM2 结合 DMA,产生的 PWM 波形不符合预期,但是相同的配置使用在 TIM3 上,得到的 PWM 波形就是符合预期的。其代码和配置都是从 F1 移植过来的,在 F1 上使用 TIM2 是没有问题的,对于 F4 的 TIM2 发生的问题,客户一直没有找到根本原因。

LAT1167 STM32G474 HRTIME PWM 丢波问题分析与解决
(0.1M)
673
2022-10-19

文档说明:STM32G474 中包含了针对数字电源应用的高精度定时器(HRTIMER),客户在应用该定时器产生 PWM 时,发现 PWM 的输出出现了“丢波”现象,本文对该问题进行分析并给出解决方案。

LAT1183 高精度定时器中single-shot计数模式不工作
(0.1M)
381
2023-02-03

文档说明:客户使用 STM32G474 的高精度定时器,基于 CubeMX 进行外设配置与代码生成,将某个子定时器的计数方式设置为 retriggerable single shot 方式,发现该子定时器无 PWM 输出,在调试模式下发现该子定时器的计数器一直为 0,即计数器一直没有启动,但如果将计数方式修改为continuous 模式,其他保持不变,定时器工作正常。

LAT1173高精度定时器的同步功能
(0.1M)
543
2022-10-19

文档说明:STM32G474所含的高精度定时器(HRTIMER)其实包含了多个定时器,多个定时器之间可以单独工作,也可以进行同步,且高精度定时器还能与片上的其他定时器以及其他芯片进行同步,本文将对高精度定时器的同步功能进行介绍。

LAT1394 STM32U5的LPTIM3在STOP2模式下无法唤醒问题解析
(0.1M)
111
2024-02-22

文档说明:客户在 STM32U575 的研发过程中发现了一个奇怪的问题,无法通过 LPTIM3 将 MCU 从 STOP2 模式唤醒。

LAT1383 高精度定时器PWM输出零或满占空比话题
(0.1M)
209
2024-02-22

文档说明:本文将介绍在 STM32G474 中如何应用高精度定时器实现零和满占空比波形的输出。

LAT1202 TIM DMA burst 输出变频 PWM 波形
(0.1M)
532
2022-10-19

文档说明:客户需要 MCU 输出一组变频的 PWM 波形来控制外围器件,并且不同频率脉冲的个数也不同。STM32U5 芯片拥有 TIM1/TIM8 高级定时器,还有通用定时器 TIM2/TIM3/TIM4/TIM5 以及 TIM15/TIM16/TIM17。TIM 模块中,可通过修改 ARR 寄存器的值来修改 PWM 的频率。如果使用 TIM1/TIM8 或者 TIM15/TIM16/TIM17,则可以通过修改 RCR 与 CCR 寄存器,来控制脉冲个数及占空比。由于要同时修改多个 TIM 寄存器,需要使用 TIM

LAT1189 Timer结合DMA 2D通道实现不同波形输出
(0.1M)
394
2023-02-03

文档说明:客户需要使用 MCU 输出正弦波,但受限于 MCU DAC 数量不足,建议尝试使用 PWM加滤波方式产生正弦波。同时要求正弦波与固定电平交替输出。因此可用一个 TIM 输出PWM,同时用另一个 TIM 来定时切换输出正弦波或固定电平。使用 TIM 输出 PWM 产生正弦波形时,需要结合 GPDMA 来实现。在 STM32U5 系列中,GPDMA 共有 16 个独立通道,其中 12-15 通道还具有 2D addressing/ repeat 功能。因此也可以使用一个 TIM 加 GPDMA 的一个2D 通

调试(41)
  • LAT名称
  • 文档(文件大小)
  • 下载次数
  • 软件包(文件大小)
  • 下载次数
  • 更新时间
  • 分享
LAT0080 STVD在调试时弹出“Cannot access configuration database”的解决
(0.2M)
362
2015-07-28

文档说明:该问题由某客户提出,发生在STM8SL152R8T6器件上。据其工程师讲述:在安装ST Toolset 和Cosmic编译器之后,使用ST 官网的Demo 程序,在STVP 中连接正常,可以正常烧写。但是当使用STVD+Cosmic 开发环境进行开发时,一点Debug 按钮,就会弹出来对话框:“** Connection error(usb://usb): gdi-error [40201]: can't access configuration database”。

LAT0213 程序能下载但是不能执行
(0.4M)
382
2016-06-21

文档说明:某客户和我们反应他们制作回来的板子,能下载程序但是程序执行不了。

LAT1100 通过STLINK-V3SET I2C接口将程序下载到SRAM中并执行的方法
(0.1M)
657
2022-02-21

文档说明:本文档主要介绍利用STLINK-V3SET 调试/编程工具的I2C 接口将程序下载到SDRAM 中并执行的方法。

LAT1440 如何在特定串口工具上以不同颜色显示信息
(0.1M)
7
2024-11-20

文档说明:在日常一些比较大的项目调试时,一般会通过串口打印许多调试信息,而很多重要信息会隐藏在一些不重要的信息中,如何才能让工程师快捷的看到需要的信息呢?这就是本 LAT 的目的,通过不同颜色区分不同的信息,从而让工程师快速的查看到想要的信息,提高调试效率。

LAT1204 使用 NANOEDGE.AI 工具完成人体姿态识别应用
(0.1M)
428
2022-10-19

文档说明:NanoEdge™ AI 库是 Cartesiam 推出的人工智能静态库,它可以帮助客户直接生成可以运行在嵌入式 Arm Cortex 处理器上的.a 静态库文件。 2021 年 ST 收购 Cartesiam,完善了 ST 在 AI 领域的生态,大大降低了客户使用 STM32 开发 AI 应用的难度。 通过使用 NanoEdge AI Studio,用户只需要了解基本的 AI 概念,并提供相应的数据,便可以从众多 AI 算法库中智能搜索和生成出最为符合用户应用的算法。

LAT0601 STM32L011对空片进行编程后程序运行问题
(0.3M)
380
2019-08-08

文档说明:客户发现使用ST Link Utility对已檫除的STM32L011烧录程序后,用户的应用程序UART功能运行不正确,本文对此问题展开分析。

LAT0342 STM32F091空片使用ST-LINK烧写后复位不能运行用户代码
(0.3M)
360
2017-06-28

文档说明:看过另一篇实战经验《STM32F091 空片使用System Bootloader 下载代码》之后,就会知道STM32F091 有一项特殊的功能,就是在空片的情况下既可以使用ST-Link等编程工具进行编程,也可以使用System Memory 中的Bootloader 进行下载代码。这完善了整个编程体系,给用户在编程方案的选择上带来很大的方便。

LAT0281 GPIO引脚模拟SWIM通信协议
(0.7M)
361
2016-12-30

文档说明:为了更新。ST提供了STLINK,可以通过该工具上的SWIM口进行下载程序,当然在客户的实际使用中,客户也可以按照SWIM的协议,自己去实现类似STLINK的功能。

LAT0275 VBUS引脚一段时间后管脚无法正常工作的分析和解决方法
(0.2M)
343
2016-12-16

文档说明:问题: 问题由客户提出,客户在生产调试样机的时候,使用两周后发现几片样机出现VBUS 引脚在不接USB 线的时候有3V 左右的电压的问题。结论:由数据手册AMR 可以看出,我们在设计电路的时候需要避免VIN>(VDD+4.0v)。

LAT0216 STM32F103C8T6 程序上电跑飞
(0.2M)
580
2016-06-28

文档说明:某客户反应说他们做回来的板子测试发现程序上电就跑飞了,下载都正常。检查了一个礼拜都不知道哪里出了问题,感觉无从下手。

LAT0224 使用STM32 ST-LINK Utility设置读保护后不能运行
(0.2M)
336
2016-06-28

文档说明:某客户在其产品的设计中,使用了STM32F411VET6。客户工程师在开发过程中,尝试使用STM32 ST-LINK Utility 软件配合 ST-LINK 给32F411EDISCOVERY 板上的STM32 加上Level 1 的读保护。工程师发 现,原本在板子上正常运行的代码,加上读保护后,就不运行了。按了板上的RESET 按键也无济于事。

LAT0141 使用STM32进行JTAG的菊花链接
(1.1M)
353
2015-11-03

文档说明:硬件:STM32F401C-DISCO *2,MCU :STM32F401VCT6 ; 软件:STM32Cube_FW_F4_V1.8.0ProjectsSTM32F401-DiscoveryDemonstrationsEWARM 对于硬件的连接以及运行后的现象,readme.txt中已经说明

LAT0764 TF-A架构及下载、编译和烧录介绍_V1
(0.3M)
324
2020-10-19

文档说明:本文介绍 TF-A 的架构,代码下载,编译,以及如何烧录到目标板. TF-A: Trusted Firmware for Arm Cortex-A

LAT1325 调试小技巧之不复位调试
(0.1M)
344
2023-09-22

文档说明:在产品开发时,经常会碰到在测试过程中或设备出厂后才发现程序异常,但当重新对设备仿真调试时却复现不出现场的问题,或者只通过保存的日志信息艰难分析代码运行到了何处而导致的异常。遇到这种场景,也并非无路可循。原则上只要我们通过仿真器调试时,做到代码不被重新下载覆盖,MCU 不被复位,就可能保留当前程序运行的状态,让 Bug 无处藏身。

LAT0043 调试器不能通过JTAG 连接器件
(0.2M)
345
2015-07-29

文档说明:某客户工程师在某型号新产品的设计中,使用了STM32F103VDT6。据其工程师讲述:在其产品设计中,为 STM32 预留了 JTAG 调试接口。然而,在软件调试时却发现调试器与器件连接失败。所使用的调试器为 ST-Link,通过在开发板测试,确认其功能完好。对 PCB 及电缆做相关的测试,确认 JTAG 的相关信号(TCK、TMS、TDO、TDI、TRST)及电源、地连通完好,并且没有线间短路现象。

LAT0062 IAR下使用J-Trace进行指令跟踪
(0.3M)
316
(0.0M)
259
2015-07-28

文档说明:STM32的CPU采用的是Cortex-M系列的内核(M3或M4),CM3和CM4的调试技能较之普通的单片机有了质的飞跃。一般情况下,CM3的调试功能可被分为两类,侵入式调试与非侵入式调试。

LAT1376 启用“实时观察窗口”导致通讯出错的案例分享
(0.1M)
68
(0.1M)
41
2024-02-22

文档说明:通常我们使用的 IDE 在调试时都支持在程序运行过程中实时观察窗口内容的功能,当启用这个功能后,实时观察窗口中包含的寄存器或变量的值会被周期性或重复性的进行采样,进而实现窗口内容的实时更新。 但是这个功能使用不当的话可能会导致一些问题,下面我们介绍这样一个外设通讯出错的案例。

LAT1384 基于STM32CubeIDE下载TouchGFX GUI应用的出错分析
(0.1M)
76
2024-02-22

文档说明:由于在 MCU 上运行的应用程序越来越复杂,因此,对于在片外 Flash 运行代码的需求越来越多,特别是针对 Flashless 形态的 MCU 都需要用户自己开发Flashloader, 建议用户可使用与开发板一样的硬件接法。这样,就不必自己去重新开发 Flashloader 了。

LAT1373 STM32CubeIDE实用技巧之快捷键的配置
(0.1M)
84
2024-04-07

文档说明:大家知道,STM32CubeIDE 是支持“Debug”调试功能的,并且可以快速的得知其快捷键是“F11”。有客户问,这里的“Run”是什么意思呢,其实这里的 Run 是大家理解中的“Download”的含义,就是仅仅下载程序,不进入调试模式。然后就有了今天的主题,既然 Debug 有快捷键,那么 Run 的快捷键是什么呢?是否支持修改呢?答案是肯定有的,并且是可以修改的。

LAT0082 关于STM8S SWIM Error[30006]的分析
(0.2M)
367
2015-07-28

文档说明:有客户反映在用ST-Link调试、下载ST8S系列单片机程序的时候出现了问题, 同一块板子在二十几天前调试均正常,现在重新修改就下载不进去,无法调试。

LAT1424 STM32CubeIDE实用技巧之工程联调演示代码
2024-07-26

文档说明:STM32CubeIDE 的工程联调功能太好用了,特别是调试 BOOT 和 APP 的场景下,可 以让大家清楚的看到程序是如何一步一步的从 BOOT 跳转到 APP 的,强烈的视觉冲击, 让人眼前一亮,拨云见日,让 bug 无处遁形。

LAT0111 MDK Logic Analyzer 功能在STM32中的实现问题
(0.9M)
353
(0.4M)
311
2015-07-28

文档说明:某客户工程师在某型号新产品的设计中,使用了STM32F407VGT6。据其工程师讲述:他想使用MDK 自带的Logic Analyzer功能,在软件仿真的情况下是正常的,但是用仿真器仿真的时候,该功能出现了问题,尝试了很多种配置都没有成功。

LAT0700 Keil中烧写STM32F750内部Flash方法
(0.4M)
375
2019-12-23

文档说明:某客户在其产品的设计中,使用了STM32F750Z8T6。客户的代码只需要使用内部Flash,但不知如何对其进行烧写。

LAT1165 NUCLEO-G474RE 开发板扩展 LSM6DSO 实现 Data Fusion 演示
(0.1M)
442
(0.1M)
278
2022-10-19

文档说明:当使用一个新的开发板做为基板,使用现有软硬件资源,实现对 MEMS sensors 的评估或工程演示时,往往需要快速地得到直观的评估效果。Unicleo-GUI 是针对运动 MEMS 和环境传感器扩展软件的 GUI,主要功能是演示 MEMS 传感器和算法。LSM6DSO 是一款具有 3D 数字加速计和 3D 数字陀螺仪的 MEMS Sensor。本文针对 NUCLEO-G474RE 平台搭载 LSM6DSO 实现快速效果评估演示的过程进行阐述。

LAT1255 直接修改寄存器来输出内部时钟的方法
(0.1M)
324
2023-02-03

文档说明:在对某些不容易复现的问题进行代码调时,需要观察内部时钟的情况,但往往代码之前并没有使能 MCO 功能,在这种情况下就可以使用寄存器直接配置来输出内部时钟到GPIO 脚位上进行观察和测试。下面的例子就是在调试 STM32G474 很难复现的一个问题,调试暂停时,通过 PC 端调试工具直接更改寄存器配置来使能 MCO 功能输出 SYSCLK 到 GPIO 口的方法。

LAT1364 DFSDM对TIM1的封波功能及注意事项
(0.1M)
266
2024-01-03

文档说明:在伺服变频器应用中,会用到 Singma-Delta ADC 进行采样,这时候如果客户使用到了STM32 自带的 DFSDM(Digital filter for sigma delta modulators)模块进行滤波,后面会与PWM 输出相关起来,这样有 Break 的封波需求,本文就这个功能以及注意事项做说明,使用STM32H723 芯片做测试验证。

LAT1457 Keil工程使用NEAI库的异常问题
(0.1M)
26
2024-09-25

文档说明:在使用 MC SDK 产生基于 STM32H745 工程的过程中可能会遇到一些问题,这边对这些问题做些简要说明,并探讨相关的解决方法。测试用板为 Nucleo-H745ZI。

LAT1048 不能连接上STM32H7芯片
(0.1M)
652
2022-01-18

文档说明:在重新编程烧录了STM32H7目标芯片后,我就无法连接到该设备。选择 “Connect under reset”连接也没有帮助。为什么 ?

LAT1185 一个地址未对齐引起的 HardFault 异常
(0.1M)
410
2022-10-19

文档说明:客户在使用 STM32G070 的时候,KEIL MDK 为编译工具,当编译优化选项设置为Level0 的时候,程序会出现 Hard Fault 异常,而当编译优化选项设置为 Level1 的时候,则程序运行正常。表面上看,这似乎是 KEIL MDK 的问题,通过分析,导致这个问题的本质原因是内存地址没有对齐引起的,下面章节将详细分析该问题的来龙去脉以及解决方法。

LAT1198 通过 KEIL 制作 QSPI 接口的外部 Flash 下载算法
(0.1M)
755
2022-10-27

文档说明:随着用户的应用越来越复杂以及 GUI 等需要大存储空间的需求越来越多,很多时候我们需要将代码或数据放在外扩的 Flash 存储空间。但是这样存在一个外部 Flash 烧写的问题,尤其是在应用调试时,需要将代码或数据烧录到外部 Flash。如果调试工具不能够一键烧录,势必会给调试带来诸多的麻烦。本文以 STM32H750 芯片为例,介绍通过 KEIL制作 QSPI 接口的外部 Flash 下载算法的方法。

LAT1216 BlueNRG系列芯片Flash操作与BLE事件的互斥处理
(0.1M)
359
(0.1M)
241
2023-01-11

文档说明:在许多基于 BlueNRG-1/2 系列芯片的低功耗蓝牙的设计项目时,客户通常会在 Flash的特定区域存储定制的数据。然而需要特别注意的是,在 BlueNRG-1/2 方案中,用户对Flash 的读写操作必须在射频空闲的情况下进行,两者是互斥的关系。

LAT1252 关于STM32WL LSE添加反馈电阻后无法起振问题
(0.1M)
352
2023-02-03

文档说明:客户调试 STM32WLE5JB 样机的时候遇到这样一个问题:在调试 LPUART,不打开外部时钟的时候,能够正常打印,若开启外部的 HSE 和 LSE 后就没有打印。

LAT1423 Cortex-M核除0操作的报错机制话题
(0.1M)
109
2024-06-05

文档说明:本文通过对除 0 操作的报错机制做细致说明,可以看到整型除 0 可以有Hardfault 的中断产生,而浮点的除 0 只能通过标志位判别,实际使用过程中尽量避免这种错误的操作。

LAT1236 看似无法唤醒的一种异常现象分析
(0.1M)
346
2023-02-03

文档说明:STM32 G0 系列产品具有丰富的外设和强大的处理性能以及良好的低功耗特性,被广泛用于各类工业产品中,包括一些需要低功耗需求的应用。

LAT1178 关闭SPI会导致WRPERR错误的问题分析
(0.1M)
344
2023-02-03

文档说明:在 STM32 的应用中,SPI 算是用的比较多的外设了,也是单片机最常见外设之一。客户说它执行了关闭 SPI 的代码,竟然会导致 Flash 中的 WRPERR 标志置位,致使应用碰到一些问题。这就奇怪了,SPI 和内部 Flash 看起来是风马牛不相及的事情,为什么会发生这种事呢?一起来看看吧。

LAT1210 一个Flash编程错误标志的探析
(0.1M)
410
2023-02-03

文档说明:客户项目中使用的 MCU 型号是 STM32G0B1, 他们反馈在代码中尝试擦除并编程 FLASH时, 发现 FLASH 的状态寄存器显示编程错误(如图 1 所示). 问题是当前代码还没有开始擦除和编程, 怎么就有了编程错误标志了呢 ? 如果不将此错误标志清除, 后续的编程操作无法继续.客户对于每次想要操作 FLASH 之前这个清除动作既感觉多余也感觉别扭, 且还不得不做, 且做了也不知对整个产品的稳定性会有什么样的影响 ?

LAT1364 DFSDM 对 TIMER 的封波功能及注意事项
2024-01-03

文档说明:在伺服变频器应用中,会用到 Singma-Delta ADC 进行采样,这时候如果客户使用到了STM32 自带的 DFSDM(Digital filter for sigma delta modulators)模块进行滤波,后面会与PWM 输出相关起来,这样有 Break 的封波需求,本文就这个功能以及注意事项做说明,使用STM32H723 芯片做测试验证。

LAT1426 IAR flashloader 下载算法制作介绍
(0.1M)
5
2024-11-20

文档说明:一般情况下,IDE 工具都自带了芯片内部 flash 的烧写算法。而实际项目中往往会有外扩 flash 的需求,在调试或下载程序时,烧写外部flash 则需要额外的 flashloader 程序支持。本文简要介绍如何在 IAR 工具中制作 flashloader 来烧写外部 flash 的原理及实现。

LAT1037_关于STM32CubeIDE链接脚本的小问题
(0.1M)
456
2021-11-03

文档说明:越来越多的客户在使用STM32CubeIDE 作为集成开发工具。STM32CubeIDE 在编译代码的时候,用到了链接脚本。通常情况下,STM32CubeIDE 会自动生成默认的链接脚本。但是有些情况下,例如,用户程序需要定义一些特别的段来放置代码或者数据的时候,我们就需要修改链接脚本文件。 最近有客户在修改链接脚本后,编译没有出现问题。但是编译之后生成的BIN 文件很大,导致无法烧录到Flash 中。结合这个问题,本文详细分析一下它的原因以及解决办法。

LAT1032_带有空片检测功能的STM32需要注意的GPIO设计
(0.4M)
417
2021-11-04

文档说明:从STM32F0 部分型号开始,比如STM32F04x 和STM32F09x,STM32 越来越多的 型号具有了空片检测(Empty Check)功能。以前,STM32 的启动由BOOT0 和BOOT1来决定,在引入了空片检测功能之后,则在BOOT0=0 的情况下,还需要分两种情况:一是内部已经存在代码,则从用户存储区启动;二是如果是空片,则从系统存储区启动,执行内部Bootloader。它带来什么好处呢?客户如果是空片上板,无需对BOOT0 引脚进行跳线,就可以直接使用内部Bootloader 进行串口

LAT0838 使用CubeMx生成未在MC SDK V5.4.4中包含的芯片的电机控制代码
(0.1M)
462
2021-08-11

文档说明:本文详细说明如何结合 CubeMx 与 MC Workbench 生成 workbench 中所未包含芯片的控制程序,客户通过该说明可以使用全系列 STM32 产品用于电机的 FOC 控制,为客户带来便利。

生态系统(87)
  • LAT名称
  • 文档(文件大小)
  • 下载次数
  • 软件包(文件大小)
  • 下载次数
  • 更新时间
  • 分享
LAT1456 定制 OEMiROT 的 APP SWAP 功能
(0.1M)
3
2024-11-20

文档说明:OEMiROT 的 SWAP 功能能够对新固件进行试运行,当用户确认后,系统默认引导新程序,否则继续使用旧固件。

LAT0348 使用B-L475E-IOT01A 探索套件连接AWS IOT平台
(1.8M)
361
2017-05-27

文档说明:ST新近推出一款物联网套件B-L475E-IOT01A,支持WIFI,蓝牙,SubG, NFC等多种无线连接方式。而且因为它还支持Arduino接口,所以使用者也可以很方便的通过Arduino接口来扩展其他的无线连接模块,比如GSM模块。配合这个套件,ST还推出了基于Cube库的X-CUBE-AWS软件扩展包。提供了连接到AWS IOT平台,进行订阅消息和向云端发布消息的应用例程,远程固件升级的功能等。

LAT0205 如何将coremark程序移植到STM32上
(0.1M)
32
2016-05-05

文档说明:本文将一步步来介绍如何将下载的CoreMark测试代码移植到STM32MCU上进行测试。

LAT0209 FreeRTOS定时器精度研究
(0.1M)
412
2016-05-13

文档说明:客户在基于cortex-m3 的平台上使用FreeRTOS 系统提供的定时器功能时,意外发现定时器的精确度不够高。譬如,设置1 秒钟的定时器,理论上1 秒超时,并且执行相应的回调函数。但是调试却发现,有时回调函数是在1.4 秒后被执行!这对于精度要求较高的实时系统,是不能接受的!

LAT0736_STM32 基于 Nucleo板 CAN总线的建立
(0.1M)
1958
2016-06-21

文档说明:STM32 NUCLEO开发平台是ST新发布的易用性好、可扩展性佳的低成本平台。开发平台具有mbed功能支持Arduino接口,同时还提供ST Morpho扩展排针,可连接微控制器的所有周边外设,可以利用Arduino巨大生态系统优势,便于快速实现STM32学习和评估! 这儿我们评估它的CAN外设功能。

LAT0285 如何使用Eclipse和GCC搭建STM32环境
(0.9M)
378
2016-11-17

文档说明:虽然现在绝大部分的客户都是使用Keil和IAR这类收费的IDE,对于很多小型或刚起步的公司来说,这无疑是一笔不小的费用,所以本文将介绍如何使用Eclipse和GCC这免费软件搭建STM32的环境.

LAT0303 如何建立一个基于GIT的STM32库
(0.1M)
365
2016-12-16

文档说明:一种使用GIT FOR WINDOWS 方便的在本地按特定主题进行STM32 库文件管理的方法。STM32 官方库目前没有基于GIT 进行管理,本文提供一种便捷的版本管理方法,对于用户尤其是需要同时使用不同产品线的用户,可以方便的进行按特定主题的代码管理。例如对于ST 内部FAE 及代理的技术支持人员,使用GIT,可以方便的按用户/问题进行测试代码的管理了。本文档以STM32Cube_FW_F7_V1.4.0 为例介绍如何把官方库建立成一个基于git 的本地库,同时适用于cube 库和标准库。

LAT0350 从STM32Cube向标准外设库移植FatFs
(0.2M)
376
(1.5M)
330
2017-02-22

文档说明:在很多应用中,文件系统被用来在存储介质上进行存储和管理文件数据。FatFs 作为面向小型嵌入式系统的一种通用FAT 文件系统,被广泛使用。在STM32Cube 库中,Middleware 是包含有FatFs 文件系统的,而且有相关的例程。但是在标准外设库并没有相关的例程,这使得在使用标准外设库在开发项目中使用文件系统的话,需要自己再移植代码。其实,从STM32Cube 库向标准外设库移植FatFs 文件系统很方便,简单实用。下面我们以STM32F4 系列为例,来介绍一下SD 卡的移植。

LAT0338 基于STemwin的屏幕旋转
(0.3M)
343
2017-03-07

文档说明:客户反馈利用的F429-Disco板上的STemwin的Demo程序无法实现的屏幕的0,90,180,270度的旋转。

LAT0297 编译软件Hex文件烧写
(0.5M)
365
2017-03-21

文档说明:在客户使用软件编译工具如IAR,Keil等,都可以直接进行下载仿真操作,但有时候客户为验证某些功能或者小量试产时,在不需要源码而只要求Hex下载操作即可,本文以针对IAR和Keil的此种情况操作做详细说明,所使用芯片为STM32F072RBT6。

LAT0456 如何在COSMIC中使用长整形变量
(0.1M)
331
2017-06-28

文档说明:本文介绍如何在COSMIC编译环境中使用长整形变量,当在代码中使用长整形变量同时代码有中断调用时,会产生IllOPF(错误操作数)错误

LAT0132 STM32 utility的hot plug功能
(0.3M)
338
2015-12-01

文档说明:客户反映,使用STM32某型芯片时,上电以后芯片未能正确启动;怀疑芯片是从system memory启动。本篇LAT的内容简介了STM32 ST-LINK Utility的Hot Plug功能。

LAT0352 USB CDC类入门培训
(1.9M)
594
(0.3M)
564
2017-07-27

文档说明:本文节选自2017年度USB CDC类培训内容的整理,主要目的是以方便些没有到现场参加培训的碟粉们可以参阅学习。本文力求从理论到实践,尽量给读者一个整体了解USB CDC类的窗口。当然,阅读此文,还是需要基本的USB知识,这个请读者自行预备。

LAT0355 USB DFU培训
(2.7M)
386
(0.5M)
341
2017-07-31

文档说明:本文根据2017年度广州USB DFU培训内容进行整理而成,主要目的是为了方便那些由于各种原因未到现场参加培训的碟粉们参阅学习。本文主要是介绍如何使用CubeMx这个工具,一步一步制作一个BOOT(DFU)程序,并使用它来升级用户APP程序,这种应用场合在产品开发中具有普遍性。

LAT0382 STM32H7的FMC外设在D-Cache使能的情况下运行不正常
(0.3M)
409
2017-10-30

文档说明:前段时间接到一个客户的问题。客户描述在使用STM32H7的FMC时,如果使能了DCACHE,就运行不正常。数据没有写到FMC外部的存储器里,测量FMC接口也没有波形跳变。而不使能DCACHE工作就是正常的。 其实对于这个问题,如果了解STM32H7的架构的话,就很容易理解了。下面我们就来看一看到底是什么原因让客户觉得使能DCACHE后FMC就工作不正常了。

LAT0384 用于量产烧录的拼接Bin文件操作
(0.4M)
386
2017-11-01

文档说明:一般芯片开发过程中,存在Bin文件的拼接过程,比如在做IAP程序+用户程序过程中,最终烧写bin文件或hex文件需要将两个或者三个单独编译通过的程序拼接在一起作为最终烧录文件,本文就如何操作做详细说明。

LAT0386 STM32免费开发环境该用谁
(0.6M)
370
2017-11-01

文档说明:在付费的IAR/KEIL之外,是否有一种STM32开发环境,免费且容易使用,接近IAR/KEIL的用户体验,能够进行STM32全系列开发但不受代码大小限制呢?本文介绍的基于Gcc和Eclipse的集成开发环境SW4STM32和TrueSTUDIO,可以满足前述要求,而且具有跨平台的优势。

LAT0390 BaiduEdgeSDK+B-L475E-IOT01A 探索套件操作说明
(2.1M)
366
2017-11-28

文档说明:ST和百度云天工基于ST新近推出的一款物联网开发套件,提供了连接百度云天工的软件扩展包,内含连接到百度云天工物接入(IOT Hub),进行消息订阅和发布的应用程序。用户基于ST的B-L475E-IOT01A与本教程可以快速上手搭建自己的应用程序。

LAT0634 免费全功能STM32 TrueSTUDIO 9.0
(0.4M)
360
2018-03-26

文档说明:ST和Atollic整合后发布的第一个Atollic TrueSTUDIO版本9.0,正式为STM32用户提供全免费、全功能的专业MCU集成开发环境。本文介绍了TrueSTUDIO9.0给用户带来的新价值。

LAT0639 基于STM32L4 IoT探索套件开发AliOS Things
(0.4M)
353
2018-05-07

文档说明:ST和阿里云合作,推出基于STM32L4 IoT探索套件快速开发AliOS Things的方案。用户可以在STM32L4 IoT上运行AliOS,连接阿里云。本文以WiFi连接阿里云收发消息为例介绍如何获得AliOS Things开源代码, 如何基于IoT探索套件STM32 B-L475E-IOT01A与STM32常用开发工具IAR来快速编译、烧写、调试MQTT应用。

LAT0131 STM32Cube_FW_F4中RTC_Calendar例程的BUG
(0.1M)
342
(0.1M)
309
2016-01-06

文档说明:我们可以直接修复bug或者使用STM32Cube_FW_L4_V1.14.0版本的库。STM32Cube_FW_L4_V1.14.0版本已修复此问题,可参考STM32Cube_FW_L4_V1.14.0DriversSTM32L4xx_HAL_DriverRelease_Notes.html中的相关描述。

LAT0130 KEIL中让程序在RAM中运行的办法
(0.4M)
341
(7.4M)
305
2015-12-01

文档说明:最近老是遇到使用KEIL时需要将部分或者全部程序放到RAM中运行的问题。故此花了不少时间搜索资料和几番尝试,现将其总结在本篇文章中,也是为大家以后的工作节省时间罢。本文中会介绍通过STM32F411Nucleo的一个例子来介绍几种让程序在RAM中运行的方法。在该例子中,通过调用ToggleLED函数来翻转LED2亮灭。接下来,我们将通过多种方法将这段代码放在RAM中运行。

LAT0613 阿里云物联网套件方案在STM32平台上的适配
(0.4M)
350
(129.1M)
323
2018-09-25

文档说明:本文描述了基于STM32系列MCU连接阿里云的方案,详细说明了如何使用集成了阿里云物联网套件的STM32扩展开发包。

LAT0109 FreeRTOS RAM使用情况及优化方法
(0.4M)
447
2015-07-28

文档说明:嵌入式设计中使用RTOS必然会带来额外的RAM消耗,然而许多初次接触RTOS的工程师并不清楚如何评估RAM的消耗量。这篇文档以FreeRTOS为例,介绍评估RAM使用情况的一般方法,并给出在FreeRTOS下优化RAM使用的方法,也由衷的期望读者在使用其他RTOS时,可以通过相似的思路来解决问题。

LAT0113 STM32F2 Ethernet(FreeRTOS)驱动更新
(0.4M)
380
(1.8M)
356
2015-07-11

文档说明:很多朋友反映 ST 官网的例程 stsw-stm32060(也就是 STM32F2x7 的以太网例程)中的 FreeRTOS 驱 动有问题,表现为在网络压力测试下向 STM32 进行 ping测试,过段时间后会出现无法恢复的网络延时,甚至出现 ping 不通(网络不通的情况,注意不是超时)。

LAT0165 IAR下如何让程序在RAM中运行
(0.3M)
328
(1.5M)
281
2015-07-21

文档说明:有时候我们需要将一部分程序从FLASH拷贝到RAM中运行,以提高程序运行的速度。本文基于IAR Embedded Workbench列出了一些方法,可以在系统启动时自动从FLASH中将这部分程序拷贝到RAM中运行。本文中所有例子都是在IAR v7.2下,基于STM32F334完成的。

LAT0080 STVD在调试时弹出“Cannot access configuration database”的解决
(0.2M)
348
2015-07-28

文档说明:该问题由某客户提出,发生在STM8SL152R8T6器件上。据其工程师讲述:在安装ST Toolset 和Cosmic编译器之后,使用ST 官网的Demo 程序,在STVP 中连接正常,可以正常烧写。但是当使用STVD+Cosmic 开发环境进行开发时,一点Debug 按钮,就会弹出来对话框:“** Connection error(usb://usb): gdi-error [40201]: can't access configuration database”。

LAT0114 在IAR 6.5下如何把数据放在Flash指定位置
(0.2M)
386
2015-07-28

文档说明:当客户遇到存储小量的数据,同时数据写的频率比较低的情况下。从成本角度希望省掉外置 EEPROM, STM32 提供了 Backup SRAM(4K)和 Flash 模拟 EEPROM 两种方案来解决该问题。但是,Backup SRAM 需要提供备用电源,Flash 模拟 EEPROM 又比较浪费空间(存放复杂的结构体数据也不方便)。 如果数据擦写频率较低(Flash 擦写次数有限),可以考虑直接将数据存放在 Flash 中。本文提供了如 何在 IAR6.5 实现该操作。

LAT0111 MDK Logic Analyzer 功能在STM32中的实现问题
(0.9M)
363
(0.4M)
309
2015-07-28

文档说明:某客户工程师在某型号新产品的设计中,使用了STM32F407VGT6。据其工程师讲述:他想使用MDK 自带的Logic Analyzer功能,在软件仿真的情况下是正常的,但是用仿真器仿真的时候,该功能出现了问题,尝试了很多种配置都没有成功。

LAT0102 使用STVP实现对STM32L1系列EEPROM预置数据
(0.4M)
399
2015-07-28

文档说明:某客户工程师在其产品的设计中,使用了 STM32L152RBT6。该工程师打算在烧写程序之前,往 STM32L100 里边的 EEPROM 预置一些数据,没想到什么好的办法。他在网上搜了一下其他人的做法,发现大家基本上都是使用程序代码的方式,在第一次运行程序的时候,使用程序对 EEPROM 进行编程达到预置的目的。他觉得这不是最适合他的方法,于是请教是否还有其他更方便的方法。

LAT0084 RTOS低功耗特性的设计原理和实现
(0.3M)
379
2015-07-28

文档说明:目前,越来越多的嵌入式产品在开发中使用 RTOS 作为软件平台,同时,开发中对低功耗的要求也越 来越高,这篇文档会讨论一下如何在 RTOS 中处理微控制器的低功耗特性。

LAT0083 Keil中使用STM32F4xx硬件浮点单元
(0.3M)
400
2015-07-28

文档说明:有工程师反应说Keil 下无法使用STM32F4xx 硬件浮点单元,导致当运算浮点时运算时间过长,还有一些人反应不知如何使用芯片芯片内部的复杂数学运算,比如三角函数运算。针对这个部分本文将详细介绍如何使用硬件浮点单元以及相关数学运算。

LAT0092 如何生成库文件(MDK 和 IAR)
(1.4M)
324
(0.3M)
282
2015-07-28

文档说明:该问题由某客户提出,主要是想自己做一个库给第三方,但是又不想让别人得到源代码,不知道如何去做,尝试了几种办法,发现都会有些问题.

LAT0138 使用mbed进行STM32开发及STM32F0的时钟问题
(0.7M)
347
2015-12-01

文档说明:使用NUCLEO-F030R8 开发板,在mbed 平台进行开发的时候,使用例程进行编译下载,发现LED灯闪烁的频率以及串口的波特率都不对。就这个问题,我们对此平台的时钟处理来进行粗浅地探讨并解决问题。

LAT0082 关于STM8S SWIM Error[30006]的分析
(0.2M)
362
2015-07-28

文档说明:有客户反映在用ST-Link调试、下载ST8S系列单片机程序的时候出现了问题, 同一块板子在二十几天前调试均正常,现在重新修改就下载不进去,无法调试。

LAT0062 IAR下使用J-Trace进行指令跟踪
(0.3M)
304
(0.0M)
260
2015-07-28

文档说明:STM32的CPU采用的是Cortex-M系列的内核(M3或M4),CM3和CM4的调试技能较之普通的单片机有了质的飞跃。一般情况下,CM3的调试功能可被分为两类,侵入式调试与非侵入式调试。

LAT0071 Nand Flash文件系统解决方案
(0.3M)
384
2015-07-28

文档说明:ST提供适用于SLC的NFTL(NAND Flash Translation Layer)和FAT类文件系统来解决NAND Flash存储的问题。

LAT0059 STM32上RTOS的中断管理
(0.2M)
333
(0.0M)
287
2015-07-28

文档说明:本文以STM32F1,F2,F3,F4为例(采用Cortex-M3,M4内核),内核支持中断嵌套(最多可设置256个中断优先级)。STM32只使用其中的16个优先级。

LAT0078 FatSL移植笔记
(0.3M)
323
2015-07-28

文档说明:如果了解FAT的系统结构,并理解了FatSL的软件结构,那么文件系统移植并不困难(其实文件系统移植都是大同小异的)。本文给出的例子是基于STEVAL-CCM007V1硬件平台,通过NFTL层(NAND Flash Translation Layer)在NAND Flash上建立该文件系统的情况。

LAT0151 基于STM32F411 Nucleo板的Broadcom Wi-Fi开发套件的快速开始手册
(0.4M)
394
2015-08-28

文档说明:本文档描述了ST公司和Broadcom公司针对IoT(Internet of Things)应用合作开发的Wi-Fi开发平台。此开发平台基于ST公司提供的STM32F411_Nucleo板和Broadcom公司的Wi-Fi模组NW51(BCM43362),并提供软件开发套件(SDK)。

LAT0139 使用STM32CubeMX实现USB虚拟串口环回测试功能
(0.8M)
354
(17.7M)
367
2015-12-01

文档说明:客户在STM32F401RET6中使用到了USB的虚拟串口功能。要求提供一个在STM32Cube中实现虚拟串口进行数据环回测试功能的范例程序。因为在我们目前所提供范例程序中,并没有适合客户需求的范例,所以我们在STM32CubeMX中创建一个范例程序给客户进行参考。

LAT0148 多任务系统中的不可重函数使用注意事项
(0.1M)
356
2015-12-01

文档说明:本文章主要介绍多任务系统中的的不可重入函数的用法和如何避免出错。在多任务系统中,在使用函数时要了解函数的可重入性,对待有信号量或是加互斥锁的函数要防止死锁的发生。通讯程序比 如I2C, UART 等最好增加超时跳出机制。

LAT0625 TrueSTUDIO出现Program “gcc” not found in PATH的解决
(0.5M)
208
2018-08-02

文档说明:本文帮助解决了在安装完最新版本的TrueSTUDIO v9.0.0后,打开一些以前就已经带有TrueSTUDIO工程的示例代码后,发现会提示Program “gcc” not found in PATH的问题。

LAT0605 STM32 OTA例程之Paho embedded C 使用
(0.2M)
404
2018-09-25

文档说明:STM32 FOTA demo就是通过MQTT协议进行MCU固件新版本信息的推送。Paho是一个开源的MQTT客户端实现,它提供了多种开发语言下的实现。在此demo中,用的是embeddedC这个版本

LAT1431 STM32 AI Model Zoo 的安装及实例介绍
(0.1M)
6
2024-11-20

文档说明:STM32 Model Zoo 是指 ST 在 github 上开源的 AI 相关模型仓库,其包含的应用包括:手势识别,人体活动姿态识别,图片分类,目标检测等相关应用代码,用户可以使用其中的代码进行简单的配置并进行训练,然后使用STM32Cube.AI 工具或 STM32CubeAI Developer Cloud得到模型的 Flash,Ram 等情况,并进行模型的测试验证,然后部署到开发板中。

LAT0640 AliOS任务上下文切换原理分析
(0.3M)
362
2018-09-25

文档说明:在STM32技术人员的实际支持工作中,例如IDE移植,可能需要读懂和修改这些汇编代码。本文就是从这一需求出发,描述AliOS操作系统里的任务上下文切换的基本原理。读者在明白了上下文切换原理后,去阅读和修改任何MCU操作系统的关于任务上下文切换的汇编代码就不会是个难题。本文包含的代码引用基于STM32F4(ARM Cortex-M4内核)芯片上的实现。

LAT1442 防止 STM32CubeMX 删除用户文件的方法
(0.1M)
8
2024-11-20

文档说明:STM32CubeMX 为了简化工程,通常情况下,会把一些它认为不再需要的文件删掉,但是对于有些用户自己添加第三方软件包的情况来说,会给用户带来一定的困扰。

LAT1454 定制 OEMiROT 是否需在下载时加密用户固件问题
(0.1M)
2
2024-11-20

文档说明:最近有客户在使用 STM32H563 的 OEMiROT。客户发现,OEMiROT 安装的 APP 一定是加密过的。客户询问是否有可能不使用加密解密功能,而只使用签名验签功能。

LAT1455 分辨OEMiROT的Bash与BAT脚本
(0.1M)
16
2024-09-25

文档说明:本文针对 OEMiROT 里提供的 Bash 和 BAT 提供了辨析,让 STM32 开发人员能够正确选择相应的脚本进行运行,或者修改相应的脚本符合个人的使用习惯。

LAT1415 如何通过STM32CubeMX添加使用DSP库 V1.0
(0.1M)
83
2024-07-26

文档说明:通过 CubeMX 来添加 DSP 库,使其操作更加便捷,关键在于知道如何添加组件以及如何调 用库相关函数

LAT1420 头文件包含顺序导致Keil编译出错的问题分析
(0.1M)
61
2024-07-26

文档说明:因头文件包含顺序导致的编译错误比较少见,平时我们也很少关注,因此我特意分享此例供大家 参考

LAT1430 如何修改STM32Cube固件包的存储位置
(0.1M)
81
2024-06-05

文档说明:本文是基于一个客户的问题,讲述了如何将 STM32Cube 固件包的位置移动到其他位 置,用来节省 C 盘空间。当然 STM32Cube 固件包包含大量有价值的参考例程,用户也可以将存储位置移动到比较显眼的位置,从而易于访问。

LAT1378 STM32CubeIDE实用技巧之Flash代码填充
(0.1M)
80
2024-04-07

文档说明:在很多时候,程序需要分段存储在 Flash 中,用以存放不同的数据、资源和函数,如此一来,内存就会被切割为多个分块。不同系列的 STM32,其 Flash 被擦除后的默认值可能为 0x00,也可能为 0xFF,当一些应用中,需要添加 CRC 校验值来确保程序的完整性时,就需要格外注意这一点,当然如果将Flash 分块之间填充上一个固定值,即使在使用不同系列的 STM32 时,CRC 的计算和检验方法就可以保持一致,比较有利于平台化。

LAT1390 STM32CubeIDE实用技巧之中文注释
(0.1M)
165
2024-02-22

文档说明:很多工程师可能都有这样的困扰,项目工程在切换到不同 IDE 的时候,原本的中文注释,却显示成了乱码,如果文件比较多,也不太可能重新备注这些注释。 大家在将工程移植到 STM32CubeIDE 时,同样会面临这样的困境,这里告诉大家如 何在文件中正确显示中文注释。

LAT1335 从CubeMX下载生成STM32元件封装库
(0.1M)
139
2024-02-22

文档说明:使用 STM32 进行项目开发时,在原理图和 PCB 设计中都需要使用相应的元件封装库。STM32 元件封装库的准确性是保证设计成功的前提。 在最近版本的 STM32CubeMX 中内置了 STM32 元件封装的下载工具,下载的封装库文件经 EDA 工具转换后可以在原理图和 PCB 设计中调用。 本文将对如何下载和转换做简单的示例说明。

LAT1339 AFCI应用笔记三、使用mlflow管理模型
(0.1M)
258
2024-01-03

文档说明:本文将介绍 python 的一个库:mlflow,可以使 AI 实验的效率更高,提供一种更方便的比较 方法。

LAT1295 IAR 9.x环境下STM32 printf 重定向串口输出
(0.1M)
295
2023-10-18

文档说明:IAR 升级到 9.x 版本以上后,STM32 例程中 printf 重定向使用的 fputc 函数输出格式化的信息到 UART 失败,无法正常使用,需要替换。本文使用 STM32F746 UART_Printf例程(STM32Cube_FW_F7_V1.17.0),用 IAR 9.3 打开,修改重定向函数,适配其串口打印输出功能。旨在给有需要的客户提供一些思路和方法。

LAT1306 使用STM32CubeIDE填充未用FLASH区域
(0.1M)
290
2023-09-22

文档说明:在 IAR 中有一个功能可以设置“将未用到 FLASH 区域填充成设定的数值(如 0xFF) 及是否计算 checksum”。STM32CubeIDE 中没有该功能的 GUI 实现,但可以通过修改 Link File 实现,本文就修改方法进行介绍。

LAT1317 STM32CubeProgrammer和STM32CubeIDE协同调试的方法
(0.1M)
359
2023-09-22

文档说明:很多人以为使用 STM32CubeIDE 的时候就不能同时使用 STM32CubeProgrammer ,其实不然。ST-LINK 共享模式功能很早就已经具备,但是很多人并没有在意。STM32CubeProgrammer 和 STM32CubeIDE 都能够使用 ST-LINK 共享模式。使用 STLINK 共享模式,在使用STM32CubeIDE 单步调试时,也可以使用STM32CubeProgrammer 查看寄存器、内存以及选项字节。

LAT0162 如何在IAR中配置CRC参数
(0.3M)
314
(5.1M)
275
2015-06-13

文档说明:EWARM从v5.5版本之后开始支持STM32芯片的CRC计算。前面所说的计算整个FLASH的CRC校验值并保存在FLASH末尾的过程,可以在IAR中完成。通过配置EWARM的CRC计算参数,自动对整个FLASH空间进行CRC计算,并将计算结果放到FLASH的末尾。本文中将介绍的就是如何配置IAR的CRC参数,使之与STM32的CRC硬件模块保持一致。本文中的例子都基于STM32F072进行。

LAT0606 利用MQTT及云存储实现STM32远程无线升级
(1.4M)
380
(24.4M)
397
2018-10-30

文档说明:对于一个物联网应用,远程监控设备状态、远程更新设备固件都是其要包含的典型基本功能。本示例在百度天工IoT平台和STM32F769探索板上实现了上述功能。

LAT0603 STM32 OTA例程之ESP8266使用
(0.3M)
400
2018-09-25

文档说明:本文介绍STM32的FOTA例程中用到的wifi模块:ESP-01。ESP-01是安信可公司基于ESP8266 wifi芯片的WIFI模块。在STM32 FOTAdemo里,用来实现无线通信。阅读本文,我们将来认识一下这个模块,并介绍demo里相关底层驱动的实现。

LAT0604 STM32 OTA例程之cJSON使用
(0.2M)
391
2018-09-25

文档说明:在STM32 OTA例程中,设备端(stm32F769探索版)与云端交换数据使用的是json格式。在本篇文章中,将对json格式以及Cjson的使用及注意事项进行说明。

LAT0596 利用MQTT及云存储实现STM32远程无线升级例程的开发文档
(0.6M)
460
2018-10-17

文档说明:STM32F769DK云端固件升级例程分为两部分:Bootloader和用户应用程序。 该软件基于STM32F7Cube库运行在STM32F769I-DISCO探索板上,利用百度的IoT平台实现了从云端更新固件的功能。 Bootloader部分主要负责将新版本用户应用程序从QSPI Flash烧到MCU内部Flash中,并跳转到应用程序运行,功能相对简单。 用户应用程序部分除了用户自己的功能程序外,还包括固件版本云端推送,固件文件云端下载以及断点续传等功能,程序结构相对复杂。 本文档主要介绍用户应用程序这

LAT1079 STM32CubeIDE实用技巧之配置堆空间
(0.1M)
506
2022-02-21

文档说明:本文档介绍了如何在STM32CubeIDE 中指定堆(Heap)的地址到某一专用的RAM 中。

LAT0720 STM32CubeL4 V1.13.0中的RTC定时唤醒问题
(0.3M)
415
2019-05-21

文档说明:因为STM32L4极其出色的低功耗性能,越来越多的用户在使用STM32L4系列开发产品,很多用户在产品开发中会使用RTC的定时唤醒从低功耗状态,但是有客户使用RTC的定时唤醒功能时发现无法唤醒。经试验后发现是由于在STM32Cube中存在bug,我们可以直接修复bug或者使用STM32Cube_FW_L4_V1.14.0版本的库。我们建议在怀疑驱动库代码方面问题时,不妨进一步查看相关实现代码或使用不同版本库代码做比较验证。

LAT0695 使用USB ethernet gadget直连STM32MP1
(0.7M)
380
2019-09-17

文档说明:现在我们介绍一种基于USB物理线缆的以太网连接。只需要一根USB线,复用之前的DFU固件下载接口,将Windows主机与STM32MP1连接起来构成TCP/IP网络。本文介绍了基于STM32MP1的便捷网络配置,能够提高开发STM32MP1的工作效率。

LAT1072 在KEIL中通过opt.s文件设置Option bytes
(0.1M)
441
2022-02-21

文档说明:使用KEIL 作为软件开发环境,则存在一种更简单的方式,就是使用opt.s 文件,采 用该方法可以与应用工程融合在一起,一步完成option bytes 的配置。

LAT0703 零基础快速入手STM32MP1
(0.8M)
381
2019-09-17

文档说明:STM32MP1多核微处理器,带有650Mhz主频的cortex-A7双核以及一个主频为209Mhz的cortex-M4核,即片内拥有三核。

LAT0742_STM32L1xx与 STM32L1xx_A的差别
(0.1M)
771
2020-04-24

文档说明:介绍了STM32低功耗系列STM32L1产品线中, STM32L1xx与 STM32L1xx_A的差别

LAT0816 STM32CubeIDE实用技巧之ld链接文件
(0.4M)
465
2021-04-25

文档说明:STM32CubeIDE 是ST 推出的免费集成编译环境,基于Eclipse 开源框架,集成了GCC、GDB 等免费的编译器、链接器,支持STM32 全系列芯片,可以创建C/C++工程,支持调试、波形实时仿真、一键下载等。在实际项目中,有时候需要对内存进行细分时,比如指定变量/函数/文件到特殊地址等等,KEIL 可以通过“*.sct”文件来实现;IAR 可以通过“*.icf”文件来实现;对于STM32CubeIDE,可以通过“*.ld”链接文件来实现。本文将介绍GCC 的“*.ld”链接文件的常见用法,供

LAT0777 Keil环境下使用外部烧录脚本(stdlr)烧录QSPI_v1.0.pdf
(0.4M)
444
2020-12-14

文档说明:随着用户的应用越来越复杂,以及 GUI 等需要大存储空间应用的流行,很多时候我们需要将代码和数据放在外扩的 QSPI 存 储空间。但是这样存在一个在线 QSPI 烧写的问题,尤其是在应用调试时,需要频繁的修改外部存储空间里的内容。如果调试 工具不能够一键烧录,势必会给调试带来诸多的麻烦。

LAT1396 STM32CubeIDE实用技巧之STM32H7双核调试的配置
(0.1M)
133
2024-02-22

文档说明:在 STM32CubeIDE 中进入 Debug 模式来开发 STM32,是非常重要的调试手段,相对于单核来说,双核的 Debug 配置项就会多一些注意事项,这里给出一些关键的配置说明,确保用户顺利进入双核的调试模式。

LAT1357 利用Cordic计算浮点三角函数
(0.1M)
354
2024-01-03

文档说明:当前 STM32G4 系列以及 STM32H723 中虽然有专门计算三角函数的硬件 CORDIC,但目前是定点的 CORDIC 硬件,很多实际应用,比如电机控制,数字电源,客户整个软件代码是基于浮点的运算,因此有必要对如何利用 CORDIC 计算浮点的三角函数(本文计算正弦和余弦),以及计算时间的评估做下说明文档,给客户一定的参考示例,本文使用 STM32G474 为例来进行。

LAT0278 从零开始使用CubeMX创建以太网工程
(0.1M)
550
2022-11-29

文档说明:在前面一篇文章中,介绍了如何使用 CubeMX 来建立一个简单的 TCPEchoserver 工程。但是在新建 CubeMX 项目时,是通过直接选择 ST 的开发板的方式实现的。对于大多数实际的开发场景,可能并不是在 ST 的开发板上进行,所以在这篇文章中,我将介绍如何从零开始建立一个以太网工程。

LAT1357 利用 Cordic 计算浮点三角函数
2024-01-03

文档说明:当前 STM32G4 系列以及 STM32H723 中虽然有专门计算三角函数的硬件 CORDIC,但目前是定点的 CORDIC 硬件,很多实际应用,比如电机控制,数字电源,客户整个软件代码是基于浮点的运算,因此有必要对如何利用 CORDIC 计算浮点的三角函数(本文计算正弦和余弦),以及计算时间的评估做下说明文档,给客户一定的参考示例,本文使用 STM32G474 为例来进行。

LAT1429 进一步认识STM32H5 OBK
(0.1M)
43
2024-07-26

文档说明:通过本文,希望用户在 STM32H5 正式文档的基础进一步了解, OBK 的用处, OBK 与 OBK 文件的差异,OBK 的生成工具,OBK 的烧录方法,适合 STM32H5 的用户在实践中 进行参考

LAT1031_STM32H7双核CM4作为Master初始化系统
(0.1M)
421
2021-11-03

文档说明:STM32H7 双核单片机内部集成了CM7 和CM4 这两个内核,在目前官方提供的例程中,大都是使用CM7 作为Master 初始化系统时钟,然后通过释放硬件信号量HSEM 唤醒CM4,那么是否可以将CM7 与CM4 的角色互换,让CM4 作为Master 去初始化系统时钟呢?

LAT1278 STM32G071从standby模式退出后SRAM数据保留
(0.1M)
320
2023-06-13

文档说明:客户使用 STM32G071 芯片从 standby 模式下唤醒,想要 SRAM 的数据在退出 standby模式后得以保持。根据手册的描述,配置了相应的比特位,但是发现数据仍然保持不了。

LAT1289 Keil、IAR、CubeIDE中变量不被初始化方法
(0.1M)
390
2023-06-13

文档说明:有些时候在我们的应用过程中要求变量有连续性,或者现场保留,例如Bootloader 跳转,某种原因的复位过程中我们有些关键变量不能被初始化,在不同的编译环境下有不同的设置,本文就这个操作做总结,分别介绍使用 Keil,IAR 和 CubeIDE 的操作方法,本文中所用芯片为STM32G431RBT6。

LAT1439 关于STM32H745的MC SDK电机控制工程问题的解决办法
(0.1M)
35
2024-09-25

文档说明:在使用 MC SDK 产生基于 STM32H745 工程的过程中可能会遇到一些问题,这边对这些问题做些简要说明,并探讨相关的解决方法。测试用板为 Nucleo-H745ZI。

LAT1241 浅谈STM32库里的回调函数
(0.1M)
492
2023-02-08

文档说明:有人对 STM32 固件库里的回调函数有些好奇甚至纠结,这里简单介绍下。其实从用法及功能上讲他们并没有什么特别的,跟其它函数一样,也是实现特定功能的代码段。一般来讲,所谓回调函数,泛指基于事件触发而被调用执行的函数,简单点说,就是条件满足了就调用的函数,往往会跟函数指针结合起来通过函数指针实现调用。

LAT1254 巧用STM32CubeIDE之编译警告
(0.1M)
417
2023-02-03

文档说明:在编译项目时,warning 和 error 同样重要,部分隐蔽的问题可能就和warning 相关。当我们对工程代码和编译器有了更深层次的了解后,可以巧妙的使用和屏蔽 warning,帮我们更好地管理项目。

LAT1208 使用STM32CubeMX生成配置代码的文件结构
(0.1M)
545
(0.1M)
452
2023-02-08

文档说明:在阅读 UM1718 文档的时候,发现 CubeMX 有个比较好的功能,可用“.extSettings”文件配置生成代码的工程文件结构。只需要要配置“.extSettings”文件一次,后续不管使用哪个IDE(只要是 CubeMX 支持的),都不需要再手动配置文件结构或包含头文件路径了,并且可以保持对各个 IDE(只包括 CubeMX 支持的)配置的一致性,减少工作量。也有客户询问怎么添加工程文件的问题,考虑到可能有些同学不太了解这个功能,所以本文对这个功能进行介绍。

LAT1187 在Keil中使用STM32CubeProgrammer
(0.1M)
435
2023-02-03

文档说明:STM32 MCU 新产品的早期用户有时候会遇见工具链还在完善中的情形,例如,一部分STM32 工具已经支持该产品,而另外一部分 STM32 工具还在更新中。具体到 Keil 用户,用户有可能可以使用 STM32CubeProgrammer 进行下载,但是 Keil 编译器中支持该产品系列的软件 Pack 还需要一些时间才会被更新从而,用户能够使用 Keil 编译器进行编译。甚至调试,但没法直接在 Keil 环境中对新产品进行下载。对此,用户可以选择等待,也可以自行扩展 Keil 的 FLM 来支持该产品

LAT1115_STM32CubeIDE实用技巧之仿真带外扩FLASH的工程
(0.1M)
710
2022-04-12

文档说明:

LAT1020 为STM32用户准备的FatFS基础知识_v1.0.pdf
(0.1M)
534
2021-08-11

文档说明:FatFS 最初为小系统设计,特别适合 MCU 的应用场景,是 STM32 应用中的常用的一个文件系统。一般情况下,直接使用 FatFS 应用接口format,create, open, read, write, close 等配合默认参数进行应用开发。但是,一些文件系统相关的问题,例如,如何优化嵌入式系统使得所使用的空间为最小,开发人员就需要了解一些 FatFS 的基础知识。本文就是为这部分需求而写。

加密与信息安全(39)
  • LAT名称
  • 文档(文件大小)
  • 下载次数
  • 软件包(文件大小)
  • 下载次数
  • 更新时间
  • 分享
LAT0149_PCROP区域函数无法被调用的问题与解决
(0.2M)
1028
2015-09-28

文档说明:PCROP 为Proprietary code readout protection 的缩写,也就是说这是一个专有代码读出保护的功能。与RDP 对整片Flash读保护不同的是,它只是针对Flash 的某些特定区域进行代码的读写保护。所以它可以被用来保护一些IP 代码,方便进行二次开发。它存在于许多STM32 的型号中,如STM32F401、STM32F411、STM32F427/437、STM32F429/439、STM32F446、STM32F469/479,STM32L476/486,等等。对于PCR

LAT0607_基于STM32加密库开发比特币应用的补充说明
(0.2M)
905
2020-08-26

文档说明:本文针对使用STM32开发比特币的客户,对STM32加密库的椭圆曲线参数和点乘函数做了补充说明,方便STM32客户进行开发比特币应用。

LAT0731_使用STM32H7安全用户存储区
(0.1M)
650
(0.1M)
568
2021-02-03

文档说明:使用STM32H7安全用户存储区控制调试端口访问保护代码安全

STM32WB的密钥安全存储和使用
(0.4M)
738
2021-02-24

文档说明:STM32WB的密钥安全存储和使用

LAT0735_OTFDEC_Efficiency_基于STM32H735G-DK板的验证
(0.1M)
777
(0.1M)
728
2021-06-28

文档说明:保护片外存储器上代码(包括指令/数据)的机密性,同时保证代码执行的效率

LAT1026 STM32 Cryptolib 使用技巧——AES GCM 解密认证失败问题的研究
(0.1M)
445
2021-08-06

文档说明:

LAT1446TrustZone应用中串口通信的DMA传输失败问题
(0.1M)
19
2024-09-25

文档说明:本文所描述的问题,正是由于 MPCBB2(Boot 工程对应的 RAM)没有配置,其默认为Secure+Prileged 属性,但 DMA 默认属性为NonSecre+NonPrileged。代码中只配置 DMA通道为 Secure 属性,并没有配置其为 Prileged,因此导致其访问 SRAM2 时失败,这也就是为什么发送内容全为 0 的原因了。这也提醒我们,在开发trustzone 相关的项目时,对各个资源的安全属性配置一定要小心。

LAT1090 X-Cube-SBSFU使用技巧(之四) ——从单核H7到双核H7的移植与集成示例_v1.0
(0.1M)
435
2022-02-15

文档说明:本篇我们将以STM32H7 为例,讨论如何基于STM32H7 单核的SBSFU 参考实现移植到双核STM32H7平台上,并与STM32H7 上的双核应用进行集成。

LAT1089 X-Cube-SBSFU使用技巧(之三)——移植到另一个硬件平台_v1.0
(0.1M)
412
2022-02-15

文档说明:本篇将讨论如何将SBSFU 参考实现从一个STM32 MCU平台移植到另外一个STM32 MCU 型号的硬件平台。

LAT1088 X-Cube-SBSFU使用技巧(之二)——与应用集成_v1.0
(0.1M)
444
2022-02-15

文档说明:本篇我们将介绍SBSFU 和用户应用程序集成相关的内容。

LAT0734_使用STM32H7安全新特性实现敏感数据的安全存储与使用
(0.1M)
570
(0.1M)
527
2021-02-03

文档说明:使用STM32H7 安全新特性实现敏感数据的安全存储与使用

LAT0729_使用STM32L5的TrustZone特性控制调试端口访问,保护片上代码安全
(0.1M)
569
(0.1M)
485
2021-02-03

文档说明:使用STM32L5 TrustZone特性控制调试端口访问保护代码安全

LAT0730_使用STM32L5的OTFDEC和ICACHE功能实时高效运行片外Flash中的加密代码
(0.1M)
774
(0.1M)
517
2020-08-17

文档说明:目标 :保护外置Flash中的代码和数据的机密性 同时提高外部Flash中代码的运行效率

LAT0737_关键数据和代码在L0上的保护_基于防火墙和PCROP
(0.1M)
505
2021-02-03

文档说明:基于防火墙和PCROP实现关键数据和代码在L0上的保护

修改STM32L5的存储空间安全属性的设置
(0.4M)
501
2020-06-19

文档说明:STM32L5在trustzone使能情况下使用,需要用户根据应用要求,规划好Flash和 SRAM上的安全区域和非安全区域。由于trustzone环境下CPU对存储区访问规则的 限制,这套规划方案会涉及到几方面的设置

使用STM32的MPU实现代码隔离和访问控制
(0.6M)
864
(5.4M)
516
2020-06-19

文档说明:需要解决的问题和达到的目标: • 用户需要将一部分数据写入NVM,一次性希望写入后该部分数据不能再被修改 • 该端数据只能被部分关键代码访问,其他的应用数据无法直接读取该段数据的内容

LAT1272 STM32 TrustZone开发调试技巧(2)——外设使用常见问题
(0.1M)
300
2023-08-17

文档说明:这篇文档把重点放在Trust Zone架构下应用开发中使用外设的环节,从外设中断、DMA、GPIO及其与IO连接的外设等几个方面,介绍这些部分与传统的不带TrustZone的STM32开发相比有哪些变化,同时会列举一些相关开发中的常见问题,并给出问题的分析与解决方法,供开发者参考。

LAT1320 STM32 TrustZone开发调试技巧(4)—— TrustZone环境中使用RTOS
(0.1M)
304
2023-09-22

文档说明:我们知道在某些较为复杂的应用中,往往还会用到 RTOS,在这个系列的最后一篇,我们将主要讨论 STM32MCU 应用程序开发中,在 TrustZone 环境下使用 RTOS 时的情况以及相关软件开发的一些注意事项,供开发者参考。

LAT0792_STM32L5中如何关闭trustzone
(0.4M)
794
2020-05-23

文档说明:本文将以用户的视角描述如何在STM32L5中关闭Trustzone。

LAT0632 一步一步使用STM32安全启动与固件更新
(0.4M)
371
2018-03-26

文档说明:STM32 X-CUBE-SBSFU 软件包提供了安全启动与固件更 新功能,可以让用户从高层次来使用STM32 的各项安全功能。本文则是带领读者一 步一步来体验STM32 安全启动与安全固件更新。

LAT0372 发现STM32防火墙的安全配置
(0.5M)
343
2017-07-18

文档说明:STM32 防火墙(Firewall)能够构建一个与其它代码隔离的带有数据存储的可信任代码区域,结合RDP、WRP以及PCROP,可用来保护安全敏感的算法。在STM32 Cube固件库参考代码里提供了几个不同的防火墙配置。那么问题来了,什么是STM32防火墙的应该使用的安全配置呢?本文以STM32参考手册为基础,以最大化安全为目标,来探索发现STM32防火墙的推荐配置。

LAT0358 代码实现PCROP清除
(0.3M)
340
2017-06-07

文档说明:STM32 PCROP专有代码读出保护,将某个区域设置为仅允许执行,可防止代码被非法读出与修改。ST网站提供了免费的PCROP参考代码,但是例程中仅仅提供了用代码设置PCROP。为方便利用PCROP进行知识产权保护的开发和部署,这篇文章提供了方法, 可在RDP级别设置为1或者0时,使用代码清除PCROP。

LAT0291 时钟安全系统的应用(LSE篇)
(0.2M)
346
(1.5M)
295
2016-12-30

文档说明:某公司用ST的STM32L476在水表上,在开启时钟安全系统(CSS)之后,发现MCU重启后,LSE无**常启动,通过示波器看,发现LSE已经正常起振。这是由于他们对CSS的了解不够,应用错误导致,下面我们来深入了解一下MCU内部的时钟安全系统。

LAT0255_使用STM32 ST_LINK Utility 设置读保护后不能运行
(0.2M)
1323
2016-06-28

文档说明:某客户在其产品的设计中,使用了STM32F411VET6。客户工程师在开发过程中,尝试使用STM32 ST-LINK Utility 软件配合 ST-LINK 给32F411EDISCOVERY 板上的STM32 加上Level 1 的读保护。工程师发 现,原本在板子上正常运行的代码,加上读保护后,就不运行了。按了板上的RESET 按键也无济于事。

关键数据和代码在L0上的保护_基于防火墙和PCROP
(33.4M)
332
2021-02-03

文档说明:基于防火墙和PCROP实现关键数据和代码在L0上的保护

LAT1445 从 APP_NS 中划出部分 RAM 后导致 SecureFault
(0.1M)
2
2024-11-20

文档说明:客户在开发 STM32U5 SBSFU 过程中,原本 APP_NS 使用了整个 SRAM3 的 512K 大小的内存,但后来由于需求变更,要将 SRAM3 中前 32K 的内存分给 APP_S 用。客户调整代码后,发现触发了SecureFault 中断。尝试查找问题所在,但一直没找到。本文将基于此问题背景,向读取呈现如何调试并定位一个 trustzone 相关问题的过程,以增加读者的调试经验。

LAT1153 使用STM32H753从SBSFU跳转到APP失败
(0.1M)
587
2022-05-24

文档说明:客户使用的是STM32H753,使用ST 官方的SBSFU V2.3 做安全启动,反馈在从 SBSFU 跳转到用户程序APP 的过程中小概率会卡住。。后来发现客户使用的是 H753 Y 版本,且运行在480MHz,但是Y 版本的H753 当前早已停产,市场上的都是市场残留,且Y 版本的H753 最高主频为400MHz,也就是说客户当前的MCU 是处于超频状态,且最终客户量产时的芯片必然是最新的V 版本。

LAT1233 TrustZone架构下程序跳转导致的HardFault
(0.1M)
356
2023-02-03

文档说明:客户使用 STM32U5 进行开发,并使能了 TrustZone 架构,程序需要从 bootloader 跳转到app。在之前版本都是正常跳转的,某一天 IAR 从 9.20 升级到 9.30 后,程序跳转失败,并且会导致 hardfault,想知道为什么会失败。

LAT1273 移植SBSFU到STM32G070
(0.1M)
367
(0.1M)
262
2023-06-13

文档说明:客户使用 STM32G070RBT6 给海外用户开发产品,由于当地新需求,产品需要增加安全启动的功能。 但是由于 X-Cube-SBSFU 包提供的示例中,只有基于STM32G071 的示例。客户因此询问该怎么移植。本文将讲解这个移植过程。

LAT1329 STM32H5 DA之初体验(不带TrustZone)
(0.1M)
287
2023-10-18

文档说明:本文是接着之前文档《STM32H5 DA 之初体验(带 TrustZone)》的后续之作。

LAT1328 STM32H5 DA之初体验(带TrustZone)
(0.1M)
354
2023-10-18

文档说明:STM32H5 是 ST 2023 年新推出的产品系列, 与以往 MCU 不同的是, STM32H5 推出新的product state 功能特性以替代以往的 RDP 功能。

LAT1331 STM32H5 DA证书链之初体验
(0.1M)
295
2023-10-18

文档说明:本文是上文 《STM32H5 DA 之初体验(带 TrustZone)》的后续之作。倘若你还没有阅读此文,那么建议你先阅读下,然后再回过头来阅读本文。

LAT1330 STM32H5 OEMiROT之体验
(0.1M)
284
2023-10-18

文档说明:本文档通过一个动手实验, 详细演示了如何在 STM32H563 上运行一个 OEMiROT 的功能. 旨在针对那些 OEM 想自己实现一个基于 STM32H563 上的 iROT 功能而又不知如何开始的开发者.

LAT1342 Step by Step体验 STM32H5 STiROT
(0.1M)
277
2023-11-29

文档说明:本文档通过一个动手实验, 详细演示了如何在 STM32H573 上实现一个 STiROT 的功能, 旨在针对那些 OEM 想使用 STM32H573 芯片内置的 STiROT 功能而又不知如何开始的开发者。

LAT1421 如何在STM32U5 TF-M工程中添加自定义服务
(0.1M)
54
2024-07-26

文档说明:本文的主要内容将围绕在如何添加客户自定义的服务而展开.

LAT1086_STM32U5带OEM_Key保护的RDP降级
(0.1M)
774
2021-11-19

文档说明:STM32U5在芯片生命周期管理方面在STM32L5的基础做了进一步的改进,引入了OEM Key机制,使得RDP的级别状态转换能够通过OEM设置的password进行保护,一方面能够防止RDP任意降级,避免设备被远程攻击注入恶意代码后通过RDP降级变砖的风险,另一方面也使得RDP2降级成为可能,给产品后期维护带来更多的灵活性。

LAT1087_X_Cube_SBSFU使用技巧之一初步了解
(0.1M)
438
2022-02-15

文档说明:在X-CUBE-SBSFU 使用技巧的第一篇,我们对软件包及其软件架构等进行介绍,让 读者对这个软件包有一个初步认识。

LAT1270 STM32 TrustZone开发调试技巧(1)——地址安全区及资源安全属性配置
(0.1M)
360
2023-06-13

文档说明:本文将对 SAU/IDAU 配置,Memory 的自身安全属性配置,以及内核访问指令与数据时的安全访问规则加以阐述,希望可以帮助相关开发者更好地理解 V8M TrustZone 的架构以及在 STM32 中的实现,同时,还会列举一些与 memory 的 TrustZone 安全配置相关的常见问题及分析方法,给开发者做参考。

LAT1285 STM32 TrustZone开发调试技巧(3)——HardFault调试与处理
(0.1M)
366
2023-06-13

文档说明:在 STM32 TrustZone 开发调试技巧的前两篇中,我们介绍了内核的SAU/IDAU,地址的安全属性配置,资源的安全属性配置,内核访问资源的安全规则,以及TrustZone 环境下外设使用的常见问题等内容。TrustZone 环境开发中还可能经常遇到的一个问题就是软件触发的故障错误。

内核(26)
  • LAT名称
  • 文档(文件大小)
  • 下载次数
  • 软件包(文件大小)
  • 下载次数
  • 更新时间
  • 分享
LAT1450 不断电情况下修改RDP选项并生效的解决方案
(0.1M)
28
2024-09-25

文档说明:对于早期的 STM32F0xx/ STM32F1xx/ STM32F2xx/ STM32F4xx 在修改读保护(RDP)后,只需要执行 HAL_FLASH_OB_Launch()后 MCU 会自动复位 RDP 生效。但是,对于STM32F4 以后量产的型号,修改选项字后必须重新断电一次,MCU 才能正常运行。 对于此方法,笔者使用的是 GPIO 作为唤醒源来使 MCU 从 shutdown 模式唤醒。其实,若使用 RTC 作为唤醒源稍作配置,就可以无需手动操作实现 RDP 不断电的修改生效。

LAT0244 stm32缓存对齐的问题
(0.3M)
411
2016-08-09

文档说明:在我们对STM32进行编程的时候,都会用到变量,因为我们的MCU是32位的,所以在申请变量的时候,就会存在变量长度不一致,需要对齐的问题.这个变量长度对齐的问题,小则可以只是影响代码执行的效率,大则会出现系统hard-fault的问题.下面我们将详细的解说这个问题.

LAT0083 Keil中使用STM32F4xx硬件浮点单元
(0.3M)
443
2015-07-28

文档说明:有工程师反应说Keil 下无法使用STM32F4xx 硬件浮点单元,导致当运算浮点时运算时间过长,还有一些人反应不知如何使用芯片内部的复杂数学运算,比如三角函数运算。针对这个部分本文将详细介绍如何使用硬件浮点单元以及相关数学运算。

LAT0143 STM32F30x的ADC采样的傅立叶变换
(0.3M)
422
(3.0M)
363
2015-07-28

文档说明:本文目的是演示如何使用STM32F30x 内部的DSP 进行浮点快速傅立叶变换(FFT),为联系实际应用,使用ADC 对波形发生器进行ADC 采样,然后对ADC 采样结果进行FFT, 与Matlab 仿真结果进行比较察看最终结果的准确性。会使用到ARM的DSP 库文件,以及STM32F30x 的浮点运算单元以及DSP 指令等。

LAT0155 STM32F7与STM32F4的复位序列比较
(0.3M)
435
(0.0M)
252
2015-07-28

文档说明:初次接触到STM32F7,总会有个疑惑,为什么0地址变成了ITCM RAM的起始地址。系统复位还是从地址0处开始执行吗?如果是,那这似乎看起来是冲突的。实际上,STM32F7基于Cortex-M7内核,Cortex-M7和Cortex-M3/M4的复位序列有了一些不一样。在本文中,将针对这个问题做详细讲解。

LAT0049 时钟失效后CPU还会运行
(0.3M)
350
2015-07-28

文档说明:该问题由某客户提出,发生在 STM32F103VDT6 器件上。据其工程师讲述:在其产品的设计中,STM32 的 HSE 外接 8MHz 的晶体产生振荡,然后通过 STM32 内部的PLL 倍频到 72MHz,作为 STM32 的系统时钟,驱动芯片工作。在 STM32 片外有专用的看门狗芯片,监控 STM32 的运行。STM32 内部的软件会在 STM32 的某个管脚上产生脉冲来复位看门狗。一旦 STM32 没有及时的产生脉冲来复位门狗,则看门狗会认为 STM32 运行不正常,从而复位 STM32。在对该

LAT0037 进入了已屏蔽的中断
(0.3M)
359
2015-07-28

文档说明:某客户工程师在某型号新产品的设计中,使用了STM32F103XXT6。据其工程师讲述:他们在设计中,使用了一个外部中断,用来检测某事件的发生,从而唤醒低功耗模式下的 STM32。对应于该中断输入,有一中断服务程序,内容如表(一)所示。在实测中发现偶尔会发生在有该外部中断输入时 STM32 并未回到正常的运行状态的情况。测量此时 STM32 的功耗,发现其功耗明显增大,说明已从低功耗唤醒。使用调试工具调试,发现当出现该现象时,程序停留在表(一)所示的中断服务程序中,不能退出。进一步跟踪,发现“行(1)”的判

LAT0026 浮点DSP运算效率不高
(0.2M)
413
2015-07-28

文档说明:该问题由某客户提出,发生在 STM32F407IGT6 器件上。据其工程师讲述:由于在其产品中,需要使用STM32进行大量的浮点数以及浮点DSP运算,所以针对STM32的浮点数运算能力及 DSP 运算能力做了相关的测试,但测试结果不理想。STM32F407 在144MHz 主频下,对于表(一)程序的运算耗时为:9105uS。没有体现出硬件浮点运算应有的运算能力。

LAT0025 鬼魅一样的 Hard Fault
(0.3M)
419
2015-07-28

文档说明:该问题由某客户提出,发生在 STM32F101C8T6 器件上。据其工程师讲述:其某型号产品的设计中用到了 STM32F101C8T6 器件。在软件调试过程中,遇到了一个棘手的问题:程序会莫名其妙的跳到 Hard Fault 中断。在程序中,产生该中断的位置不固定,忽而在这里,忽而在那里。发生的时间不确定,有时候程序运了很长时间才遇到,有时候开始运行后没一会就发生了。产生该问题的原因不明,不知如何进行排查。

LAT0201 EXTI重复配置两次导致误触发中断的问题
(0.1M)
402
2016-03-31

文档说明:某客户在其产品的设计中,使用了STM32F302CCT6。客户在开发过程中,其所配置的EXTI 外部中断,在外部没有中断信号的情况下,上电后运行程序,总是会进入EXTI 中断程序一次。

LAT0205 如何将coremark程序移植到STM32上
(1.1M)
404
2016-05-05

文档说明:本文将一步步来介绍如何将下载的CoreMark测试代码移植到STM32MCU上进行测试。

LAT0214 STM32F3xx_STM32F4xx使用浮点开方指令
(0.4M)
426
2016-06-28

文档说明:STM32F3xx/STM32F4xx(ARM Cortex-M4内核)中集成了FPU,也就是浮点指令单元,可以将浮点运算变得简单快速,但如果想要发挥出这个浮点运算的最大功效,必须使用浮点指令集,开发者可以直接使用浮点指令集,但目前随着系统的集成度更大,开发者还是希望使用C语言进行编程,还要求执行时间短,当调用DSP_Lib库函数方式,时会有执行时间长的问题,本文以浮点开方为例对此类需求做相关说明。

LAT0269 RMW(Read-Modify-Write)对STM32F7xx内核运行速度的影响
(0.4M)
324
(0.0M)
287
2016-11-17

文档说明:在客户使用STM32F7xx(Cortex-M7内核)实际测试中,会发现同等主频下STM32F4xx(Cortex-M4)执行同样一段简单程序在时间上要快于STM32F7xx,这个会影响到客户切换到STM32F7xx的信心,也对ST以及ARM宣传上Cortex-M7内核执行时间远快于Cortex-M4内核的说法提出质疑,本文将针对具体案例说明这一情况的产生以及解决办法。

LAT1448 ARMv8-M架构下MPU的使用技巧
(0.1M)
83
2024-07-26

文档说明:本文将主要探讨 v8-M 架构下 MPU 的使用技巧。

LAT0340 STM32F7 MPU Cache浅析
(0.5M)
423
2017-03-03

文档说明:本文会从结构,原理以及应用方面对MPU和Cache进行分析,主要目的是希望读者对Cache有基本的了解,在具体的实际应用中,使用带有一级cache的MCU时,避免常见的错误。

LAT0631 STM8使用24MHz外部晶振无法正常运行
(0.2M)
391
2018-03-22

文档说明:本文以STM8AF52A9单片机为例,详细说明其使用24MHz外部晶振无法正常运行的原因及问题解决方法。

LAT0609 基于STM32F0芯片IAP应用中不同代码区跳转问题.docx
(0.6M)
560
2018-06-04

文档说明:本文以STM32F0为例,就芯片内【从BOOT区跳转到APP区】【从APP区跳转到新APP区】【从APP区跳回BOOT区】的跳转问题做一些交流与介绍。

LAT1363 浅析单次事件进入两次中断问题
(0.1M)
281
2024-01-03

文档说明:在使用基于 ARM CORTEX-M3、M4 或 M7 系列的 STM32 芯片做产品开发时,可能有人遇到过单次事件会触发两次中断的情形。或许对异常现象的表述不尽相同,比方有的人会说怎么中断请求标志要清 2 次才行;由于中断里有些执行操作,有人会说代码里明明只执行一次,可实际运行时却是两次;有的人会说,有些执行动作放在中断外执行正常,放到中断服务程序里又异常了等等。记得有一次,有个 STM32 用户反映,他的 SPI 实际发送效果跟程序代码里设计的完全不一样,明明是 8 位发送,硬生生变成了 16 位发送

LAT1399 如何确保对APB外设寄存器的写操作写入完成
(0.1M)
102
(0.1M)
55
2024-03-21

文档说明:在一些支持双 bank 的 MCU 中,通常都会有一个控制 bank 切换的寄存器位,例如STM32F4 和 STM32L4 是 FB_MODE 寄存器位,STM32L0 是 UFB 寄存器位。我们可以通过配置这个位来进行快速 bank 切换,这个功能实际上是通过对 bank 进行重映射和设置别名来实现的。以大小为 2MB flash 的 STM32F4 为例,使用 SYSCFG_MEMRMP 寄存器的 FB_MODE 进行切换。

LAT0041 使用指针调用函数产生 Hard Fault
(0.2M)
390
2015-07-28

文档说明:该问题由某用户提出,发生在 STM32F2xx 器件上。据其工程师讲述:在其产品设计中,使用了第三方的软件库。出于某种原因,第三方不能提供软件库的源代码,只能以二进制映像的形式供其使用。在软件工程中,通过相关设置将该映像定位到某一固定的地址上,用户程序则是通过各个库函数的入口地址来调用相关的库函数。在软件调试过程中,其工程师发现,将库函数的入口地址赋给函数指针,再用函数指针进行函数调用会导致程序跑飞。使用调试器中止程序运行后,发现程序停留在Hard Fault 中断服务程序内。

LAT1209 Arm®v7-M架构的STM32如何启用DWT进行计数
(0.1M)
398
2023-02-03

文档说明:客户在使用 STM32H7 的时候,想要使用 DWT 计数来测量代码执行时间,评估执行效率。客户发现在重新上电或 reset 后,无法启用 DWT 进行计数。

LAT1199 TrustZone架构下LPBAM使用导致的HardFault
(0.1M)
381
2023-02-03

文档说明:客户在 Nucleo-U575ZI 开发板上使用 TrustZone 架构,测试 LPBAM 功能。首先使能了 TrustZone 架构,然后将 LPGPIO 映射到了非安全区,并且配置了 DMA 链表功能,使用 LPTimer 作为触发,自动地修改 LPGPIO 的寄器,从而达到在低功耗模式下,GPIO自动切换的功能。但遇到了 LPDMA 的配置问题,并且程序无法跳转到 Non-Secure 工程。

LAT1256 使用STM32的DWT单元监控内存
(0.1M)
393
(0.1M)
253
2023-02-08

文档说明:关于 DWT(Data watchpoint and trace unit),相信有很多工程师都知道,其可用于 us级别的延时。今天想和大家分享的是,通过 DWT 检测特定内存变量或函数,当其被修改或被调用时,可以触发中断,通过这样的方式,实现一些特殊的调试手段。

LAT1281 数据意外变化导致条件判断流程异常v1.0
(0.1M)
365
2023-06-08

文档说明:用户使用的 MCU 型号是 STM32H750VB。 在客户的代码中有多个条件语句,在条件里面的变量数值没有变化的情况下执行了条件里面的逻辑。即变量 A 在明明没有变化且条件不满足的情况下, 程序运行时偏偏执行了条件内部的代码. 很奇怪的现象。一时很难判断是编译器的问题还是芯片问题。

LAT1352 STM32G474 FPU性能优化与测试
(0.1M)
179
2024-03-21

文档说明:客户在使用 STM32G474 时,希望使用 FPU 进行浮点运算,并优化其性能。本文 从 STM32G474 系统的角度、ARM DSP Lib、编译选项的影响等几个方面探讨如何提升整体性能,并介绍如何使用 KEIL 工具进行测量。

LAT1240 MPU子区话题
(0.1M)
366
2023-02-03

文档说明:本篇内容主要涉及内核 MPU 配置方面的东西,重点针对客户的疑问做了些解答,对 MPU 配置中的子区概念做了较为详细的解读,以供参考。

人机界面(41)
  • LAT名称
  • 文档(文件大小)
  • 下载次数
  • 软件包(文件大小)
  • 下载次数
  • 更新时间
  • 分享
LAT1438 AFCI 上位机用户手册
(0.1M)
12
2024-11-20

文档说明:本文将介绍 AFCI 数据采集板,AFCI 上位机数据采集工具,和简单分析数据质量的一些方法,以及需要注意的一些事项。

STM32G0_GUI_DEMO环境搭建
(102.0M)
752
2020-11-29

文档说明:STM32G0_GUI_DEMO环境搭建教程说明文档

LAT1025 TouchGFX 如何使用TE+Timer+PB来优化UI减少撕裂
(0.1M)
542
2021-08-11

文档说明:越来越多的智能设备会在 MCU 上实现图形界面,而 TouchGFX 是专门用于 ST MCU上的图形界面设计软件,使图形界面在 MCU 上能达到类似智能手机的显示效果。通常,在支持 FMC、LTDC、MIPI-DSI 等 LCD 接口的 MCU 上,都有比较丰富的内存资源,SRAM 存放帧缓冲也毫无压力。但在一些成本敏感的产品上,MCU 内存较小,不足以存放完整的帧缓冲,这类产品一般通过部分帧缓冲实现图形应用。本文主要介绍基于 SPI 接口的低成本 GUI 方案,当采用部分帧缓冲时,TouchGFX 如

LAT0815_驱动8位8080接口LCD时的字节序问题
(0.1M)
411
2021-06-21

文档说明:本文中会介绍两种方法来处理8bit 8080 接口RGB565 格式图像数据字节序问题。

LAT0771_使用TouchGFX4.12.3和L8格式减少图片资源以提升性能
(0.1M)
376
2021-06-21

文档说明:使用TouchGFX 来减少图片资源的存储空间且实现同样的UI效果.

LAT0813 基于低成本STM32的图形应用
(0.5M)
539
2021-06-03

文档说明:越来越多的智能设备会基于STM32 实现图形界面,而TouchGFX 是专门用于STM32 的图形界面设计软件,使图形界面能达到类似智能手机的显示效果。通常,在支持FMC、LTDC、MIPI-DSI 等LCD 接口的STM32,都有着比较丰富的内存资源,SRAM 存放帧缓冲也毫无压力。但在一些成本敏感的产品上,STM32 内存较小,不足以存放完整的帧缓冲,这类产品又如何使用TouchGFX 来做图形界面应用呢?本文将介绍TouchGFX 的部分帧缓冲特性,以及基于STM32G0 系列 的移植过程。

LAT0810 通过STM32CubeMX制作外部Flash的烧写驱动(.stdlr)
(0.7M)
607
2020-12-23

文档说明:目前,越来越多的应用需要扩展外部的 Flash 来满足存储需求。那么,在调试及批量生产的过程中,需要对外扩的 Flash 进行 烧录操作。由于 STM32 ST-LINK Utility 以及 STM32CubeProgrammer 中,对 Flash 支持的型号有限,只能覆盖一部分 MCU 和 Flash 的型号,无法满足客户的需求,而且,提供的 external loader 的制作模板存在覆盖的芯片型号较少,且无法前期 QSPI Flash 调试的问题

LAT0733_X_NUCLEO_GFX01M1和STM32G0的Nucleo开发板GUI开发流程介绍
(0.1M)
1046
2020-12-15

文档说明:STM32G07x Nucleo + X-Nucleo-GFX01M1 是新推出的基于 STM32G0 + TouchGFX 的 低成本解决方案套件,用户可以方便的基于这套开发板进行原型设计,或是学习 TouchGFX 相关控件和模型架构。

LAT0732_TouchGFX简单界面设计按键控制光圈移动
(0.1M)
454
2020-02-24

文档说明:用F746的带屏的开发板体验ToughGFX这个GUI软件,做一个四个按键控制中间圈圈移动的一个demo。

LAT1033 将framebuffer保存成图片来检查其内容是否正常
(0.1M)
446
2022-02-22

文档说明:本文会介绍一种方法,将帧缓冲内容导出并保存为图片,来判断帧缓冲内容是否正确。

TouchGFX快速创建滑动应用例程
2019-08-08

文档说明:使用制作3个左右可以滑动的界面. 1.界面1实现通过拖动水平进度条来改变圆形进度条的效果; 2.界面2实现一个动图显示的效果; 3.界面3实现一个通过按钮来模拟控制洗衣机启动/停止的效果;

LAT0705 TouchGFX中Callback模板实现原理
(0.2M)
362
2019-08-05

文档说明:TouchGFX为MCU带来了炫彩丰富的GUI界面,使得基于STM32芯片的人机界面开发非常方便而友好,TouchGFX是用C++编写的,借助C++的模板特性,定义了一组Callback模板,基于此模板来实现响应的功能。

LAT0366 基于FMC8080接口8位LCD的STemWin的移植
(0.6M)
386
2017-06-02

文档说明:有客户用我们的STM32F429VET6这颗芯片,用FMC接8080的8位的LCD,我们官方提供的例程或者网上的一些资料一般都是16位,客户在移植过程碰到一些问题,本篇主要介绍FMC接8080的8位的LCD的STemWin的移植过程。

LAT0290 GUI方案中ALPHA通道处理介绍
(0.4M)
326
2016-12-30

文档说明:伴随着GUI应用在嵌入式领域比重日益增加,STM32专门提供了DMA2D、LTDC以及DSI等外设,能够实现优良的GUI解决方案。本文主要围绕STM32的DMA2D和LTDC展开讨论,介绍图片ALPHA通道的处理事项。

LAT0243 STemWin自定义皮肤的实现与讲解
(0.5M)
289
(0.1M)
288
2016-08-09

文档说明:STemWin中,窗口对象的系统皮肤相对比较固定,针对这种情况,介绍一种自定义皮肤的方案,用于设计更加美观的界面。在本文中,首先简单介绍自定义皮肤方案的实现原理。然后,以按键为例,介绍如何实现自定义按键皮肤,实现按键外观的定制化。

LAT0145 STemWin驱动移植-FLASH_PSRAM(MCP)接口驱动设计
(0.4M)
415
2016-01-06

文档说明:在合计智能穿戴应用的时候,为了更好的用户体验和丰富的人机交互界面,需要更多的存储(RAM 和FLASH)来存储自定义的图片资源 ;由于可穿戴类的产品体积都非常小,因此FLASH&PSRAM;集成在一起的MCP 存储芯片是一个不错的选择。我们的STM32 FMC 外设是可以支持MCP 存储芯片的,而且只需要简单的配置就可以实现MCP 的访问。

LAT1101 在基于TouchGFX生成的代码中添加触摸功能的方法
(0.1M)
478
2022-01-18

文档说明:越来越多的智能设备会在MCU上实现图形界面,而TouchGFX是专门用于ST MCU上的图形界面设计软件,使图形界面在MCU上能达到类似智能手机的显示效果。TouchGFX图形引擎包括三部分:搜集、更新、渲染。其中在搜集阶段,图形引擎从外部环境收集事件,这些事件通常是触摸和按钮事件。TouchGFX 采样并将事件传递到应用程序,这样原始触摸动作就被转换为更具体的应用程序的触摸事件。例如,点击(用户在显示屏上按下或松开手指)、拖动(用户触摸显示屏并在显示屏上移动手指)、手势(用户向一个方向快速移动手指,然后

LAT0156 一步一步使用STemWin在STM32上开发一个简单的应用
(0.4M)
415
2015-08-28

文档说明:STemWin 是ST MCU 为工程师提供的免费的GUI 开发库,而且这个库是集成并发布在STM32CubeFW对应的软件包 。其中不但包含了库文件,而且包含了使用STemWin 的文档API 介绍,PC 端的处理工具(如图片转换工具、字体转换工具等)。由于STemWin 提供的文档只是比较详细的介绍了这些API 使用功能,但是对于初次接触和使用STemWin 开发应用的工程师来说希望有一个简单的类似一个helloworld 的小应用来简述一下整个开发过程。

LAT1291 用色阶来显示彩色位图(ZIP)
(0.1M)
49
2023-08-17

文档说明:此需求由某客户提出,需要用指定颜色的色阶替换原始位图的颜色来显示彩色位图。

LAT1392 LTDC RGB接口 LCD的TouchGFX工程的移植步骤
(0.1M)
152
2024-02-22

文档说明:文档基于 STM32F746G_DISCO 硬件平台,参考从 TouchGFX Designer 下载的 STM32F746 的 TBS(TouchGFX Board Setup),讲解 STM32CubeMX 相关配置,介绍了 LTDC RGB 接口 LCD 的 TouchGFX 工程的移植步骤。

LAT1316 显示动态文本时wchar字符问题
(0.1M)
254
2023-10-18

文档说明:在 TouchGFX 中,文本框控件可用来显示文字,如果使用 wildcard(通配符)功能,就可以实现动态文本显示。比如手环类应用中,当手环收到手机推送过来的信息后,就可以用文本框控件动态显示收到的信息。动态文本显示通常会使用 wildcard buffer,当需要更新文本时,直接更新 wildcard buffer,再重绘 TextArea 控件就可以更新显示的文本了。

LAT1313 JDI LCD 驱动时序介绍
(0.1M)
279
2023-09-22

文档说明:绝大多数 STM32 MCU 都可应用于图形界面,而且很多系列还内置图形硬件 LTDC,支持驱动 RGB 接口的 LCD。但是存在少数类型的 LCD,如 JDI 屏,除了 STM32L4P5 支持外,其它 MCU 只能根据屏的接口时序要求,用 GPIO 来驱动。本文会介绍 JDI 屏的接口时序与驱动过程。

LAT1322 AFCI应用笔记二、数据采集
(0.1M)
286
2023-09-22

文档说明:本文将介绍 PECC 的数据采集板,以及来自 GPM China 的数据采集工具,简单分析数据质量的一些方法,以及需要注意的一些事项。

LAT1300 TouchGFX 处理按钮长按的一种方法
(0.1M)
285
2023-09-22

文档说明:在使用 TouchGFX 设计 UI 界面时,用同一按钮的长按和短按表示不同的功能是个比较常见的实际需求。普通的 Button 控件可以通过 Interactions 处理一些基本的交互动作,通过下面一些简单的操作,我们可以将这个普通的 Button 改造成可以根据不同的按键时间处理不同事务的多功能按钮。

LAT1291 用色阶来显示彩色位图(PDF)
(0.1M)
249
2023-08-17

文档说明:此需求由某客户提出,需要用指定颜色的色阶替换原始位图的颜色来显示彩色位图。

LAT1094 STM32GUI 使用TouchGFX位图缓存功能实现表盘背景动态切换
(0.1M)
316
(0.1M)
289
2023-04-19

文档说明:自从2013 年一款侧重于GUI 应用的STM32F429x【搭载Chrom-ART 图形加速和LTDC 控制器】开始,ST 提供了STM32MCU + X-Cube-TouchGFX 一站式GUI 开发平台,越来越多的客户使用STM32 + TouchGFX 开发智能手表/智能家居控制面板等嵌入式设备. 对于智能手表应用,由于可以通过无线方式与手机进行通信,因此动态表盘背景更新也成为一个很好增加用户体验的功能(如可以根据节日更新表盘背景).下面我们用一个例程来介绍下如何使用TouchGFX 动态位图

LAT1093_STM32GUI_使用STLINK_stm32gui_pydfb工具来实时查看图形缓存的图片
(0.1M)
314
(0.1M)
275
2023-04-19

文档说明:如下图所示,在一个GUI显示应用中,TouchGFX图像库会根据GUI显示的输入进行以下处理 : - 收集 -> 更新 -> 渲染 在整个图形处理过程中,图像的数据(如png/jpeg/font等)会以像素字节流在MCU内部和外部传递. 由于GUI是一个较为复杂的系统,其中包括了很多的部件在同时运行(CPU/Memory/LCD控制器/操作系统/图形库…),因此在整个GUI显示过程中,如果发生显示异常,通过查看图形缓存中的像素字节数据 (如在memory窗口中查看一段内存)难以判断绘图过程是否正确.

LAT1116_STM32GUI_使用TouchGFX二进制字体Binary_Font功能实现字体动态更新
(0.1M)
0
(0.1M)
303
2023-04-19

文档说明:自从2013 年一款侧重于GUI 应用的STM32F429x【内嵌Chrom-ART 图形加速和LTDC 控制器】开始,ST 就为大家提供了STM32MCU + X-Cube-TouchGFX 一站式GUI 开发平台。越来越多的客户使用STM32 + TouchGFX 开发智能手表/智能家居控制面板等嵌入式设备。 在嵌入式GUI开发的应用中,设备厂家希望自己的设备支持用户根据自己喜好来定义所选用的字体类型。从技术上讲,可以将字体和应用程序分离开,这样可以在嵌入式设备有限的存储空间上根据需要更新和升级字

LAT1402 TouchGFX 中 MCU 负载的计算过程介绍
(0.1M)
128
2024-05-30

文档说明:从 TouchGFX Desinger 下载的 TBS(TouchGFX Board Setup)大都带有 MCU 的负载计算功能,那么如何在自己的板子上增加 MCU 负载计算功能呢?本文档参考从TouchGFX Designer 上下载的 STM32F746 的 TBS,讲解 MCU 负载计算的实现过程。

LAT1417 TouchGFX实现Home键返回主页
2024-07-26

文档说明:本文阐述了如何基于 TouchGFX 的 MVP 架构,实现物理 Home 按键控制返回主页的功 能及方法。通过这一实际应用案例,可以让用户更深入的理解 MVP 的设计模式

LAT1403 更换HyperRAM后TouchGFX 显示花屏问题分析
(0.1M)
81
2024-02-22

文档说明:对于嵌入式设备人机界面的升级,ST 提供了 STM32CubeMX+X-Cube-TouchGFX 平台化的开发方案,供用户快速开发出智能手机效果的 GUI 产品。

LAT1406 STM32F7在800x480及24位色深显示撕裂问题的分析和解决
(0.1M)
113
2024-04-07

文档说明:对于嵌入式设备人机界面的升级,ST提供了 STM32CubeMX+XCube-TouchGFX 平台化的开发方案,供用户快速开发出智能手机效果的 GUI 产品。

LAT1169 STM32 GUI LTDC最大像素时钟评估方法
(0.1M)
642
2022-05-24

文档说明:对于使用LTDC 来开发图形应用的案例,客户经常有以下问题:STM32 MCU 的 LTDC 最大支持的屏幕分辨率是多少?STM32F4 或者F7 能支持1280×720 的屏幕分辨率,达到60Hz 的刷新率吗?SDRAM 的位宽如何选取性价比最高,是选择16 位还是32位? 如何判断当前的设计应用产生了SDRAM 带宽不足问题?针对这些问题,本文档从问题产生的原理、LTDC 控制器的组成出发,介绍了STM32 GUI LTDC 最大像素时钟评估的方法,通过最大像素时钟间接可以判断支持的最大屏幕分辨率。

LAT1416 借助 DMA 将内存图像旋转 90 度
(0.1M)
6
2024-11-20

文档说明:客户的 UI 应用使用了横屏,但在某个场景中需要使用竖屏显示,因此客户想通过逆时针 90 度旋转图形,即将 framebuffer 部分内容进行旋转后显示。目前客户使用软件来进行旋转,但效率较低,希望借助 DMA 来完成旋转操作。

LAT1066_TouchGFX图形应用在亮屏时的低功耗实现
(0.1M)
428
2021-11-03

文档说明:在图形应用中使用低功耗,一般分为两种场景,一种是在关闭屏幕时,MCU 进入STOP 模式,能极大的降低MCU 功耗;另一种是在屏幕亮着的状态,MCU 进入SLEEP 模式,也能降低MCU 功耗。而在STM32L4+芯片上,LPSLEEP 模式相比SLEEP 模式功耗更低,本文将在STM32L4R9 芯片上,结合TouchGFX 和LPSLEEP 来介绍如何在亮屏状态下实现MCU 低功耗。

LAT1266 使用Framebuffer_Analyzer工具调试图像显示
(0.1M)
343
(0.1M)
231
2023-02-08

文档说明:根据我们的经验,在使用 STM32GUI 开发平台做 GUI 开发过程中, 经常会遇到一些问题, 如 LCD 无法显示、显示闪烁、花屏等问题。如果有一个比较方便易用的帧缓存分析工具,就可以很好地帮助 GUI 开发工程师快速定位问题。 我们在之前分享给大家的《LAT1093 STM32GUI_使用 STLINK+stm32gui-pydfb 工具来实时查看图形缓存的图片_v1.0》中介绍了一种使用命令行来查看帧缓存的工具。如果对于命令行比较熟悉,可以基于命令行来读取。帧缓存考虑到更多工程师对于 python

LAT1206 TouchGFX 控件附加Mixin功能的方法介绍
(0.1M)
347
2023-02-03

文档说明:TouchGFX 是专用于 STM32 的图形界面设计软件,可用来低成本开发优秀的图形界面,TouchGFX 现已变的越来越流行。为了帮助客户更加深入地理解和使用TouchGFX ,本文介绍了 TouchGFX Designer 中的 Mixin 功能,从基础示例 Button Example 出发,为文本框控件添加 ClickListener (Mixin 功能中的一项),并对源代码进行简单剖析。期望能帮助客户更深入地理解 STM32 TouchGFX 的相关功能。

LAT1227 TouchGFX 从旧版本升级到新版本的方法
(0.1M)
329
2023-02-03

文档说明:本文档提供了如何从较旧版本的 TouchGFX 升级到较新版本的教程,总结可能发生的常见问题及其各自的解决方案。本文档可能并不详尽,可能在将来进行更新,但旨在解决用户在版本更新时遇到的大多数问题,以确保顺利过渡到最新版本的TouchGFX,从而享受最新版本的 TouchGFX 功能。

LAT1117_STM32GUI_使用TouchGFX二进制翻译Binary_Translation功能实现翻译动态更新
(0.1M)
0
(0.1M)
297
2023-04-19

文档说明:从2013 年第一款侧重于GUI 应用的STM32F429x【内嵌Chrom-ART 图形加速和LTDC 控制器】开始,ST 就提供了STM32MCU + X-Cube-TouchGFX 一站式GUI 开发平台,越来越多的客户使用STM32 + TouchGFX 开发智能手表/智能家居控制面板等嵌入式设备。

LAT1095_TouchGFX下高效绘制圆环的一种方法
(0.1M)
601
2022-04-12

文档说明:通常情况下,MCU 是资源比较受限的处理器。对于STM32G0 系列的MCU 而言, RAM 和Flash 都比较小,比如STM32G070RBT6,这颗MCU 主频最高64MHz,Flash Size 为128K Bytes,SRAM 也只有36K Bytes,实现普通的应用,这些资源是足够的。如果客户的应用需要支持图形界面,使用TouchGFX 图形框架绘制相对复杂的界面的时候,就会存在资源不够的现象。本文记录了 一种折中的方案,使用这种方案,解决了客户使用TouchGFX 进行图形界面的时候出现资源

LAT1212 STM32GUI TouchGFX Transition 屏幕切换功能简介
(0.1M)
378
2023-02-03

文档说明:TouchGFX 是专用于 STM32 的图形界面设计软件,可基于低成本开发优秀的图形界面,而且它已变的越来越流行。为了帮助客户更加深入地理解和使用TouchGFX ,本文针对TouchGFX 屏幕切换的实现方式进行了介绍。通过简析基本例程“Transition Example”的源码,剖析其中切屏实现的流程;并简介了如何使用 TouchGFX Designer 快捷地修改屏幕切换模式,希望能帮助客户更好地使用 TouchGFX 切屏特色与功能。

MPU(5)
  • LAT名称
  • 文档(文件大小)
  • 下载次数
  • 软件包(文件大小)
  • 下载次数
  • 更新时间
  • 分享
LAT6027 MPU的Watchdog在Linux系统下的使用和注意事项
(0.1M)
56
2024-07-26

文档说明:从 OSTL4.0 开始,Linux kernel 阶段和 U-Boot 阶段都是通过 smc 服务接口调用 optee 安 全区域的 Watchdog 来配置和喂狗的,Linux 可以参考 drivers/watchdog/arm_smc_wdt.c 源 码。旧版本的 Watchdog 使用的是 IWDG2,U-Boot 驱动 (drivers/watchdog/stm32mp_wdt.c)和 Linux 驱动(drivers/watchdog/stm32_iwdg.c) 直接调用 Watchdog 的

LAT6024 STM32MP1在Buildroot下如何打patch小结
(0.1M)
88
2024-06-21

文档说明:客户在使用 STM32MP1 平台的过程中,用 Buildroot 制作文件系统,如果直接修改 output/build/目录下的源代码,这样在运行 make clean 的时候,就会将改动全部清除掉。所以,客户想知道如何生成 patch 并编译到文件系统中?

LAT6021 在STM32MP13x系列MPU上裸跑应用程序
(0.1M)
101
2024-05-17

文档说明:STM32MP13x 系列 MPU 是 STM32 Arm®Cortex® MPU 家族中的一部分,它拥有单核Cortex®-A7 核心,支持核心频率 650MHz~1GHz,不仅能够轻松运行 Linux 操作系统,还同时提供官方 HAL 库,用于支持基于 RTOS 或无 OS 的项目方案,即裸跑应用程序。

LAT6022 STM32MP13x低功耗的使用和注意事项
(0.1M)
86
2024-06-21

文档说明:STM32MP13x 系列是一款单核 A7 的 MPU,同时在低功耗模式下有出色的低能耗,官方网站已经提供了一个关于低功耗的文档 AN5565(STM32MP13 lines using low-power modes),但是实际应用中会遇见各种问题,所以针对低功耗应用场景整理这篇文档,主要介绍概念和如何调试一些常见问题。

LAT6020 STM32MP15X核间通信常见问题解析
(0.1M)
102
2024-03-22

文档说明:STM32 STM32MP15X 是基于 CM4+CA7 的异构 SOC,CM4 侧用于实时任务的处理,CA7 侧运行 Linux,负责更加复杂的计算和任务处理,CM4 侧采集到的数据通常会给到 CA7 去做处理,因此必然需要核间通信的机制,核间通信需要硬件和软件的支持

其他(29)
  • LAT名称
  • 文档(文件大小)
  • 下载次数
  • 软件包(文件大小)
  • 下载次数
  • 更新时间
  • 分享
LAT0060 验证STM32F401在STOP模式下的电流
(0.2M)
342
(0.0M)
307
2015-07-28

文档说明:该问题由某客户提出,发生在STM32F401CEY6器件上。据其工程师讲述:在程序中,在进入STOP模式之前他已经将STM32F401 的I/O口做完处理了,但是电流仍然比数据手册写的数值还要大很多,不知道是在哪里消耗了电流。希望能帮他验证一下。

LAT0140 电机控制同步电角度测试说明
(0.5M)
899
2017-03-21

文档说明:在使用ST FOC电机库时,当使用Hall信号作为位置信号时,需要输入同步电角度数据,这个数据根据当前使用电机的特性进行输入,会在每次Hall信号变化时同步电角度,如果角度偏差较大时会影响控制效果,可能带来效率或者电机的震荡,初始测试还是有必要的,本文详细说明测试注意事项以及测试方法。

LAT0056 STM32_STM8硬件平台基本检查
(0.2M)
350
2015-07-28

文档说明:该问题由某客户提出,发生在 STM32F207VET6 器件上。据其工程师讲述:部分芯片无法通过拉低NRST PIN产生复位。该现象一旦上电复位后无法重现。客户的应用中通过外部硬件看门狗定时给NRST PIN送低电平产生复位。正常情况下,MCU会给外部硬件看门狗喂狗。

LAT0032 PCB 漏电引起 LSE 停振
(0.5M)
345
2015-07-28

文档说明:该问题由某客户提出,发生在 STM32F103VCT6 器件上。据其工程师讲述:其产品中设计中,用到了 STM32 的内部 RTC 功能,而 RTC 的时钟由 LSE 提供。在产品的小批量试产中,发现有个别产品开不 了机。进一步测量发现,LSE 没有起振。

LAT0107 STM8L152 IDD电流测量
(0.2M)
371
2015-07-28

文档说明:在STM8L152数据手册中,参数IDD(RUN)的典型值是1.97mA。客户实际测试2.7mA ,因此产生疑问。

LAT0047 潮湿环境下不工作
(0.1M)
313
2015-07-28

文档说明:该问题由某客户提出,发生在 STM32F103VBT6 器件上。据其工程师讲述:其产品中使用了 STM32,已批量生产。据其客户反馈,其产品在雨天等潮湿的环境下,会出现不工作的情况。将客户退回的产品放在模拟的潮湿环境下试验,的确重现不工作的现象。将产品外的壳拆开后,用热风枪逐个吹干每个元器件。当将 STM32及周边的几个电阻、电容元件吹干后重新上电时,其产品可以恢复工作。进一步测量发现,在潮湿的环境下,STM32 的 HSE 没有振荡输出。由此,定位出 STM32 在潮湿的环境下失效,导致了其产品的不工作

LAT0042 关闭电源还在运行
(0.2M)
327
2015-07-28

文档说明:该问题由某客户提出,发生在 STM32F103VBT6 器件上。据其工程师讲述:其产品中使用了 STM32 作为主控单元,负责系统的管理。在对产品测试时发现了一个奇怪的现象:在关闭电源后,STM32 仍然能够对 UART 上输入的信息做出回应。

LAT0035 跳不出的while 循环
(0.4M)
329
2015-07-28

文档说明:该问题由某客户提出,发生在 STM32F103VBT6 器件上。据其工程师讲述:在为 STM32 调试软件过程中,遇到了一个怪现象:有如表(一)所示的一段程序中,KeyIn 是一个全局变量。当有按键按下时,键盘的中断服务程序会将对应的键值放入其中,当按键释放后,键盘中断服务程序则把 RESET 值放入该变量。行(1)的条件语句在主程序中,检测有无按键按下,并处理。行(2)则是等待按键释放。调试时,在行(1)和行(2)处各设置一个断点,然后全速运行程序。当程序停在行(1)时按下按键,继续全速运行程序。当程序

LAT0218 STM32 RTC不更新原因分析
(0.1M)
371
2016-06-28

文档说明:客户在使用STM32L4 RTC功能的时候,调试时发现日历不再更新,而通过IAR跟踪RTC相关寄存器,同样发现没有更新,奇怪的是,在单步运行时,寄存器是可以更新的。

LAT0235 一种计算CPU使用率的方法及其实现原理
(0.4M)
360
2016-07-14

文档说明:出于性能方面的考虑,有的时候,我们希望知道CPU的使用率为多少,进而判断此CPU的负载情况和对于当前运行环境是否足够“胜任”。本文将介绍一种计算CPU占有率的方法以及其实现原理。

LAT0238 P-NUCLEO-IHM001电机开发板串口调试指南
(0.6M)
647
2016-07-14

文档说明:P-NUCLEO-IHM001 是一款功能强大,且小巧的针对永磁同步电机的开发板。本文介绍如何通过该套件上的虚拟串口来实现串口调试电机。

LAT0263 STM32 库函数性能对比
(0.2M)
405
2016-11-17

文档说明:ST已经推出了三种库函数,用以方便客户快速开发STM32系列的MCU。从最早的标准外设驱动库,到后来的Cube HAL,再到 Cube LL,还有直接写寄存器。这几种库的代码效率到底如何呢?本文将针对这个问题进行分析和对比,最后提供对比数据供大家参考。

LAT0272 一种在IAR中实现通过将程序在SRAM中调试的方法
(0.2M)
282
(2.0M)
323
2016-11-18

文档说明:此问题由客户工程师提出,客户在使用STM32F411 芯片的时候,希望将程序放在SRAM 里面调试来评估下相应的功耗。

LAT0292 STM32+BLE通过Notification与Android应用程序通信的例程
(0.7M)
342
2017-03-21

文档说明:BLE通信中,常见的操作有请求、响应、命令、指示、通知、确认,可根据不同的操作完成不同的应用功能设计。

LAT0100 使用STM32实现锂电池充电器
(0.1M)
344
(0.1M)
360
2017-03-21

文档说明:在很多便携式消费类设备上,通常需要通过USB口对设备自带的锂电池充电。如果使用专用的电池管理芯片,不仅增加了产品成本,也增大了PCB的面积。所以客户希望在已有的主芯片STM32上同时实 现对锂电池的充电管理。

LAT0775 STM32WB BLE应用低功耗设计_v1.0.pdf
(2.1M)
413
2021-04-16

文档说明:功耗是物联网应用当中非常关键的因素,在开发的早期都会对功耗进行评估和测试。那么,如何使用ST 提供的工具对动态功耗进行测量呢?针对BLE 应用应当如何进行低功耗的设计呢?本篇跟大家一起聊聊该话题。

LAT0055 修改M24SRxx的GPO属性配置
(0.6M)
317
2017-03-21

文档说明:有客户反映,调试M24SR04-Y设置GPO时,对文件0xE101进行鉴权(即验证密码)时返回0x69 0x81。是通过I2C接口发送和接收报文。

LAT0274 STM32 DFSDM测量温度应用
(1.3M)
335
(3.3M)
312
2017-03-21

文档说明:STM32L4集成了DFSDM数字滤波模块,配合Σ-Δ器件使用,可进行高精度、高速率的AD测量。

LAT0104 CR95HF 的初始化步骤
(0.1M)
354
2017-03-21

文档说明:某客户工程师在某型号新产品的设计中,使用了CR95HF。工程师无法找到关于CR95HF上电初始化的具体步骤说明。结论:CR95HF上电后进入Power up状态,如果此时MCU无法与CR95HF通信或CR95HF的外部晶体没有起振,那么原因就在于MCU没有给CR95HF提供一个IRQ_In。

LAT0282 M95xxx EEPROM介绍
(1.2M)
325
2017-03-21

文档说明:以带标识页的M95M01-DF EEPROM为例,介绍M95xxx系列EEPROM,包括内存组织、SPI接口时序、指令、读写时间、供电、写保护以及出厂参数等等。

LAT0344 M95xxx EEPROM写保护配置
(0.6M)
321
2017-03-24

文档说明:以带标识页的M95M01-DF EEPROM为例,介绍M95xxx系列EEPROM写保护和配置方法。

LAT0360 理解与应用MPU的特权与用户模式
(0.4M)
336
2017-06-07

文档说明:STM32系列支持MPU内存保护单元,可用来设定内存的属性和访问权限。MPU的应用笔记提到,将属性寄存器(MPU_RASR)配置成某一个值,在特权(Privileged permissions)和用户模式(Unprivileged permissions)的访问许可是不同的,甚至可将用户模式的权限设置成不可访问。那么,什么是MPU的特权模式和用户模式呢? 接下来我们在这篇文章来理解这些名词,并讨论在STM32 MCU代码中如何使用内存保护单元MPU的特权与用户模式。

LAT0365 用于电机控制单电阻采样PWM变形信号产生
(0.4M)
927
(0.0M)
294
2017-07-06

文档说明:电机控制单电阻采样机制是在一个PWM波形内采集两相电流ADC数据,但某些扇区边界条件下只能获得一路电流ADC数据, 需要对PWM波形进行变形用于构造电流采样区域。

LAT0370 X_CUBE_SPN7程序电机启动抖动问题
(0.3M)
351
2017-07-06

文档说明:如果客户从ST官网上下载了X_CUBE_SPN7的BLDC电机控制程序,并且使用Keil做为编译工具,那么在运行电机程序时就会遇到电机无法正常启动问题,并且无法进行程序调试,本文旨在说明这个问题所在,并给出调整方法。

LAT0362 低功耗模式唤醒时间测量
(0.5M)
348
2017-07-06

文档说明:某客户在使用我们的STM32L073芯片做项目的开发,据他们的工程师反映在测量低功耗模式下的唤醒时间,他们测试得到的数据与数据手册中列出的结果不符合,而且差别很大,并且测试了很多片都是这个问题。想咨询我们什么样的测试方法能够得到一个符合手册规范的数值。

LAT0385 ST FOC4.3库关于STM32F30x系列ICS采样代码修改
(0.2M)
342
(0.1M)
311
2017-11-01

文档说明:客户在使用ST FOC4.3库文件控制电机过程中,当使用了STM32F30x芯片时,如果使用的是ICS(Isolated Current Sensor)采样电流信号时会遇到无法编译通过报错问题,本文用以说明如何修正这个问题。

LAT0457 如何用STVP 命令行模式对STM8进行批量烧写
(0.1M)
327
2019-08-05

文档说明:本文说明一种使用STVP_CmdLine 对STM8X 系列产品进行烧写的方法,着重介绍如何通过STVP_CmdLine 及ST-LINK进行多个芯片的循序烧写,帮助各户在生产线构建批量烧写的方案

LAT0738_如何在OpenMV生态系统中集成STM32Cube.AI生成的代码
(0.1M)
1557
2020-07-27

文档说明:本教程将引导您将自己的神经网络集成到 OpenMV 环境中。 OpenMV开源项目提供的源代码,使您可在STM32Cube.AI启用的状态下编译OpenMV H7 固件的源代码

LAT1075 STM32U5 LPBAM模式介绍
(0.1M)
683
2022-04-12

文档说明:LPBAM 全称为low-power background autonomous mode,系统时钟可以在进入低功耗模式之后打开和关闭,可以触发DMA 请求,其可以在stop0,stop1,stop2 模式下使用。在stop 模式下除了LSI 和LSE 以外其他时钟都会关闭,但MSIK 和HSI16 可以被临时使能,以支持DMA 传输,这就是LPBAM 的特点。 另外,LPBAM 需要DMA 来进行配合,U5 系列的DMA 有Linked List 功能,也就是说DMA 可以完成链表设计好的任务。在初始

功能安全(11)
  • LAT名称
  • 文档(文件大小)
  • 下载次数
  • 软件包(文件大小)
  • 下载次数
  • 更新时间
  • 分享
LAT1347_基于STM32CubeIDE移植ClassB 4.0
(0.1M)
339
2024-01-03

文档说明:本文以 NUCLEO-G031K8 为参考板,在 STM32CubeIDE 编译器环境下,介绍如何一步步移植 ClassB 4.0,移植 ClassB 4.0,你需要具备 STM32 开发的基本知识,这些基本知识包含但不限于这些,如 STM32CubeMX 的使用,STM32CubeProgrammer 的使用,编译器 STM32CubeIDE 的使用,熟悉 STM32 MCU,熟悉 STM32 软件开发等。如果对上述基本知识不了解,请在 STM32 中文官方网站 https://www.stmcu.co

LAT1347 基于 STM32CubeIDE 移植 ClassB 4.0
2024-01-03

文档说明:本文以 NUCLEO-G031K8 为参考板,在 STM32CubeIDE 编译器环境下,介绍如何一步步移植 ClassB 4.0,移植 ClassB 4.0,你需要具备 STM32 开发的基本知识,这些基本知识包含但不限于这些,如 STM32CubeMX 的使用,STM32CubeProgrammer 的使用,编译器 STM32CubeIDE 的使用,熟悉 STM32 MCU,熟悉 STM32 软件开发等。如果对上述基本知识不了解,请在 STM32 中文官方网站 https://www.stmcu.co

LAT1182 为功能安全应用增加 Bootloader 需要注意的事项
(0.1M)
509
2022-09-27

文档说明:越来越多的应用为了解决出厂后产品软件故障修复和应用升级的问题,增加了 Bootloader 程序,这其中也有不少功能安全的应用。ST 提供的功能安全软件的例程都是从 0x08000000 地址启动的,所以这就需要用户自己做一些修改,将应用程序放到指定位置并通过 Bootloader 程序进行跳转。其实接下来要介绍的很大一部分和功能安全检测代码不直接相关,但因为也给我们的用户或多或少带来了一些困扰,所以在此做一个总结。

LAT1086 STM32U5 带OEM Key保护的RDP降级
(0.1M)
409
2022-02-21

文档说明:STM32U5在芯片生命周期管理方面在STM32L5的基础做了进一步的改进,引入了OEM Key机制,使得RDP的级别状态转换能够通过OEM设置的password进行保护。

LAT1098 STM32CRC使用详解
(0.1M)
496
2022-01-24

文档说明:在STM32 众多外设中,CRC 是一个不起眼的小外设,以至于在使用的时候会忽略 掉。最近在学习Class B 的时候,CRC 是Class B 应用需要用到的外设,用来生成ROM校验码,在阅读Class B 相关文档CRC 的部分的时候,我出现了理解上的一些错误,由此可见,CRC 外设虽小,理解其细节,也是需要时间的,本文的目的是通过理解CRC 外设的使用,用文字的方式记录下来,给后来使用者提供参考。

如何根据应用需求调整STM32L5的memory partition
(0.0M)
272
2020-06-19

文档说明:STM32L5在trustzone使能情况下使用,需要用户根据应用要求,规划好Flash和 SRAM上的安全区域和非安全区域。由于trustzone环境下CPU对存储区访问规则的 限制,这套规划方案会涉及到几方面的设置

LAT0723 X-Cube-ClassB代码移植
(0.1M)
464
2019-12-23

文档说明:在本文中,我将以STM32F207Nucleo板为例,用CubeMX新建一个简单工程,然后将ClassB的功能添加到该工程中。

LAT0685 如何在IAR和KEIL中计算CRC值
(0.8M)
408
2019-12-23

文档说明:这里整理了在Flash校验这一块遇到的常见问题,并基于IAR,KEIL这两种IDE介绍如何配置FLASH的CRC计算的方法。

LAT1181 STM32H7 RAMECC功能及应用
(0.1M)
522
2022-08-08

文档说明:STM32H7 系列 MCU 的 Flash,SRAM 和 CACHE 都支持 ECC 的功能。在本文中,主要介绍 SRAM ECC 这部分功能以及应用中的注意事项。

LAT1196 STM32 SRAM奇偶校验功能及应用
(0.1M)
505
2022-09-23

文档说明:本文档介绍了STM32 SRAM 奇偶校验功能以及如何使用这一功能。

LAT1257 建立基于STM32CubeIDE的ClassB工程
(0.1M)
456
(0.1M)
303
2023-02-08

文档说明:大家都知道 ST 的 ClassB 功能安全软件设计包是免费的,也有众多客户基于 STM32CubeIDE 免费的 IDE 进行开发,本文档将展示如何轻松的实现 ClassB 在 STM32CubeIDE 上的移植。

存储器(30)
  • LAT名称
  • 文档(文件大小)
  • 下载次数
  • 软件包(文件大小)
  • 下载次数
  • 更新时间
  • 分享
LAT1433 如何操作BlueNRG LPLPS芯片内的OTP区域
(0.1M)
57
2024-07-26

文档说明:当用户需要在其产品设计中使用到 BlueNRG LP/LPS 等系列芯片内置的 OTP 来存储 其客制数据的时候,可以采用本文档所述方法实现。 用户在访问 OTP 时,必须保证芯片处于 UART bootloader 模式

LAT0248 STM32F2高低温死机问题
(0.3M)
415
2016-07-14

文档说明:本篇讨论了 一个STM32F2在用户产品进行高低温测试死机的例子。

LAT0102 使用STVP实现对STM32L1系列EEPROM预置数据
(0.4M)
403
2015-07-21

文档说明:某客户工程师在其产品的设计中,使用了 STM32L152RBT6。该工程师打算在烧写程序之前,往 STM32L100 里边的 EEPROM 预置一些数据,没想到什么好的办法。他在网上搜了一下其他人的做法,发现大家基本上都是使用程序代码的方式,在第一次运行程序的时候,使用程序对 EEPROM 进行编程达到预置的目的。他觉得这不是最适合他的方法,于是请教是否还有其他更方便的方法。

LAT0091 STM32F429使用外扩SDRAM运行程序的方法
(0.2M)
403
(4.4M)
329
2015-07-21

文档说明:客户反映使用外扩SDRAM运行程序(使用链接器将code存放在SDRAM中,与编译器无关,采用GCC或者IAR都有这个问题)出错,Hard Fault发生。

LAT0016 对Flash 操作导致USART 接收丢数据
(0.2M)
444
2015-07-21

文档说明:该问题客户提出,发生在STM32F103VDT6 器件上。据其工程师讲述:在其产品设计中,使用了STM32 片上Flash 模拟了一个EEPROM 的功能,用于存贮数据。在软件调试时,发现开启此功能,会影响到USART 通信,导致偶尔发生个别数据接收不到的现象。

LAT0109 FreeRTOS RAM使用情况及优化方法
(0.4M)
462
2015-07-21

文档说明:嵌入式设计中使用RTOS必然会带来额外的RAM消耗,然而许多初次接触RTOS的工程师并不清楚如何评估RAM的消耗量。这篇文档以FreeRTOS为例,介绍评估RAM使用情况的一般方法,并给出在FreeRTOS下优化RAM使用的方法,也由衷的期望读者在使用其他RTOS时,可以通过相似的思路来解决问题。

LAT0165 IAR下如何让程序在RAM中运行
(0.3M)
373
(1.5M)
298
2015-07-21

文档说明:有时候我们需要将一部分程序从FLASH拷贝到RAM中运行,以提高程序运行的速度。本文基于IAR Embedded Workbench列出了一些方法,可以在系统启动时自动从FLASH中将这部分程序拷贝到RAM中运行。本文中所有例子都是在IAR v7.2下,基于STM32F334完成的。

LAT0040 干扰环境下 Flash 数据丢失
(0.3M)
421
2015-07-21

文档说明:该问题由某客户提出,发生在 STM32F103VBT6 器件上。据其工程师讲述:其产品中使用了 STM32,已批量生产。其部分产品在交予客户使用一段时间之后出现故障。其工程师在对故障产品进行分析时发现,STM32 的 Flash 中部分数据丢失,原数据皆被0xFF 取代。丢失数据的 Flash 区间的地址不固定,大小也不固定,呈一定随机性。该现象只在车载环境下发生,而在实验室无法复现。

LAT0045 使用外部 SRAM 导致死机
(0.5M)
375
2015-07-21

文档说明:该问题由某客户提出,发生在 STM32F407IGT6 器件上。据其工程师讲述:为了满足软件对大容量内存的需求,将软件中的部变量从内部 SRAM 转移到片外的 SRAM当中。而这一改变,导致该软件不能运行,每次复位后,随即便发生死机。在此之前,对 FSMC 的初化代码,以及片外 SRAM 的读写匀做过测试,并确认是没有问题的。

LAT0046 SRAM 中的数据丢失
(0.2M)
361
2015-07-21

文档说明:该问题由某客户提出,发生在 STM32F103VDT6 器件上。据其工程师讲述:在该公司的某型号产品的设 计中用到了 STM32F103VDT6 器件,而其软件的设计采用了 IAP+APP 的架构。IAP 是一段 BOOT 程序, 负责对硬件进行初始化以及在接到相关指令的情况下更新 APP 程序,而 APP 程序则负责对常规业务 处理。在 STM32 启动后,IAP 首先运行。在初始化硬件之后,检查是否有更新 APP 的指令,如果 有,则更新 APP,如果没有,则跳转到 APP。APP 对常规业务进行处理

LAT0027 使用 CCM 导致以太网通信失败
(0.4M)
401
2015-07-26

文档说明:该问题由某客户提出,发生在STM32F407IGT6 器件上。据其工程师讲述:在其产品设计中使用了STM32 的以太网接口进行通信。在软件最初的调试中,该接口工作正常。后来为了满足软件对内存容量的需求,启用了STM32 的CCM 存贮器,但启用后发现以太网接口不能通信。

LAT0133 RAM上电后初始值问题
(0.2M)
388
2015-12-01

文档说明:客户反映,某产品试生产时出现问题,故障率在10%左右。该故障可以复现,并且将芯片(MCU)更换到新的电路板也无法解决。因此,客户怀疑是芯片出现质量问题。本篇LAT的内容简介了一个由RAM上电后初始值引起的问题。

LAT0145 STemWin驱动移植-FLASH_PSRAM(MCP)接口驱动设计
(0.4M)
457
2016-01-06

文档说明:在合计智能穿戴应用的时候,为了更好的用户体验和丰富的人机交互界面,需要更多的存储(RAM 和FLASH)来存储自定义的图片资源 ;由于可穿戴类的产品体积都非常小,因此FLASH&PSRAM;集成在一起的MCP 存储芯片是一个不错的选择。我们的STM32 FMC 外设是可以支持MCP 存储芯片的,而且只需要简单的配置就可以实现MCP 的访问。

LAT0200 LwIP内存配置
(0.3M)
463
2016-03-25

文档说明:LwIP在lwipopts.h和opt.h头文件中提供了多个配置选项。用户可以根据不同的性能需求和不同应用的内存限制对协议栈用到的内存配置进行调节。Opt.h头文件中包括协议使能和设置,内存设置,调试选项等等。而Lwipopts.h头文件中集合了opt.h中一些常常需要改动的部分。一般情况下用户对lwipopts.h头文件进行修改就可以了。不管是对lwipopts.h还是opt.h进行修改,都必须保证是在已经对你所改动的内容足够的了解的情况下进行,所做的改动是正确的,否则有可能导致协议栈不能正常工作,或者

LAT0244 stm32缓存对齐的问题
(0.3M)
412
2016-08-09

文档说明:在我们对STM32进行编程的时候,都会用到变量,因为我们的MCU是32位的,所以在申请变量的时候,就会存在变量长度不一致,需要对齐的问题.这个变量长度对齐的问题,小则可以只是影响代码执行的效率,大则会出现系统hard-fault的问题.下面我们将详细的解说这个问题.

LAT0279 使用STM32F427的CCM RAM时遇到的问题
(0.4M)
418
2016-12-30

文档说明:有客户在使用CCM RAM的过程中遇到了问题。客户用的是STM32F427芯片,程序将CSTACK放在CCM RAM中,结果测试过一段时间的板子都出现了不能正常运行的情况。这个现象一度让我们怀疑是否是CCM RAM在测试过程中遭到了破坏,也导致我们在解决问题的道路上浪费了不少时间。事实证明我们的CCM RAM并没有那么脆弱,而解决问题时多从多个角度进行验证,不要放过所有的出问题的可能性也很重要。出问题的原因我会在本文中进行解释。但在具体讨论这个问题之前,我想先介绍一下STM32F427这款芯片上的CCM

LAT0251 FMC和QSPI引脚冲突的解决
(0.1M)
451
2017-03-21

文档说明:STM32F769AI 通过STM32CubeMX 进行外设配置时无法同时使能QSPI(Single Bank with Quad SPI Line)和FMC(Mux Mode 128Mb Nor Flash,字宽16 位)。初步判断由引脚冲突引起,但由于产品尺寸的限定,只能使用WLSCP封装的MCU,不能通过使用更大封装的MCU 来解决问题。结论:由于WLSCP 封装的STM32F769AI 无法通过不同的GPIO 映射出FMC_A23 和QUADSPI_BK1_IO2,因此 STM32CubeMX无法

LAT0376 利用QuadSPI外扩串行NOR Flash的实现
(1.2M)
432
2017-09-22

文档说明:STM32提供了灵活多样的外扩存储器访问实现。本文中,介绍如何利用QSPI (QuadSPI) 外扩串行NOR Flash存储器。首先对QSPI接口功能特性进行介绍,然后分别介绍硬件设计和软件开发。并基于STM32CubeMX,提供访问MICRON N25Q128A13EF840F的实现参考。

LAT0575 STM32F412擦除内部FLASH时间过长导致IWDG异常复位
(0.6M)
427
2019-01-07

文档说明:客户反馈在使用STM32F412的时候,擦除sector 8~11发现时间过长,从而导致意外触发IWDG复位。

LAT0541 基于STM32CubeMX开发U盘访问应用
(1.6M)
597
2019-05-21

文档说明:一些应用中,涉及到对存储设备的数据访问,例如uSD卡、U盘。具备USB OTG控制器的STM32,可以实现对U盘访问的支持。本文介绍STM32对于U盘访问的硬件/软件实现。介绍如何利用STM32CubeMX,一步一步实现STM32访问U盘。仅需要简单的几个步骤, 实现U盘访问的应用开发。

LAT0826 STM32G0快速编程要点_v1.0.pdf
(0.3M)
484
2021-01-25

文档说明:在一些新的 STM32 系列中,比如 STM32L4、STM32G0、STM32G4 等,除了 Flash 标准编程之外,还可以支持 Flash 的快 速编程,那么对于 STM32G0 来说,在使用快速编程时,有哪些需要注意的地方呢?

LAT1071 STM32L462REI6 SDMMC通过DMA方式对SD卡不能进行连续读写操作_v1.0
(0.1M)
466
(0.1M)
274
2022-02-21

文档说明:某客户在项目开发中用到STM32L462 的SDMMC 接口去进行SD 卡的读写,发现用SDMMC中断、 Polling 查询的方式都可以进行连续的读写交替循环操作,但是用DMA 的方式进行该操作时,发现不能进行多次的读写。

LAT1303 不同编译器利用X-CUBE-DISPLAY API生成外部Flash Loader的方法
(0.1M)
310
2024-01-03

文档说明:本文档就是根据 X-CUBE-DISPLAY 3.0 所提供的 Flash Loader 工程,以 NUCLEO-STM32G474+GFX01M2 开发板为例,介绍了 STM32CubeIDE、KEIL、IAR 等不同编译器利用 X-CUBE-DISPLAY 所提供的 API 来生成外部 Flash Loader 的方法。

LAT0114 在IAR 6.5下如何把数据放在Flash指定位置
(0.2M)
433
2015-07-21

文档说明:当客户遇到存储小量的数据,同时数据写的频率比较低的情况下。从成本角度希望省掉外置 EEPROM, STM32 提供了 Backup SRAM(4K)和 Flash 模拟 EEPROM 两种方案来解决该问题。但是,Backup SRAM 需要提供备用电源,Flash 模拟 EEPROM 又比较浪费空间(存放复杂的结构体数据也不方便)。 如果数据擦写频率较低(Flash 擦写次数有限),可以考虑直接将数据存放在 Flash 中。本文提供了如 何在 IAR6.5 实现该操作。

LAT1374 RT-Thread环境下Flash错误标志问题解析
(0.1M)
115
2024-04-07

文档说明:客户在使用 STM32G474RE 进行产品开发的时候,操作系统软件使用了 RT-Thread5.0,同时由于要做 ClassB 认证,所以在 RT-Thread 系统上,移植了 ClassB 2-3-0 版本安全库。用户程序另外一个功能是固件升级,在调试固件升级程序的过程中,发现一旦执行了 ClassB 的启动自检,就会出现固件升级失败。调试发现,固件升级失败的原因是写 Flash 的时候发现 Flash 状态寄存器的错误标志被置位,导致 Flash 写操作失败。客户根据现此象反馈 ClassB 的自检

LAT1151 程序运行在 STM32H750 的外扩 FLASH 上两小时后死机
(0.1M)
534
2022-10-19

文档说明:客户使用 STM32H750VBT6,通过 QSPI 外扩了一个 4M 的 NOR FLASH,采用 memory map 模式。当程序跳转运行到外设 FLASH 后,大约两个小时后程序死机。客户使用的 IDE 是 KEIL,此问题可以固定重现。 在 KEIL 调试模式下重现问题时,通过多次观察发现,程序死的位置总体上会停在两个位置,并不是同一个位置。一个是 TIM15函数的入口;另一个是进入中断函数后的一个赋值语句。

LAT1150 STM32G4 应用程序与 Option Bytes 同时烧录问题
(0.1M)
519
2022-10-19

文档说明:客户使用 STM32G474 系列芯片,在烧录应用程序的同时要对 Option Bytes 中的 DBANK进行修改,采用 STlink Utility 或是 CubeProgrammer 工具进行操作,并希望整个过程只用一次烧录动作就完成,发现烧录的应用程序无法运行。

LAT1180 STM32L4R9 的 QuadSPI Flash 通讯速率不理想
(0.1M)
431
2023-02-03

文档说明:本技术文档主要解决客户反应 STM32L4R9 同 QSPI Flash 通讯,测出来的读取速率为 10MB/s, 和理论值相差较大。

LAT1340 STM32H5读取温度传感器校准值时进HardFault的原因分析
(0.1M)
310
2024-01-03

文档说明:有客户反馈,在使用 STM32H5 读取温度传感器校准值地址时,会进入 HardFault,而在其他系列芯片中读取这个参数时并没有此现象。在 NUCLEO-H563ZI 开发板上去复现此问题,发现只有开启 ICACHE 后才会复现,初步验证说明进入 HardFault 与 ICACHE 相关,如果直接关闭ICACHE 虽然可以解决进入 HardFault 的问题,但势必会影响代码执行的效率。所以,我们希望能找到一种更好的方式去处理此问题。

LAT1063 用STM32CUBEMX生成STM32H735 LWIP PING 不成功_v1.0
(0.1M)
561
2022-01-18

文档说明:我们在做基于 STM32芯片开发LWIP功功能时,往往会用到PING命令做基本的功能性验证测试,这里就聊聊相关应用话题。

系统外设(27)
  • LAT名称
  • 文档(文件大小)
  • 下载次数
  • 软件包(文件大小)
  • 下载次数
  • 更新时间
  • 分享
LAT1414 用DMA方式实现PWM时序保护功能
(0.1M)
62
2024-07-26

文档说明:在 STM32 系列芯片中有着丰富的 DMA 资源,这些 DMA 可以连接内存-内存,内存-外 设,外设-内存。充分灵活应用 DMA 可以实现更复杂的软件功能,并且可以降低 MCU 负 载强度。尤其在 CPU 较为忙碌时,DMA 的参与往往可以保障高效的响应及实现。

LAT0551 STM32H7 DMA传输异常案例分析
(0.9M)
451
2018-11-15

文档说明:利用 ST 提供的辅助开发工具 STM32CubeMX,可以快速开发 STM32 应用。在本文中讨论的 ADC 应用,同样是建立在 STM32CubeMX 生成工程的基础上。具体为在 STM32H743ZI 上,利用 DMA 自动实现 ADC 数据周期采集和转移,在采集指 定数量的采样值后产生中断, 对数据进行处理。

LAT0054 STM32L053的GPIO翻转速度的测试
(1.1M)
375
2015-07-28

文档说明:测试STM32L053芯片在系统时钟8Mhz的情况下,其GPIO电平的翻转速度。

LAT0075 STM32F2中DMA的FIFO模式
(0.3M)
375
2015-07-28

文档说明:该问题由某客户提出,发生在 STM32F205VET6 器件上。据其工程师讲述:使用STM32F205 的DMA 对USART 的接收进行处理的时候,发现如下现象:如果发送端发送10个字节,程序可以正常接收到数据,通过DMA_GetCurrDataCounter(USARTx_RX_DMA_STREAM)获取的数据长度以及程序中数据接收缓冲区中的数据均是正常的;但是如果发送端只发送9个字节,程序就无法正常接收到数据,通过DMA_GetCurrDataCounter(USARTx_RX_DMA_STREAM

LAT0051 STM32F4xx PCROP应用
(0.9M)
315
(13.4M)
308
2015-07-28

文档说明:Proprietary Code Read Out Protection (PCROP) ----- 专有代码读取保护 现在产品开发过程中,二次开发将会越来越多,设计公司开发出自己产品后交给终端客户进行二次功能或补充开发,简称二次开发,设计公司某些程序代码不希望公开给终端客户,但同时又希望部分函 数功能可以给终端客户使用,这时就需要有一种专有代码保护机制供客户使用,STM32F4xx 芯片中的 PCROP 可以解决类似问题。

LAT0149 PCROP区域函数无法被调用的问题与解决
(0.2M)
331
2015-09-28

文档说明:PCROP 为Proprietary code readout protection 的缩写,也就是说这是一个专有代码读出保护的功能。与RDP 对整片Flash读保护不同的是,它只是针对Flash 的某些特定区域进行代码的读写保护。所以它可以被用来保护一些IP 代码,方便进行二次开发。它存在于许多STM32 的型号中,如STM32F401、STM32F411、STM32F427/437、STM32F429/439、STM32F446、STM32F469/479,STM32L476/486,等等。对于PCR

LAT0144 关于AN4065中STM32F0 IAP升级后的外部中断不响应问题
(0.2M)
430
2015-12-01

文档说明:客户在使用STM32F051C8T6的IAP功能时,发现有些端口(比如PB端口)的外部中断端口没有反应,但是有些还是可以的(比如PA端口),不知是何原因,客户也验证过应用代码在没有使用IAP功能时是没有问题的。客户是参考了我们的应用笔记AN4065来编写这部分代码.

LAT0145 STemWin驱动移植-FLASH_PSRAM(MCP)接口驱动设计
(0.4M)
401
2016-01-06

文档说明:在合计智能穿戴应用的时候,为了更好的用户体验和丰富的人机交互界面,需要更多的存储(RAM 和FLASH)来存储自定义的图片资源 ;由于可穿戴类的产品体积都非常小,因此FLASH&PSRAM;集成在一起的MCP 存储芯片是一个不错的选择。我们的STM32 FMC 外设是可以支持MCP 存储芯片的,而且只需要简单的配置就可以实现MCP 的访问。

LAT0146 如何用LSE校准STM32F4内部RC振荡器
(0.2M)
334
(5.1M)
353
2016-01-06

文档说明:此问题由客户提出,客户在使用STM32F411 开发产品的时候,采用的是HIS 作为主时钟,同时使用了UART 与其他MCU 进行异步通信.客户发现部分产品UART 不能正常通信.

LAT0201 EXTI重复配置两次导致误触发中断的问题
(0.1M)
361
2016-03-31

文档说明:某客户在其产品的设计中,使用了STM32F302CCT6。客户在开发过程中,其所配置的EXTI 外部中断,在外部没有中断信号的情况下,上电后运行程序,总是会进入EXTI 中断程序一次。

LAT0205 如何将coremark程序移植到STM32上
(0.1M)
32
2016-05-05

文档说明:本文将一步步来介绍如何将下载的CoreMark测试代码移植到STM32MCU上进行测试。

LAT0291 时钟安全系统的应用(LSE篇)
(0.2M)
344
(1.5M)
310
2016-12-30

文档说明:某公司用ST的STM32L476在水表上,在开启时钟安全系统(CSS)之后,发现MCU重启后,LSE无**常启动,通过示波器看,发现LSE已经正常起振。这是由于他们对CSS的了解不够,应用错误导致,下面我们来深入了解一下MCU内部的时钟安全系统。

LAT0375 利用DFSDM开发PDM麦克风应用介绍
(1.3M)
402
2017-08-15

文档说明:STM32提供了丰富的音频应用外设,并得益于灵活高效的内部架构,可以支持广泛的音频应用。本文中,在简单介绍音频采集的背景知识后,从应用需求出发,确定麦克风的选用。然后,描述了STM32内部DFSDM (Digital Filter for Sigma-Delta Modulator)在PDM麦克风采集中应用。最后逐步介绍如何利用STM32CubeMX进行DFSDM设计开发,实现PDM麦克风声音采集。

LAT1096 ADC 交错工作方式碰到的问题与解决方法
(0.1M)
418
2022-02-21

文档说明:在G4 中存在最多5 个ADC 转换单元,其中ADC1/2 和ADC3/4 可以工作在双路模式下(Dual mode),双路模式的交错工作方式可以提高ADC 的采样速率,实现采样率翻倍。客户在使用交错工作方式时,发现了一些问题。本文将对出现的问题进行解释,并给出解决办法。

LAT1307 同型号STM32的IWDG初始化差异的一致性配置
(0.1M)
78
2024-02-22

文档说明:最近有客户在 STM32H725 上使用 STM32 SBSFU 软件包。客户发现它移植的 SBSFU在开发时能正常工作,但是部署在现场其他同型号的芯片上,却出现了一部分产品启动不正常的问题。经过将有问题的芯片和开发板带回实验室进行定位,客户发现是由于 SBSFU使用了 IWDG,而 IWDG 即使在同一型号的芯片上,也有着不同的表现。有的能初始化成功,有的却初始化失败。客户担心这是否是芯片所导致的问题。其实,这是一个软件配置的问题,在 HAL 库代码的注释中有着清晰的描述。本文就这一问题给出详细的解释并

LAT1043 一个软件引起的LSE驱动不良的问题
(0.1M)
404
2022-02-22

文档说明:本文档介绍了在设置LSE 的驱动能力上,软件上需要注意的地方。

LAT1036 如何开发位置无关的STM32应用
(0.1M)
408
2022-02-22

文档说明:本文档介绍了使用STM32CubeIDE 在编译时通过设置某个编译选项,让STM32 应用与存储位置无关.

LAT1028 使用HSE测量LSE精度DMA方式
(0.1M)
434
2022-02-22

文档说明:在使用STM32U5 时,想对外部LSE 的起振情况和精度进行监测,使用HSE 为时钟基准,对LSE 进行测量。

LAT1041 STM32G0 复位后死机
(0.1M)
446
(0.1M)
289
2022-02-22

文档说明:有客户反映,STM32G071RBT6 在使用STM32CubeProgrammer 烧录完程序后只能 运行一次,复位后,程序无法运行,如果掉电后重新上电,程序恢复正常。

LAT1305 使用STM32 TT类型IO的注意事项
(0.1M)
290
2023-08-17

文档说明:在STM32系列MCU中, 除了一些特殊管脚外,绝大多数管脚都可以分类为FT(兼容 5V 信号)或TT(兼容 3V3信号)类型的IO,由于MCU内部设计的不同, TT IO相比5V IO有更多的限制,下面我们将予以说明。

LAT1271 待机模式被意外唤醒之原因分析
(0.1M)
244
2023-12-15

文档说明:客户在项目中使用 STM32G0B1, 由产品内置电池供电. 客户在程序中有使用到 standby 模式, 通过 WKUP2(PC13), WKUP6 引脚唤醒. 除此之外并没有其它唤醒源. 代码中有使用到 RTC,但只是用来记录日期和时间, 并没有参与 standby 的唤醒.

LAT0162 如何在IAR中配置CRC参数
(0.3M)
311
(5.1M)
278
2015-06-13

文档说明:EWARM从v5.5版本之后开始支持STM32芯片的CRC计算。前面所说的计算整个FLASH的CRC校验值并保存在FLASH末尾的过程,可以在IAR中完成。通过配置EWARM的CRC计算参数,自动对整个FLASH空间进行CRC计算,并将计算结果放到FLASH的末尾。本文中将介绍的就是如何配置IAR的CRC参数,使之与STM32的CRC硬件模块保持一致。本文中的例子都基于STM32F072进行。

LAT1059 STM32 Cordic 运算速度评估
(0.1M)
678
2022-04-12

文档说明:客户在使用Cordic 进行运算时候,对Cordic 打断CPU 的时间存有疑问,认为时间不是按照芯片手册中所描述的时钟周期,本文针对Cordic 时间测试用于澄清计算周期,同时可作为客户评估使用,本文以STM32G431 作为示例。

LAT1154 LPUART 单线半双工通信过程中 stop 位与 start 位重叠的问题
(0.1M)
408
(0.1M)
241
2022-10-19

文档说明:客户在使用 STM32G071RB 的 LPUART 单线半双工模式开发相关的应用时,进行连 续接收发送数据时,客户在检测到 RXNE 位时,认为接收完成,立即进行发送,发现 stop位(波形不完整)与 start 位发生了重叠。

LAT1170 如何理解 RAMECC FAR 寄存器的值
(0.1M)
366
2022-10-19

文档说明:某客户测试 STM32H753xi 板子上的 ECC 功能,用于监控 AXI-SRAM 区域,但不是很明白 RAMECC FAR 寄存器在 RM0433 中的描述, “Bits 31:0 FADD[31:0]: ECC error failing address”。比如在 AXI-SRAM 中,如果客户示例显示的是 FAR = 0x2004,但是这个地址值 0x2004 并不在 AXI-SRAM 范围之内,客户该如何理解 FAR 寄存器?希望能够有详尽的描述,这个 FAR 寄存器的偏移地址是 Word 地

LAT1155 使用输出比较模式产生相移信号
(0.1M)
311
(0.1M)
279
2023-04-19

文档说明:客户想要使用STM32L031 产生两个特定的PWM 波,这两个波形频率相同,占空比相同,但相位不同。经过验证,使用定时器的输出比较模式可以产生这种带相移PWM波形。 下面以STM32L031 的TIM2 为例来介绍使用产生相移信号的方法。

LAT1159 DMA不产生传输完成中断
(0.1M)
302
(0.1M)
309
2023-04-19

文档说明:某客户发现修改代码后,STM32U59 SPI DMA 发送未产生传输完成中断,但修改的代码跟SPI 以及DMA 毫无关联。

无线(50)
  • LAT名称
  • 文档(文件大小)
  • 下载次数
  • 软件包(文件大小)
  • 下载次数
  • 更新时间
  • 分享
LAT1324 关于连接参数更新进程后导致断连的问题分析
(0.1M)
274
2023-09-22

文档说明:本文描述的问题是客户在其兼容性测试中发现的一个比较典型的问题,即当从设备在与手机端处于连接状态下,从设备启动连接参数更新进程后,会导致断连的问题。由于是兼容性测试,测试设备,特别是作为主设备的手机来自不同的供应商,在兼容低功耗蓝牙协议的基础上,某些细节部分的差异难以避免。所以,本文只论述了该客户问题的分析过程及得出的结果,并不期望涵盖所有类似场景下导致断连的原因。

LAT1386 如何生成Sigfox凭证
(0.1M)
66
2024-03-21

文档说明:Sigfox 设备在接入 Sigfox 网络之前,需要从 Sigfox 获取得到有效的凭证,然后将这些信息存储至设备内部的 Flash,用于入网时的鉴权以及通讯时数据的加解密;本文将介绍如果利用 SfxFlasher 工具生成 Sigfox 凭证。

LAT1372 如何配置ZigBee网络的固定网络参数
(0.1M)
66
2024-04-07

文档说明:为加快 ZigBee 的入网速度,可以配置 ZigBee 网路信息为固定的网络信息,并通过以 ZbStartTypeRejoin 模式入网,而且可通过添加状态相关的状态回调函数获取网络或节点的加入和移除时的网络信息。

LAT1296 BlueNRG SDK 快速入门固件开发
(0.1M)
292
(0.1M)
206
2023-08-01

文档说明:本文档指导用户快速地对BlueNRG SDK有一个直观、清晰的认识,了解其软件架构,以便顺利地学会利用SDK开发自己的用户固件

LAT1290 BlueNRG系列的协处理器简介
(0.1M)
295
2023-08-01

文档说明:BlueNRG系列芯片从最早的一代BlueNRG-MS开始就支持协处理器模式。在协处理器模式下,BLE功能在BlueNRG芯片端完成,应用部分在MCU端完成。与AT指令的模 式类似,协处理器方式也具有高内聚、低耦合的特点,但相比于AT指令模式,协处理器 方式更为强大灵活,而且还兼顾了MCU间通信的睡眠和相互唤醒等方面的需求。

LAT1287 BLE设备地址相关简介
(0.1M)
288
2023-08-01

文档说明:在传统蓝牙和BLE中,原则上来说,使用Public地址需要向IEEE申请购买,使用未授权的Public地址如果和已授权的Public地址发生地址冲突,可能会面临法律纠纷。使用Public地址还需要涉及到地址的管理、购买等流程。本文举例描述了购买Public地址的流程。

LAT0819 如何优化STM32WB BLE通讯速率
(0.1M)
264
2024-01-08

文档说明:BLE 的通讯速率也是应用中重点关注的地方。本文我们将先计算 BLE 通讯速率的理论值,然后再探讨下有哪些方法可以优化速率。最后,将使用实际的 Demo 工程作为测试验证。

LAT1283 如何使用S2LP的sniff模式同时满足异步通讯和低功耗要求
(0.1M)
268
(0.1M)
201
2023-09-07

文档说明:某些客户在其S2LP的设计方案中,发送端设备常供电,可以不考虑低功耗;而接收端设备一般用电池功能,对低功耗的要求比较高。发送和接收端的通讯是异步的,也就是说发送端在满足某些检测条件的情况下,可以在任意时刻发送数据包;而要求接收端设备在满足其低功耗要求的情况下,及时接收到数据包,保证响应的实时性。针对以上的应用场景,一般推荐客户使用S2LP的sniff模式。

LAT1302 如何选择S2-lp的外部晶体
(0.1M)
282
2023-09-07

文档说明:该文档用于解答基于S2-LP的客户对如何选择外部晶体,如何选择外部TXCO及如何测试和校准频偏存在的诸多困惑。

LAT1284 BlueNRG LP静态协议栈方式下的HigherLower APP OTA升级
(0.1M)
282
2023-09-22

文档说明:BlueNRG LP 系列芯片支持空中包软件升级,即 OTA(Over-The-Air)功能。当然,ST定制了专门的 OTA 流程。OTA 功能允许在不连接任何物理线缆的情况下,直接通过低功耗蓝牙的空中数据包,将需要升级的程序代码发送到目标板,并完成程序的升级。程序升级完成并重新启动后,直接运行新版本的程序。BlueNRG LP 系列芯片提供了 2 种类型的 OTA 框架, 即 OTA Reset Manager 框架和 OTA Service Manager 框架。

LAT1297 蓝牙广播常见问题
(0.1M)
286
2023-09-22

文档说明:本文是一些解决 BLE 广播相关问题的经验分享。对于用户常常遇到的一些问题,比如 广播包最多能带多少用户数据,广播名字怎么设置,广播类型有哪些,为什么有些手机无法扫描到设备等问题,都将在本文得到解答。

LAT1379 从STM32WL55JC到STM32WLE5CC的LoRaWAN_FUOTA移植
(0.1M)
103
2024-05-17

文档说明:最近有些客户需要在 STM32WL55 实现 LoRaWAN FUOTA 功能,LoRaWAN_FUOTA 默认是基于双核 STM32WL55JC, 由于成本考虑客户需要用 STM32WLE5CC,客户咨询如何移植。

LAT1223 基于S2-LP实现802.15.4g帧格式的数据透传
(0.1M)
390
(0.1M)
248
2023-01-11

文档说明:S2-LP 硬件上支持 802.15.4g 的帧格式,但是现有的 SDK 包并没有基于该帧格式的示例工程,因此本篇文章将介绍如何实现基于 802.15.4g 帧格式的数据透传。

LAT1214 使用BlueNRG LP SoC方案无法扫描到扩展广播包
(0.1M)
366
2023-01-11

文档说明:BlueNRG-LP 是意法半导体第三代低功耗蓝牙单芯片解决方案,兼容低功耗蓝牙 5.2版本。相较于之前的 BlueNRG-1/2 版本,意法半导体对其低功耗蓝牙协议栈进行了升级和优化,引入了 Radio Task 的概念,客户在研发过程中,应切实关注其应用中使用到的Radio Task 数量并在程序中做相应的配置,才能避免相关问题的发生。

LAT1218 如何选择和设置外部高速或低速晶体适配BlueNRG-X
(0.1M)
373
2023-01-11

文档说明:鉴于经常有客户对如何选择外部低速晶体,如何测试外部 32khz 时钟,如何直接使用外部32khz 信号源 以及 如何选择外部高速晶体,如何测试和校准频偏存在诸多困惑,我整理了该文档以备解惑用。

LAT1229 关于蓝牙BLE资格认证介绍
(0.1M)
386
2023-01-10

文档说明:我们知道,如果一个公司提供涉及蓝牙技术或使用任何蓝牙商标(包括“蓝牙”字词)的产品,则它首先必须成为 Bluetooth SIG 的成员并将产品完成蓝牙资格认证流程,这样产品才可以在市场上销售。蓝牙资格认证可保证蓝牙设备连接互通操作的兼容性。

LAT1215 如何配置STM32WB在没有LSE时运行BLE应用程序
(0.1M)
378
2023-01-10

文档说明:首先 LSE 可作为 STM32WB RF Wakeup 和 RTC 的时钟源。 STM32WB RF Wakeup 和 RTC 的时钟源可配置为 LSE,LSE 时钟相对比较稳定且准确,不需要校准,而且 LSE 可在所有的低功耗模式下保持工作。

LAT1225 如何配置S2-LP的直接GPIO模式
(0.1M)
351
2023-01-11

文档说明:在使用 Spirit 系列的 Sub1G 产品时,有一些特殊的场景,其数据来源于 GPIO 口,然后再将获取到的 GPIO 数据发送出去。当前 ST Spirit 系列支持以下三种数据模式:

LAT1156 利用Opus在STM32WB上实现BLE全双工语音流
(0.1M)
681
2022-05-24

文档说明:在无线蓝牙领域,既能满足超低功耗,又能进行全双工语音通讯,一直是市场上的需 求,比如:无线门铃,短距离对讲机等应用。针对BLE 语音相关的应用场景,ST 推出了FP-AUD-BVLINKWB1 这个软件包供客户评估。 本文将对这个软件包展开介绍,该软件包主要包含以下特性: • 使用Opus v1.3 编码和解码,通过BLE 实现全双工立体音频流。 • 使用自定义BlueVoiceOPUS 协议,通过API 即可使用Opus 功能。 • 源码包含数字音频捕获和处理。 • 可以通过USB 进行音频流的回放。

LAT1057 CubeMX创建STM32WL LoRa AT Slave应用
(0.1M)
726
2022-04-12

文档说明:本篇LAT 介绍使用CubeMX 创建基于STM32WL 的LoRa 应用。STM32Cube_FW_WL_V1.0.0\Projects\NUCLEO-WL55JC 中的例程都是基于STM32WL BGA73 的,CubeMX 无法直接创建基于STM32WL QFN48 的例程。 同时介绍如何参考STM32Cube_FW_WL_V1.0.0\Projects\NUCLEOWL55JC\ Applications\LoRaWAN\LoRaWAN_AT_Slave 创建一个WLEx_AT_Slave 的例子

LAT1084_STM32WB无线电认证技术准备工作
(0.1M)
632
2022-04-12

文档说明:STM32WB 系列作为一款高性能的无线双核芯片,具备非常丰富的外设和强大的功能。客户在做中国无线电委员会SRRC 认证工作时,不知道如何产生SRRC 需要的信号。本文就是为了解决此问题而准备。

LAT1055 CubeMX创建STM32WL SubGHz PingPong应用
(0.1M)
717
2022-04-12

文档说明:本篇LAT 介绍使用CubeMX 创建基于STM32WL 的LoRa 应用。 STM32Cube_FW_WL_V1.0.0\Projects\NUCLEO-WL55JC 中的例程都是基于STM32WLBGA73 的,CubeMX 无法直接创建基于STM32WL QFN48 的例程。 同时介绍如何参考STM32Cube_FW_WL_V1.0.0\Projects\NUCLEOWL55JC\ Applications\SubGHz_Phy\SubGHz_Phy_PingPong 创建一个WLEx_PingP

LAT1118 关于STM32WB的蓝牙资格认证介绍 v1.0.pdf
(0.1M)
643
2022-04-12

文档说明:众所周知,如果一个公司提供涉及蓝牙技术和/或使用任何蓝牙商标(包括“蓝牙”字词)的产品,则它首先必须成为 Bluetooth SIG 的成员并将产品完成蓝牙资格认证流程,这样产品才可以在市场上销售。蓝牙资格认证可以确保蓝牙设备连接互通操作的兼容性。 Bluetooth SIG 成员一般分两种,一种是Associate 付费成员,另外一种是Adopter 不需付费成员,客户可以依据具体的需求来申请不同种类的会员。需要注意的是蓝牙 SIG 董事会于2021 年 3 月 9 日批准将所有会员费增加了 20%,

LAT1081 简单测试STM32WB无线射频性能的方法 v1.0
(0.1M)
697
2022-04-12

文档说明:STM32WB 系列作为一款高性能的双核无线芯片,具备非常丰富的外设及强大的功能。客户仪器可能比较匮乏,没有办法细致全面的测试STM32WB 产品的无线射频性能。本LAT 提供一种不需要专用仪器就可以简单测试STM32WB 无线射频性能的方法。

LAT1054 CubeMX创建STM32WLE5Jx LoRa EndNode+cn1.LoRiot应用
(0.1M)
731
2022-04-12

文档说明:本篇LAT 介绍使用CubeMX 创建基于采用STM32WLE5JC/STM32WL55JC 的STM32WL 板子 的LoRaWAN 应用。 其中,参考使用了STM32Cube_FW_WL_V1.0.0\Projects\NUCLEOWL55JC\ Applications\LoRaWAN\LoRaWAN_End_Node 创建一个WLE5Jx_EndNode 的例子。

LAT1085 STM32WL LoRa通信中从Tx发射状态切换到Rx接收状态耗时过长问题
(0.1M)
660
2022-04-12

文档说明:客户反馈STM32WL 在做LoRa 应用时,射频Radio.Init 初始化完成后,进入 Radio.Rx 状态,或者从Tx 状态切换到Rx 状态(txDone 发生后),此过程需耗时10ms。10ms 这个过长的耗时过会导致后续接收应用数据丢失。

LAT1034 STM32U5 HexaSPI总线到PSRAM的PCB布线规则
(0.1M)
462
2022-02-22

文档说明:本文介绍在使用STM32U5 的HexaSPI(HSPI)总线连接PSRAM 外设时,做PCB 布线 上需要注意的一些技术要求。

LAT1082 STM32WL Sigfox设备如何获得Sigfox证书问题
(0.1M)
419
2022-02-21

文档说明:本篇笔记解释了为什么客户的STM32WL Sigfox设备没办法通过Chip certificate 按AN5480描述的方法获取Sigfox 证书。

LAT1221 BlueNRG-X如何实现外部天线和PA的控制
(0.1M)
385
2023-01-11

文档说明:鉴于以下应用场景,我在这里整理了一些应用指导以方便客户参考: 1. 需要更远的传输距离,想通过外加 PA 的方式来实现; 2. 需要 WIFI 和 BLE 共用一个天线。

LAT1161 如何用bat脚本代替按键调试STM32WL HSE XO的负载电容
(0.1M)
286
(0.1M)
287
2023-04-19

文档说明:此时,可以使用bat的脚本来替代手动模式中的按键操作来实现HSE XO负载电容的调节。 原理:在bat脚本中通过STM32CubeProgrammer向RAM中写入操作命令(0x01),STM32WL轮训查询操作命令,并执行相应的操作命令来校准HSE XO的负载电容。

LAT1224 S2-LP的FIFO机制
(0.1M)
346
(0.1M)
225
2023-01-11

文档说明:众所周知,S2-LP 拥有两个数据 FIFO,一个用于数据传送,另外一个用于数据接收,它们各自的长度均为 128 字节。针对普通的小数据量而言,128 字节长度的 FIFO 基本上可以满足大部分应用。但是,随着应用越来越复杂以及对数据量的需求越来越大,128 字节就不够用了,此时就需要对 FIFO 进行管控,才能接收或者发送更多的数据。本文将详细介绍 S2-LP 针对大数量场景时的 FIFO 机制。

LAT1333 如何测试DSSS模式下的灵敏度
(0.1M)
276
2023-12-15

文档说明:随着 Sub 1Ghz SoC(STM32WL33xx 系列)地推出,该芯片支持新的一种调制方式 DSSS (Direct Spread Spectrum) ,经常有客户会问到 “应该如何测试 DSSS 模式下的灵敏度”,在这里整理了该文档,以方便后续其他客户参考使能了 DSSS 功能之后,进行 STM32WL3 系列的灵敏度测试。

LAT1367 如何通过配置GUI tool 测试STM32WL33的灵敏度
(0.1M)
91
2024-04-07

文档说明:本篇从测试环境的准备、测试系统框图、测试步骤几方面着手,给有相关仪表的客户提供测试 STM32WL33 灵敏度的参考。

LAT1371 关于STM32WB OTA 速率提升引发的讨论
(0.1M)
84
2024-03-21

文档说明:客户的 STM32WB 产品考虑功耗和 OTA 传输速率的平衡,在正常工作和做 OTA 升级时会使用两套不同的 BLE 连接参数。这就涉及到 BLE 连接参数更新。客户的问题也正是由更新 BLE 连接参数引起。连接参数的更新除了会影响 BLE 的传输速率,还需要考虑 OTA 接收到数据后的擦写 Flash 操作。

LAT1385 使用S2-LP驱动外部的PA
(0.1M)
105
2024-01-19

文档说明:本文将讲解如何配置 S2-LP 的 GPIOs,从而实现驱动外部 PA 的目的。

LAT0821 如何理解STM32WB 的BLE配对
(0.1M)
281
2024-01-08

文档说明:配对是蓝牙通讯安全的基础。完成配对后,双方可以交换信息来生成各种密钥,或者直接交换密钥,为后续的加密做准备。

LAT0830 使用CUBEMX生成简单demo验证STM32WB RF 是否工作
(0.1M)
269
2024-01-08

文档说明:这里通过一个示例让工程师知晓如何在 BLE 开发过程中,根据自己板子的实际情况,并使用 CUBEMX 工具快速生成 RF 测试代码以验证其是否正常工作 。此文档基于 P-NUCLEO-WB55 开发板来验证。

LAT0829 STM32WL LoRa RF基于AT指令的测试方法
(0.1M)
268
2024-01-08

文档说明:本篇将重点介绍 STM32WL MCU LoRa RF 基于 AT 指令的测试方法。 主要以 RF Tx 输出功率和 Rx 接收灵敏度进行测试。

LAT1294 如何在用户应用中开启LoRa CAD
(0.1M)
315
(0.1M)
232
2023-09-07

文档说明:在STM32WL LoRa某些应用中,尤其是电池供电的设备上,需要按需发送数据,如下发指令,让STM32WL LoRa发送数据,或做相应的操作。为了降低功耗,STM32WL不能一直处于接收状态,这样功耗会很高。我们可以开启LoRa CAD(信道活动检测)功能,STM32WL通过开启CAD功能,检测前导码的前1/2/4/8/16个码元,当检测到LoRa(唤醒)信号后再开启接收,否则系统进入低功耗,这样会极大的降低系统的整体功耗

LAT1309 一步一步创建STM32WBA BLE_Custom工程
(0.1M)
399
2023-06-09

文档说明:本文档将指导用户如何使用 STM32CubeMX 软件一步步生成基于 STM32WBA52 MCU 的一个源码工程;该工程实现了 BLE 外设功能、并具有定制化的 BLE 服务。使用STM32WBA 系列其他芯片也可以参考此文档的步骤构建对应的基础源码工程。

LAT1251 STM32WL LoRa节点入网失败问题分析总结
(0.1M)
378
2023-02-22

文档说明:客户刚使用 STM32WL 做 LoRa 节点应用开发或测试过程中,有时会遇到 LoRa 节点入网失败的问题。使用 STM32WL 开发的 LoRa 节点加入的网络可能是标准的 LoRaWAN 网络或者是私有的 LoRa 网络。这篇文章会总结常见的 LoRa 节点入网失败的问题。考虑到私有 LoRa 网络的多样性以及无论是私有 LoRa 网络还是标准的 LoRaWAN 网络,它们在入网流程中都有许多相近的地方。本文会选取加入 LoRaWAN 网络失败的问题进行分析。而私有 LoRa 节点入网失败问题 则可

LAT1197 STM32WB基于Custom Template实现客户定制BLE私有协议
(0.1M)
389
(0.1M)
262
2023-02-21

文档说明:本文的目的旨在使用 STM32CubeMx 以及 Custom Template 例程基于 STM32WB55- Nucleo 实现基于 BLE 私有协议的通用通信框架,使客户快速上手进行产品开发,且可以直接应用在产品上,应用框架的设计如下图所示。另外,本文还对 BLE 协议栈的下载和升级注意事项做了详细指导,如果读者不熟悉这些内容,可以先行阅读。

LAT1356 如何降低BlueNRG-LPS的开机峰值电流
(0.1M)
252
2023-12-15

文档说明:BlueNRG 系列存在开机瞬间会出现很大的峰值电流的现象,预计有 20ma 左右。针对此现象,经常有客户询问该峰值电流会不会导致设备工作异常?会不会导致电池使用寿命缩短(考虑到一般纽扣电池能承受的峰值电流大概在 15ma 左右)?有没有软件或者硬件的方法限制其峰值电流?目前 BlueNRG-LPS 系列芯片引入了可以通过修改软件寄存器达到限制开机峰值电流的方法,在这里我整理了该文档以备解惑供客户参考。注意:目前只有BlueNRG-LPS 系列芯片有该功能,BlueNRG-1/2, BlueNRG-LP

LAT1078 印制电路板射频走线阻抗计算 v1.0
(0.1M)
642
2022-04-12

文档说明:在STM32 无线系列产品的PCB 设计中,需要对射频部分电路进行阻抗控制,良好的阻抗控制可以减少信号衰减、反射和EMC 辐射。本篇LAT 主要介绍印制电路板(PCB)上射频走线阻抗仿真计算工具的使用方法。使用的计算工具为Altium Designer V21.1.0,其他专业计算工具有Si9000,AppCAD 等,使用时可参照本文章设置的方法进行仿真。

LAT1280 如何将普通应用更改为OTA APP
(0.1M)
108
2024-01-19

文档说明:本文尝试阐述在 BlueNRG-LP_LPS DK 1.2.0 中默认参考示例“BLE_Security”添加 OTA 功能的过程,及其中需要注意的相关细节。

LAT1413 快速开关蓝牙导致设备无广播
(0.1M)
107
2024-01-19

文档说明:客户使用 BlueNRG-345MC 开发了一个 BLE 外设,和手机连接。在测试中发现,手机连接上外设之后,不断地在手机上点击蓝牙的开关按钮,造成设备不断地断开、重连;少则几次,多则几十次。点击之后,必然出现 BLE 外设无广播信号的现象。该问题已经得到了解决。本文将展开聊聊该问题的解决过程和思路,并就该问题总结、分享一些 BLE 连接过程的处理经验。

LAT1321 基于BlueNRG SDK 修改ATT_MTU
(0.1M)
96
2024-01-19

文档说明:本文指导用户如何在 BlueNRG SDK 上修改 ATT_MTU,以及如何考虑、评估修改 ATT_MTU 后可能带来的影响。

LAT1235 BlueNRG-X原理图参数说明
(0.1M)
346
2023-02-03

文档说明:为了让客户在原理图设计阶段少走弯路,我这里结合客户评估和设计阶段常遇到的问题,整理了一下 BlueNRG-1/-2 相关设计及注意事项以备客户解惑用。

LAT1239 简谈BlueNRG-LP和-LPS的代码空间优化
(0.1M)
329
2023-02-22

文档说明:客户在使用 BlueNRG-LP/LPS 芯片时,增加 OTA 服务后常常反馈说,编译代码区域超空间了,需要帮忙优化一下。后文主要通过下列步骤进行分析和优化 BlueNRG-LP/LPS 的代码空间。

LAT1092 如何用STM32CubeMonitor图形化显示Lora节点信息
(0.1M)
454
2022-01-24

文档说明:通过本LAT 实现一个从LoRa 节点、LoRa 服务器、终端应用之间的数据或者命令的相互传输的过程。

编程手册(2)
  • 文档
  • 版本
  • 更新时间
  • 译文
  • 更新时间
  • 下载次数
  • 分享
PM0081_STM32F40xxx and STM32F4...
1.1
2014-07
8365

文档说明:本编程手册为STM32单片机用户提供关于Cortex-M4F内核的单片机STM32F40xxx and STM32F41xxx的完整编程指南。

PM0214_STM32F3,STM32F4,STM32L4...
6
2017-11
12192

文档说明:本编程手册为STM32单片机用户提供关于Cortex®-M4内核的单片机STM32F3, STM32F4 and STM32L4和,STM32L4plus的完整编程指南。

电源与复位(23)
  • LAT名称
  • 文档(文件大小)
  • 下载次数
  • 软件包(文件大小)
  • 下载次数
  • 更新时间
  • 分享
LAT0057 使用STM8L-Discovery验证STM8L在LSI+WAIT模式下的电流
(0.3M)
312
(0.0M)
312
2015-07-28

文档说明:该问题由某客户提出,发生在 STM32L151K6U6器件上。据其工程师讲述:他撰写一段代码,让MCU 工作在LSI 主频上,然后通过WFI 指令进入WAIT 模式,电流达到400uA 左右,与数据手册中所描述的55uA 相去甚远,故请求撰写一例程供他参考。

LAT0336 STM32L4中STOP2模式下的漏电流
(0.2M)
387
2017-06-21

文档说明:STM32L4 系列,目前是STM32 超低功耗产品中最强大的一个系列。它还为我们提供了更多的低功耗模式的选择,包括STOP2 模式,包括低至30nA 的Shutdown 模式。对于这些模式,我们需要进行深入地了解,才能把它们用好。

LAT0048 外部IC连接NRST导致MCU内部复位信号失效的问题
(0.3M)
397
2015-07-28

文档说明:有客户在产品的设计中,使用外部IC 的GPIO 通过连接NRST 引脚来对STM32 MCU 进行复位控制时,会遇到以下问题:IC 可以对MCU 进行复位控制,但是芯片内部的复位信号(如看门狗等)不能对MCU 进行复位,甚至影响引脚功能.

LAT0067 STM32F2电压调节器REGOFF与IRROFF引脚的使用
(0.4M)
350
2015-07-28

文档说明:该问题由某客户提出,发生在 STM32F205RGY6 器件上。据其硬件工程师讲述:由于所选型号是WCLSP66 封装的芯片,看到芯片上有REGOFF 和IRROFF 两个引脚是LQFP 所没有的,不知道如何使用,所以需要了解一下。

LAT0155 STM32F7与STM32F4的复位序列比较
(0.3M)
444
2015-07-28

文档说明:初次接触到STM32F7,总会有个疑惑,为什么0地址变成了ITCM RAM的起始地址。系统复位还是从地址0处开始执行吗?如果是,那这似乎看起来是冲突的。实际上,STM32F7基于Cortex-M7内核,Cortex-M7和Cortex-M3/M4的复位序列有了一些不一样。在本文中,将针对这个问题做详细讲解。

LAT0038 上电缓慢导致复位不良
(0.1M)
387
2015-07-28

文档说明:该问题由某客户提出,发生在 STM32F103VBT6 器件上。据其工程师讲述:其产品在老化测试中出现个 别样机通电后不工作的现象。对该样机重新通电,可以恢复正常。但在后续的测试中还会偶尔重现不 工作的现象,呈现很强的随机性。

LAT0022 Vbat管脚上的怪现象
(0.2M)
383
2015-07-28

文档说明:某客户工程师在某型号新产品的设计中,使用了 STM32 器件,型号为:STM32F101xxT6。在其设计中, STM32 有两路供电,其中一路的电压为 3.3V,为 VDD 及 VDDA 供电,而另外一路的电压为 3.0V,为 VBAT 供电。两路供电都是由同一个蓄电池的输出电压,分别经过各自的电压转换电路处理而得到的。

LAT0068 STM8连续复位问题
(0.3M)
353
2015-07-28

文档说明:该问题由某客户提出,发生在 STM8S 器件上。据讲述:在生产中,发现STM8存在一定比例的不良。具体表现是芯片的NRST引脚上有充放电的波形。此时,芯片无法正常工作。

LAT0247 STM32F107复位标志问题
(0.2M)
402
2016-07-14

文档说明:本篇讨论了STM32F107 中RCC_CSR 寄存器中PINRSTF 标志置位的问题。

LAT0275 VBUS引脚一段时间后管脚无法正常工作的分析和解决方法
(0.2M)
381
2016-12-16

文档说明:问题: 问题由客户提出,客户在生产调试样机的时候,使用两周后发现几片样机出现VBUS 引脚在不接USB 线的时候有3V 左右的电压的问题。结论:由数据手册AMR 可以看出,我们在设计电路的时候需要避免VIN>(VDD+4.0v)。

LAT0349 关于Nucleo-L053板子不上电运行问题研究
(0.3M)
344
2017-04-06

文档说明:客户在使用Nucleo-L053R8开发板调试的程序低功耗功能的时候发现,即使去掉JP6的跳线帽,程序依然在运行,进而怀疑所测试的电流是否是准确的.

LAT0363 在没有外置晶振时HSE_RDY异常置位
(0.2M)
347
2017-06-23

文档说明:问题由客户提出,用户发现在STM32F103 器件上。用户在产品中使能了IWDG,在使用过程中发现当MCU被复位后,有时程序跑不下去;跟踪代码发现程序死在轮询PLL_RDY 处。用户反馈说用的就是ST库中的范例代码,怀疑STM32F103 有设计问题。

LAT1327 STM32 LSE 不起振的可能原因
(0.1M)
154
2024-02-22

文档说明:本文概述在使用 STM32 MCU 过程中遇到的 LSE 不起振问题的几个可能原因,使用者可以参照自己的实际应用场景参考排查相关问题。

LAT0464 FLASH被异常改写
(0.3M)
438
2018-05-07

文档说明:某客户反馈, 当MCU 频繁的正常通断电的时候。FLASH 被异常改写,出现各种各样的异常(整片别擦除、中断向量表被改写为0、写保护被清掉、被加上读保护 ……..)本文主要介绍这个问题的一个解决办法。

LAT0585 与PDR_ON有关的一种异常现象及分析
(0.4M)
385
(0.1M)
260
2019-01-07

文档说明:MCU电源电路相对简单。但是在实际开发中,建议完全参考数据手册和《Getting started with xxxx MCU hardware development》中电源部分设计,避免由于对ST MCU不熟悉引发的硬件设计问题。 具体到关闭内部电源管理器的设计,在上述文档中,同样有详细描述(包含了电路设计建议和对应波形情况)。

LAT0595 STM32芯片异常复位分析
(0.4M)
453
2019-02-27

文档说明:本篇主要是介绍一种处理问题的思路,即当我们在做STM32应用开发过程中,遇到芯片异常复位,或者进入了异常处理时,如何通过集成开发环境,如IAR,KEIL等查看相应的ARM内核寄存器,定位出应用软件产生异常的地方!

LAT1035_STM32L4进入低功耗异常的一种情形
(0.1M)
711
2022-02-22

文档说明:STM32 L4 系列作为一款高性能的低功耗芯片,具有强大的运算处理性能和极低的运 行和待机功耗,广泛应用于各种需要节能设备上。

LAT1015_STM32F030在低温下无法启动.pdf
(0.1M)
1201
2021-11-03

文档说明:客户反馈STM32F030 作为他们产品的控制芯片,在常温下工作是正常的,但是稍微冷冻下就会启动失败,重现率100%,再次加热或者恢复到常温又能正常工作。此问题已经困扰了客户四五年,一直没有头绪,每次都更换一块芯片就好了,因为客户自己也知道,换芯片时会将其吹下来,必定会加热芯片,这样MCU 也就能恢复正常了。但这种办法终究不是解决方法,客户急切想找到原因并解决问题。

LAT1122 一个关于MCU反复重启的问题 v1.0.pdf
(0.1M)
751
2022-04-12

文档说明:某客户使用STM32U59,批量生产时发现有1%左右的机器存在反复重启问题;问题 机器断电后用热风枪加热STM32U59 再上电问题消失,试了几台机器都是如此,遂怀疑STM32U59 存在质量隐患。

LAT1244 奇怪的NRST 管脚异常复位问题
(0.1M)
439
2023-02-03

文档说明:本文探讨一个奇怪的 MCU NRST 管脚异常复位现象。

LAT1349 STM32L4芯片软复位导致SRAM2的值被擦除话题
(0.1M)
268
2024-01-03

文档说明:客户在使用 STM32L433CCY6 开发过程中,出现软件复位后 SRAM2 里的值被擦除问题。

LAT1395 STM32H5 PB14输出波形异常分析
(0.1M)
121
2024-02-22

文档说明:客户在使用 STM32H565 开发新项目的时候遇到一个问题,PB14 在开漏时无法上拉 到 3V3,且其输出的 PWM 频率比其它 GPIO 低。且多片芯片的表现类似。 检查客户的原理图并未发现明显的问题。

LAT6022 STM32MP13x低功耗的使用和注意事项
(0.1M)
89
2024-05-17

文档说明:STM32MP13x 系列是一款单核 A7 的 MPU,同时在低功耗模式下有出色的低能耗,官方网站已经提供了一个关于低功耗的文档 AN5565(STM32MP13 lines using low-power modes),但是实际应用中会遇见各种问题,所以针对低功耗应用场景整理这篇文档,主要介绍概念和如何调试一些常见问题。