做了一个项目,使用STM32F103VBT6来做GPS终端,在调试过程中发现两个问题,记录下来以便今后参考!问题一: 给电路板上电,CAN模块正常收发,然后断电,此时因为有电池原因CPU不断电,正常工作。但硬件上CAN模块断电,此硬件设计没问题,就是这种方式。再次给电路板上电,CAN模块不能收发,但此时CPU正常,量CAN收发器电压正常!解决方法:百度了一下,发现有不少人遇到类似问题,他们大多是因
STM32入门系列-STM32外设地址映射 片上外设区分为四条总线,根据外设速度的不同,不同总线挂载着不同的外设,APB1挂载低速外设,APB2和AHB挂载高速外设。相应总线的最低地址我们称为该总线的基地址,总线基地址也是挂载在该总线上的首个外设的地址。APB1总线的地址最低,因此片上外设就从这这个地址开始,也称外设基地址。总线基地址    从存储
背景        有一块吃灰7年的神州IV号开发板,主控芯片STM32F107VCT6,PHY芯片DM9161A,配套的资料都是当年ST的标准库。这个开发板应该是因为当年上市太匆忙,资料和代码的细节部分做的不太好。        最近想玩玩MQTT,想用这个开发板的网口,顺便通过此过程熟悉下STM32 ETH的用法。
以下是实现电机转速闭环控制的步骤:1.打开上节的工程文件,在工程文件中新加一个User文件夹,在文件夹目录下新建Src和Inc文件夹,并分别添加.c文件和.h文件并命名为motor_control.c和motor_control.h2.在motor_control.c文件中加入以下代码:这里,Motor1SpeedClosedControl()函数是为PWM信号PID闭环调节SetMotor1Di
案例库及相关资料下载链接:链接:https://pan.baidu.com/s/1hsIibEmsB91xFclJd-YTYA?pwd=jauj  提取码:jauj 1 认识硬件环境1.1 ARM简介·ARM既指ARM公司,也指ARM处理器内核。·ARM公司是全球领先的半导体知识产权(IP)提供商,全世界超过95%的智能手机和平板电脑都采用ARM架构。·AR
2.STM32CubeMX使用教程参考:http://www.mculover666.cn/posts/578764034/下载芯片对应的HAL库在官网上好难找,发现有一个办法。1.打开STM32CubeMX,菜单Help 里面”Manage embedded software packages“2.选择对应芯片包,点击 安装3.查看安装的包存取的位置。点击安装好的包,卸载,跳出对话框可以看出包的
转载 2021-08-06 16:27:00
485阅读
Ⅰ、写在前面相信很多人都知道STM32CubeMX这个工具,也是近年来开发STM32比较流行的一个工具。这个工具从两年前第一版到现在已经有多个版本了,功能也从简单越来越强大了。  是一个配置STM32代码的工具,它把很多东西封装的比较好,硬件抽象层、中间层、示例代码等。  现在ST公司升级和维护的库主要就是STM32CubeMX的HAL库和标准外设库,使用这两种库开发STM3
前言博文基于ARM Cortex-M3内核的STM32F103ZET6芯片和标准3.5.0库;博文介绍标准库中个文件夹的含义和以及一个简单工程的建立;如有不足之处还请博友多多指教;标准库的下载标准库的获取方式: 第一步:第二步:依次进行下列操作 在下面这个表格里,能看到很多系列的标准库,可以根据自己需求选择;这里我选择STM32F10x系列; (下面这个表格是根据芯片选择的,或许有人会有一个疑问:
实验目的:接收串口调试助手中的数据,然后将接收到的数据发送到串口调试助手上实验步骤:1.串口时钟使能,GPIO时钟使能2.引脚复用映射3.GPIO端口模式设置:GPIO_Init(); 模式设置为GPIO_Mode_AF4.串口参数初始化:USART_Init();5.开启中断并且初始化NVIC(如果需要开启中断才需要这个步骤)6.使能串口7.编写中断处理函数(如果需要中断,并且你开启了中断,则需
前言: 今天我们学习STM32CubeMX串口的操作,以及HAL库串口的配置,我们会详细的讲解各个模块的使用和具体功能,并且基于HAL库实现Printf函数功能重定向,UART中断接收,本系列教程将HAL库与STM32CubeMX结合在一起讲解,使您可以更快速的学会各个模块的使用 所用工具:1、芯片: STM32F407ZET62、STM32CubeMx软件3、IDE
STM32中 FatFS移植前言与废话        做项目时网找资料,不会的东西上网查阅一下多半可以解决,一些尚未解决的问题也会有所启发。最近由于项目的需要,仔细阅读了SD卡相关内容,顺藤摸瓜学习FatFS。网上关于SD卡和FatFS的内容非常的多,重复的部分我就不介绍了,我把移植和使用部分的经验和大家分享一下。刚开始的时候,我找来一些
简 介: 下载STM32CubeMX最新版本,安装后进行测试软件的开发。关键词: STM32CubeMX,自动代码产生 STM32CubeMX 文章目录 安装版本 软件升级 下载最新版本
目录一、GPIO1.1 什么是GPIO 1.2 GPIO简介 1.2.1 GPIO特点 1.2.2 GPIO电气特性 1.2.3 GPIO引脚分布1.3 IO端口基本结构介绍 1.4 GPIO的八种模式 1.5 GPIO的寄存器介绍1.6 通用外设驱动模型(四步法)1.7 GPIO配置步骤 1.8 编程实战:点灯1.9 编程实战
文章目录1. 安装STM32CubeMX软件1.1 下载安装1.2 安装要用到的芯片软件包2. 配置FreeRTOS项目2.1 创建工程2.2 配置SYS2.3 配置RCC2.4 配置系统运行时钟2.5 配置UART1串口作为调试代码2.6 配置一个LED引脚的GPIO2.7 使能FreeRTOS组件3. 生成代码4. 测试生成的工程代码 1. 安装STM32CubeMX软件ST公司现在出了一套
拖得有点久了,主要是最近期末事情多。 写在前面:因为是linux新手,一开始的想法是继续windows上的开发,由于keil用不了,别的没上手,先尝试了使用stm32cubeide完成原来的代码,使用过程中出现了些许问题,促使我写下这篇文章,也是希望使用别的ide进行开发时也能触类旁通吧。 Ubuntu上使用stm32cubeide安装stm32cubeide安装openocd尝试开发&烧
今天分享几点内容:1.介绍ST推出的三种库;2.直接操作寄存器及三种ST库的代码性能对比;3.STM32CubeMX直接生成Cube LL库函数的方法;4.STM32标准外设库SPL转换成Cube LL的方法;1介绍ST推出的三种库1.标准外设库:Standard Peripheral Libraries,简写SPL.2.Cube硬件抽象层库:STM32Cube Hardware Abstract
STM32固件库(标准外设库)入门学习 第二章 新建工程 文章目录STM32固件库(标准外设库)入门学习 第二章 新建工程前言一、新建项目二、添加工程必要文件三、新建main函数四、美观性调整(修改字体)五、配置调试器六、配置寄存器方式点灯七、添加库函数八、利用库函数实现点灯总结 前言STM32编程有三种方式。基于寄存器配置方式、基于标准库方式、基于HAL库的方式。 (1)基于寄存器配置方式,类似
前言稚晖君新项目ElectronBot刚发布不久,且已经开源在了git,地址如下(GitHub - peng-zhihui/ElectronBot)。主控芯片用的是STM32F405,开发工具用的是CLion,而且是C与C++混编。但,CLion是一个收费软件,如果不是常用的生产工具,性价比就比较低 了,如果用其他方式进行和谐,也是不合法的,所以,就转用ST出的免费的IDE;在单片机上使用c++进
IAP即在线应用编程,平时我们写好的程序都是通过下载器去下载的,但是对于组装好的产品在想更新底层硬件代码是很麻烦的事情,如果在公司情况还没那么糟糕,要是发出去的产品出现bug,你不可能要用户给你下载程序的。IAP这种技术,我们就可以像软件一样,可以实现远程更新了。我们需要做的就是,写单片机FLASH的读写接口,程序可以通过上位机进行下发,然后单片机程序调用FLASH写函数,把下发的代码写到对于FL
STM32标准库(固件库)分析STM32标准外设库(固件库)概述STM32标准外设库之前的版本也称固件函数库或简称固件库,是⼀个固件函数包,它由程序、数据结构和宏组成,包括了微控制器所有外设的性能特征。该函数库还包括每⼀个外设的驱动描述和应⽤实例,为开发者访问底层硬件提供了⼀个中间API,通过使⽤固件函数库,⽆需深⼊掌握底层硬件细节,开发者就可以轻松应⽤每⼀个外设。因此,使⽤固态函数库可以⼤⼤减少
  • 1
  • 2
  • 3
  • 4
  • 5