上期我们介绍了基于Keil 模拟器 的STM32F103 上手指南,本期大家将可以真真正正上手!
原创
2021-08-10 11:47:26
3588阅读
串口设置的一般步骤可以总结为如下几个步骤:1) 串口时钟使能,GPIO 时钟使能2) 串口复位3) GPIO 端口模式设置4) 串口参数初始化5) 开启中断并且初始化 NVIC(如果需要开启中断才需要这个步骤)6) 使能串口7) 编写中断处理函数 淡蓝色是以串口1举例,深蓝色是以结构体函数,可拿结构体复制到Keil5中,右键 仔细看结构体里要求的模式等 &
任何处理器,读到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
3301阅读
有三种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
2893阅读
5.1.4 稳压器 一个嵌入式线性稳压器为所有数字电路提供电源,除了待机电路。稳压器输出电压(VCORE)可以软件编程为三种不同电压范围1.2-1.8V(典型)(参见5.1.5)。 重启后稳压器总是使能的。它工作于三种不同模式:main(MR),low power(LPR)和power down,这取决于
翻译
精选
2016-07-12 10:54:48
5465阅读
文章目录前言一、HAL库配置定时器1.CubeMx配置2.函数相互调用逻辑总结 前言基于定时器输出不同占空比的PWM波,再作为led灯的输入,关于不同占空比如何改变led灯的亮度,我自己想的是类似于高中物理讲的最大电压和有效电压的区别,有效电压是指在单位时间电流所做功的平均值,高电平保持时间越长,有效电压就越高。不过这样有点解释不通PWM频率的用处了,所以可能这样理解也有点小问题。一、HAL库配
转载
2024-04-26 22:13:42
55阅读
近期收到了一块STM32G4系列的开发板,作为试用开发板,尝试使用G4做电源类项目,在使用G4系列开发板的时候,碰到了ADC工作不正常的情况,具体情况如下所示: 由于项目需要,主频限定在20Mhz,使用了板载24Mhz晶振,时钟树分布如下:图 1 时钟树
17.3.15 Timer同步 18.3.3 时钟选择
翻译
精选
2016-02-23 13:48:35
939阅读
先看下STM32L053的RTC时钟,这里没有外部晶振用的是内部LSE,频率37KHz通过Cube配置RTC,启用日历和时钟,我
原创
2021-12-10 10:50:52
10000+阅读
stm32的flash地址起始于0x0800 0000,结束地址是0x0800 0000加上芯片实际的flash大小,不同的芯片flash大小不同。
RAM起始地址是0x2000 0000,结束地址是0x2000 0000加上芯片的RAM大小。不同的芯片RAM也不同。
Flash中的内容一般用来存储代码和一些定义为const的数据,断电不丢失,
RAM可以
转载
2024-04-24 16:05:11
956阅读
1. 准备工作硬件准备 开发板首先需要准备一个小熊派IoT开发板,并通过USB线与电脑连接。 2.生成MDK工程选择芯片型号打开STM32CubeMX,打开MCU选择器: 搜索并选中芯片STM32L431RCT6: 配置时钟源如
转载
2024-08-14 17:57:53
265阅读
最近做的项目中要求低功耗,在单片机完成了手头上的工作之后,就进入低功耗模式,项目的需求是单片机进入低功耗模式的时候系统时钟从HSE切到HSI,但是在未进入低功耗模式之前引脚是什么状态,进入低功耗模式之后也不应该改变。可以通过RTC定时唤醒,或者接收到串口数据就唤醒,处理完数据后再进入stop模式。查询了一些资料之后,发现stop模式最符合项目需求。下面讲述一下什么是低功耗:一、stm32支持三种低
转载
2024-04-25 13:54:43
330阅读
点赞
STM32学习笔记(白话文理解版)—I2C通信接口 这里写目录标题STM32学习笔记(白话文理解版)—I2C通信接口一、I2C总线介绍二、I2C应用三、软件I2C和硬件I2C 一、I2C总线介绍IC(Inter-Integrated Circuit)总线是一种由 PHILIPS 公司开发的两线式串行线,用于连接微控制器及其外围设备。它是由数据线 SDA 和时钟 SCL 构成的串行总线,可发送和接收
目录一、硬件设计1、DC-DC电源部分2、CPU供电3、开关控制电路4、外围芯片供电控制5、外围模组供电控制6、电阻电容的选择。7、IO口的分配策略8、焊接及静电二、软件设计 1、不用的IO口处理2、CPU 的是时钟频率及内核电压3、输出 的IO口4、 输入 IO 口5、外设6、唤醒后动作 &nbs
转载
2024-08-27 11:33:06
448阅读
芯片手册中提到的从停止模式唤醒说明芯片手册中提到的从待机模式唤醒说明
原创
2021-12-10 10:50:35
10000+阅读
Reset:1、系统复位:A system reset sets all registers to their reset values except for the RTC, RTC backupregisters and control/status register, RCC_CSR 复位...
转载
2016-01-09 13:34:00
232阅读
2评论
前言当你看到这篇博客时不知道是否已经了解过C51单片机,如果你没了解过它。这里有一份指南()让你入门单片机,作为初学者从功能相对简单的单片机入手更有利于打好基础。虽然stm32在性能上更为强大,但stm32开发从它的配置和代码量上来讲比C51开发更复杂,缺少点乐趣。当然了看到这篇博客的肯定是学stm32的咯,所以废话讲的有点多。言归正传,直接开干。(ps:这里介绍的是以STMF103 CBT6为例
一、系统时钟默认是32M,最高支持32M,不过下图已经改成72M也可以运行,可能会有什么后遗症,位置在 二、定时器1ms两种方法1、Main.c里 void delay_nms(uint32_t time){ uint32_t i=0; while(time--) { i=12000; //自己定义
转载
2018-02-25 22:19:00
220阅读
2评论
一 段式液晶初始化停在while(LCD_GetFlagStatus(LCD_FLAG_RDY) == RESET)中不出来,网上给的原因和解决办法:
1 也RTC的时钟有关,需要先配置RTC时钟
2 与驱动能力有关,COM端有时要100uA的电流,需要用运放对com扩流,但这也会增加功耗。
3 注意电源的来源。我的原因是是发现软件配置使用内部供电,外部VLCD没接,接上后可以正常初始化通过。LC
转载
2019-06-26 19:20:00
175阅读
2评论
先找到芯片的Reference manual手册,找到EEPROM的内存地址EERPOM定义#define EEPROM_BASE_ADDR 0x08080000 #define EEPROM_BYTE_SIZE 0x03FFvoid eeprom_test_write();void eeprom_test_read();这里使用的是一次写入4个字节//eeprom写测试void eepro
原创
2021-12-01 10:39:53
10000+阅读