STM32启动模式在STM32F10xxx里,可以通过BOOT[1:0]引脚选择三种不同启动模式 在每个STM32的芯片上都有两个管脚BOOT0和BOOT1,这两个管脚在芯片复位时的电平状态决定了芯片复位后从哪个区域开始执行程序,见下: BOOT1=x   BOOT0=0   从用户闪存启动,这是正常的工作模式。 BOOT1=0   BOOT0=1 &nbs
转载 2024-03-26 16:49:47
353阅读
本次介绍的两个软件包SFUD/FAL都与FLASH有关,并且都可以独立使用或者结合在一起使用,两个软件包都对操作系统无依赖,可以使用裸机移植,也很方便移植到各种系统。 这两个软件包的作者都是armink,armink的开源仓库地址:https://github.com/armink,更多好玩的软件,请到作者仓库查询。 以下将结合rtthread系统,分别对这两个软件包做下演示。1.SFUDSFUD
转载 8月前
146阅读
使用stm32cubeide的usb-host-cdc库驱动EC20模块写在前面开发环境:开始一、使用 cubeide 创建 STM32 Project二、修改代码三、仿真最后 写在前面之前已经发布过一篇 “使用stm32cubemx的usb-host-cdc库驱动EC20模块”,但是近期有很多小伙伴私信询问相关问题。今天抽空重新浏览了一下上一篇博客,因为自己想表述的东西太多,写的有点乱。决定重
今天内容:1.配置CAN1和CAN2环回模式下接收数据;2.配置CAN1和CAN2正常模式下进行相互通信这里我不再给大家继续讲CAN通信基础原理了,直接上手教大家使用STM32CubeMX配置环回模式下的收发数据,以及配置STM32F405RGT6的CAN1和CAN相互通信;一、配置CAN1和CAN2环回模式下下发送和接收数据步骤1:配置时钟步骤2:CAN基础配置(配置波特率500K),这里讲解下
转载 2024-06-17 15:56:27
762阅读
以keil5配置STM32C8T6为基础,延申如何在keil5上编辑keil4的文件和如何配置其他类型的板子。 1.keil5的安装 2.配置过程一、keil5的安装 首先给一下下载链接,下载好之后里面是一个keil的安装包。MDK5 激活码:uixs。 解压后双击 mdk528a.exe,开始安装,单击next。 勾选I argee,然后next。 选择文件的安装位置和包的安装位置后,选择nex
转载 7月前
202阅读
最近在做一个stm32项目,用的盗版jlink调试,突然某次下完程序,stm32竟然开始无限重启了,量了一下复位脚,发现有周期性的重启脉冲输出,一开始我以为是硬件坏了,重新焊了一套硬件,发现新焊的是好的,但是原来那块板子,检查来检查去感觉也不像是硬件和程序的问题。后来我查了一些资料,想到去检查复位后的RCC_CSR寄存器,这里会标识系统是由哪个信号引发的reset,看了以后才发现是由于看门狗引起的
转载 9月前
101阅读
实际上,对于STM32F10x系列的芯片,如果使用库函数方式开发,芯片的时钟初始化函数已经写好,并且在启动文件(例如startup_stm32f10x_hd.s)中被自动调用,在进入main函数之前,系统以及外设时钟均配置完成,main程序中不需要对时钟再进行任何配置,直接编写应用程序即可。但是作为一个底层驱动玩家必须要打破砂锅问到底,看看STM32F10x系列芯片的时钟系统到底是怎么样的以及如何
以下以STM32F407ZGT6为例说明。 STM3232位的芯片,意味着有从0x00000000~0xFFFFFFFF 4G也就是32位的寻址空间,在设计芯片的时候,采用的是ARM所设计的架构,ST(意法半导体)公司在基于ARM的对芯片添加了自己的外设。注意:这里是一个地址空间存放一个字节,即1Byte  ARM规定:Vendor-specific memory 511MB 存放特定厂商的代码
转载 1月前
408阅读
GPIOx_CRL(x=A~E) 地址偏移:端口配置的初始地址加上偏移地址就是该特殊寄存器的地址 GPIO通用输入输出8种工作模式 1.浮空输入模式: (1)当GPIOx_CRL或GPIOx_CRH寄存器的CNF[1:0]位设置为01,并且MODE[1:0]位设置为00时 (2)STM32复位之后默 ...
转载 2021-04-08 13:51:00
891阅读
2评论
总线矩阵  上图为stm32f4的总线矩阵,其中主控总线有8条,被控总线有7条,主设备和从设备通过各自的总线两两相交连接,图中两条总线相交且为圆圈的地方,表示这两条总线对应的主设备可以访问从设备,如I总线(指令总线),只有跟 M0、M2和M6这三根被控总线交叉的时候才有圆圈,就表示I总线只能跟这三根被控总线通信,这样就可以知道stm32f4的启动有三种分别是FLASH、内部SRAM、外部存储FSM
stm32在freertos系统下使用串口DMA接收方式对接freemodbus-rtu协议栈 文章目录stm32在freertos系统下使用串口DMA接收方式对接freemodbus-rtu协议栈前言码农工程师,人狠话不多,大家多看图和代码!!!一、准备工作cubemx配置dma初始化的一个注意点二、拆解freemodbus1.porttimer.c文件不再使用(不使用定时器判断接收完成),接口
转载 2024-03-17 00:43:12
1171阅读
1点赞
1评论
本文讲述的是如何从零开始,使用keil建立一个简单的STM32的工程,并闪烁LED灯,给小白看。第零步,当然首先你得有一个STM32的板子,其IO口上接了一个LED。。。第一步,建立一个文件夹0.0第二步,打开keil,建立工程在弹出来的对话框中选择你所用的STM32的芯片。在接下来弹出来的对话框中选择是,这样keil就帮我们建立好了启动文件。 第三步,新建一个main.c文件,并添加到
转载 2023-06-19 15:27:24
969阅读
一、SysTick基础简介:SysTick系统定时器是 CM3 内核中的一个外设,内嵌在 NVIC 中。系统定时器是一个 24bit 的向下递减的计数器,计数器每计数一次的时间为 1/SYSCLK,一般我们设置系统时钟 SYSCLK等于 72M。当重装载数值寄存器的值递减到 0 的时候,系统定时器就产生一次中断,以此循环往复。因为 SysTick 是属于 CM3 内核的外设,所以所有基于 CM3
转载 2024-05-16 14:20:13
528阅读
背景在使用PyTorch深度学习框架的时候,不管是训练还是测试,代码中引入PyTorch的第一句总是: import torch 在Gemfield前述专栏文章里,我们已经得知,torch/csrc/stub.cpp链接libshm.so、libtorch_python.so、libcaffe2_gpu.so生成了_C.cpython-37m-x86_64-linux-gnu.s
韦东山 数码相框 项目学习(三)freetype的移植要把freetype移植到STM32MP157上,我们主要完成四步源码下载解压配置、编译对应文件复制到对应目录一、源码下载解压源码的下载可以进入去https://freetype.org/这个网址进行下载,本次移植我们使用的是2.4.10版本,然后将下载下来的压缩包上传到服务器。然后执行tar -jxvf freetype-2.4.10.tar
简介IAP(In Application Programming)即在应用编程, IAP 是用户自己的程序在运行过程中对User Flash 的部分区域进行烧写,目的是为了在产品发布后可以方便地通过预留的通信口对产品中的固件程序进行更新升级。通常实现 IAP 功能时,即用户程序运行中作自身的更新操作,需要在设计固件程序时编写两个项目代码,第一个项目程序不执行正常的功能操作,而只是通过某种通信方式(
转载 2024-05-03 13:40:25
176阅读
在嵌入式设备中,常涉及到低功耗下的串口通信,本文以STM32L4作为硬件平台,讲解3种低功耗下的串口通信,希望对做低功耗的嵌入式开发者有所启发或帮助。笔者才疏学浅,难免有错误或遗漏之处,望读者能不吝指正。下文所涉及的低功耗模式都是指STM32的停机模式,在该模式下PLL停止工作,仅LSI和HSI继续运行(进休眠前已经打开的话),所有IO状态、内部RAM数据保持不变,所有外部IO中断、内部RTC定时
基础元器件控制本篇博文将使用LED灯、蜂鸣器、开关元器件,学习如何使用HAL库进行GPIO的输入输出设置。博主采用如下开发板进行学习STM32的编程:LED灯LED(Light Emitting Diode),发光二极管,是一种能够将电能转化为可见光的固态的半导体器件,它可以直接把电转化为光。LED可以直接发出红、黄、蓝、绿、青、橙、紫、白色的光。1.查看引脚首先,查看原理图,找到LED灯的引脚。
转载 2024-03-15 10:34:43
432阅读
模拟IICIIC协议GPIO配置根据时序图完成代码起始与停止信号等待应答读写字节检查设备是否连接 IIC协议I2C 通讯协议(Inter-Integrated Circuit)是由Phiilps公司开发的,由于它引脚少,硬件实现简单,可扩展性强,不需要USART、 CAN等通讯协议的外部收发设备,现在被广泛地使用在系统内多个集成电路(IC)间的通讯。它是一个支持多设备的总线。“总线”指多个设备共
转载 2024-03-20 14:56:28
178阅读
STM32:嵌入式开发的强大选择在嵌入式系统开发领域,STMicroelectronics推出的STM32系列微控制器凭借其出色的性能和丰富的功能,已成为工程师们的首选之一。作为基于ARM Cortex-M内核的32位微控制器,STM32系列提供了从入门级到高性能的完整产品线,满足各种应用场景的需求。强大的硬件特性STM32系列最显著的特点是它的多样性。从低功耗的STM32L系列到高性能的STM3
  • 1
  • 2
  • 3
  • 4
  • 5