有三种Reset:System 复位,Power 复位,RTC域复位.System 复位System复位所有寄存器,但除了RTC,RTC backup寄存器和控制/状态寄存器RCC_CSR。system复位产生的情形有:1. NRST引脚拉低2. 看门狗计数结束(WWDG复位)3. 独立看门狗技术结束(IWDG复位)4. 软件复位(SW复位)5. 低功耗管理复位6. 选项字节加载复位7. 退出St
原创
2016-02-22 11:18:32
2808阅读
任何处理器,读到Clock时钟部分,总是费劲的。系统时钟(system clock)SYSCLK可以来自四种时钟源:HSI(high-speed internal)内部振荡器时钟HSE(high-speed external)外部振荡器时钟PLL时钟MSI(multispeed internal)振荡器时钟 启动复位/从Stop或Standby状态唤醒之后默认将MSI作为时钟源。&nb
翻译
精选
2016-02-22 15:13:12
3252阅读
5.1.4 稳压器 一个嵌入式线性稳压器为所有数字电路提供电源,除了待机电路。稳压器输出电压(VCORE)可以软件编程为三种不同电压范围1.2-1.8V(典型)(参见5.1.5)。 重启后稳压器总是使能的。它工作于三种不同模式:main(MR),low power(LPR)和power down,这取决于
翻译
精选
2016-07-12 10:54:48
5365阅读
17.3.15 Timer同步 18.3.3 时钟选择
翻译
精选
2016-02-23 13:48:35
923阅读
文章目录概述`UART`初始化`UART`参数初始化`UART`句柄`UART`初始化结构体`UART`参数初始化函数`UART`时钟初始化`UART_GPIO`初始化`UART`中断配置`Msp`初始化函数`UART`无中断收发`UART`发送数据`UART`发送数据`API``UART`无中断发送示例`UART`接收数据`UART`接收数据`API``UART`无中断接收数据示例`UART`
本文使用的STMCube库为STM32Cube FW_F1 V1.8.0版本。不同版本的HAL库使用上有一些的差异。具体的CAN物理层和通讯协议等建议先找资料了解一下(ISO 11898),这里只讲快速应用。网上关于协议讲解的很多,例如:1. STM32 CubeMX 配置首先安装STM32CubeMX,然后选择你使用的MCU型号和封装:配置一下外部晶振和调试下载方式配置一下APB1 外设时钟,C
转载
2023-09-25 19:12:23
242阅读
解决 bsp stm32 stm32l476-st-nucleo STM32L4 HAL库缺失问题
理解力STM32时钟是我们的应用定时器等的基础,据总结近期工作:以下是一STM32时钟树:1.首先注意的的是图中画绿色圈圈的两个,HSE和HSI分别表示外部时钟和内部时钟,当中HSE 是是快速外部时钟。可接石英/陶瓷谐振器,或者接外部时钟源,HSE 也能够直接做为系统时钟或者 PLL 输入(从红圈4...
转载
2015-10-26 15:21:00
279阅读
2评论
HAL_PCDEx_SetRxFiFo 和 HAL_PCDEx_SetTxFiFo这两个函数的作用是:该EndPoint数据传输最大数量的限定除前面贴子里廛的影响数据传输量的函数外,这两个HAL_PCDEx_SetRxFiFo / HAL_PCDEx_SetTxFiFo函数也值得注意。其一,这两个函数是有使用顺序的(参考USBD_LL_Init函数):HAL_PCDEx_SetRxFi...
原创
2022-02-04 09:48:18
857阅读
HAL_PCDEx_SetRxFiFo 和 HAL_PCDEx_SetTxFiFo这两个函数的作用是:该EndPoint数据传输最大数量的限定除前面贴子里廛的影响数据传输量的函数外,这两个HAL_PCDEx_SetRxFiFo / HAL_PCDEx_SetTxFiFo函数也值得注意。其一,这两个函数是有使用顺序的(参考USBD_LL_Init函数):HAL_PCDEx_SetRxFi...
原创
2021-07-14 16:16:13
780阅读
此次测试是基于正点原子STM32精英版,芯片为STM32F103ZET6基于HAL库的配置预分频后为单位时间。Time for one bit 为时间段1和时间段2再加单位时间。时间段1和时间段2为单位时间的整数倍。在上图中为4+4+1倍,即9倍。图片中配置为2000ns,即波特率为500Kbps。 若是想要中断接收数据,还需要打开中断。完成后生成代码即可CAN过滤器过滤器是需要自己配置的,而且不
STM32L053闹钟唤醒:设置实现原理,当闹钟时间==日历时间时,闹钟
原创
2021-12-07 17:05:48
10000+阅读
1.介绍最近在学习CAN通讯协议的时候,发现许多文章在介绍协议时介绍的非常详细,可是在具体的MCU上进行应用时,就变得马马虎虎了。因此将自己的所学所想记录分享出来,抛砖引玉。 本文着重讲解CAN协议在stm32上面的应用,对于理论知识不做过多的讲解, 2.前期的准备工作主控MCU使用的是stm32f103c8t6, 编译器使用的是 sum32cubeide, hal库版本使用的是最新的1.8.3,
说明:下面xx表示实际字符就是xx表示形式,n表示数值,ppp表示可能实际有可能出现的符号1.一类stm32fn有自己一个专门的cube库,比如f1系列有自己的f1系列cube库,f4系列有自己的f4cube库,这里n为f系列,如1,3,4,7等等。2.HAL库下各类文件名的作用:stm32fnxx_hal_ppp.c/.h:表示基本外设的操作api,ppp代表任意外设。由于HAL库每类针对一系列
## 如何使用stm32f4xx_dsp_stdperiph_lib
### 1. 概述
在使用stm32f4xx_dsp_stdperiph_lib之前,我们需要明白这是一个面向stm32f4系列芯片的DSP(数字信号处理)标准外设库。该库提供了许多常用外设的驱动函数,使开发者可以更方便地使用这些外设功能。
### 2. 实现步骤
为了帮助你快速上手使用stm32f4xx_dsp_stdpe
解锁void flash_unlock(void){ /* (1) Wait till no operation is on going */
原创
2022-03-07 14:25:44
10000+阅读
STM32使用Cubemx生成的代码中,用到IIC的驱动,但是始终不能读写,因此使用逻辑分析仪,发现原本地址为0x58的写成了0x20,因此肯定是地址错了。因此,总结如下:1、需要逻辑分析仪分析IIC协议书很好的,目前使用的工具是:DSView 逻辑分析仪。2、keil在线debug的能够独写一次的
转载
2019-07-01 22:14:00
177阅读
2评论
STM32使用Cubemx生成的代码中,用到IIC的驱动,但是始终不能读写,因此使用逻辑分析仪,发现原本地址为0x58的写成了0x20,因此肯定是地址错了。因此,总结如下: 1、需要逻辑分析仪分析IIC协议书很好的,目前使用的工具是:DSView 逻辑分析仪。2、keil在线debug的能够独写一次
转载
2019-11-10 09:30:00
96阅读
2评论
正点原子F429开发板,HAL库注意 1、如果将全部库文件都引入,会出现error: l6200e: symbol hal_mspdeinit multiply defined,此处是stm32f1xx_hal_msp_template.c和stm32f1xx_hal_msp.c重复定义了HAL_MspDeInit和HAL_MspInit 函数
1. 准备工作硬件准备 开发板首先需要准备一个小熊派IoT开发板,并通过USB线与电脑连接。 2.生成MDK工程选择芯片型号打开STM32CubeMX,打开MCU选择器: 搜索并选中芯片STM32L431RCT6: 配置时钟源如