随笔分类 - 自学嵌入式:stm32单片机
摘要:目录实时时钟接线图代码实现标准库实现MYRTC.hMYRTC.cmain.cHAL库实现rtc.hrtc.cmain.c实现效果 实时时钟 接线图 我使用的是硬件I2C,但是我和江科大的代码有所不同,我的代码在读RTC的时候,有一个等待同步的过程,如果不等待同步,我这里就会出现stm32死机现象 这
阅读全文
摘要:目录读写备份寄存器接线图代码实现标准库实现Key.cmain.cHAL库实现Key.cmain.c实现效果 读写备份寄存器 接线图 这是江科大的接线图,我的版本还是使用硬件I2C与OLED屏幕通信,由于用的是硬件I2C2,所以按键键码值只读取GPIO_Pin_1就行,PB11被占用用来发送I2C信号
阅读全文
摘要:目录RTC实时时钟RTC实时时钟简介RTC框图寄存器相关中断相关APB1总线相关退出待机模式RTC基本结构硬件电路RTC操作注意事项RTC秒、闹钟和溢出时序图手册中有关寄存器的内容RTC控制寄存器RTC预分频器重装载寄存器RTC预分频器余数寄存器RTC计数器寄存器RTC闹钟寄存器 RTC实时时钟 R
阅读全文
摘要:目录BKP备份寄存器BKP基本介绍BKP基本结构 BKP备份寄存器 BKP基本介绍 BKP(Backup Registers)备份寄存器 BKP可用于存储用户应用程序数据。当VDD(2.03.6V)电源被切断,他们仍然由VBAT(1.83.6V)维持供电。当系统在待机模式下被唤醒,或系统复位或电源复
阅读全文
摘要:Unix时间戳 Unix时间戳简介 Unix 时间戳(Unix Timestamp)定义为从UTC/GMT的1970年1月1日0时0分0秒开始所经过的秒数,不考虑闰秒 时间戳存储在一个秒计数器中,秒计数器为32位/64位的整型变量 世界上所有时区的秒计数器相同,不同时区通过添加偏移来得到当地时间 U
阅读全文
摘要:目录硬件SPI读写W25Q64接线图代码实现标准库实现MYSPI.hMYSPI.cW25Q64.hW25Q64.cmain.cHAL库MYSPI.hMYSPI.cW25Q64.hW25Q64.cmain.c实现效果关于为什么标准库是先等待DMA硬件标志后传数据而HAL库是先传数据后等待SPI状态机标
阅读全文
摘要:目录SPI通信外设SPI通信外设简介SPI框图数据寄存器和移位寄存器配合的过程控制逻辑SPI基本结构主模式全双工连续传输非连续传输软件/硬件波形对比软件波形硬件波形 SPI通信外设 SPI通信外设简介 STM32内部集成了硬件SPI收发电路,可以由硬件自动执行时钟生成、数据收发等功能,减轻CPU的负
阅读全文
摘要:目录软件SPI读写W25Q64代码实现标准库实现MYSPI.hMYSPI.cW25Q64.hW25Q64.cmain.cHAL库实现main.c实现效果 软件SPI读写W25Q64 我用硬件I2C读取OLED屏幕,采用I2C2接口,对应的OLED屏幕的SCL SDA接入到PB10和PB11,和他的接
阅读全文
摘要:目录W25Q64简介硬件电路W25Q64框图块Block扇区Sector页PageSPI控制逻辑状态寄存器写控制逻辑高电压生成器页地址锁存/计数器与字节地址锁存/计数器256字节页缓存区Flash操作注意事项状态寄存器BUSY 位写使能锁存(WEL)W25Q64 SPI指令集设备验证指令集指令集表1
阅读全文
摘要:目录SPI通信协议SPI协议基本介绍硬件电路移位示意图SPI时序基本单元SPI时序发送指令指定地址写指定地址读 SPI通信协议 关于SPI通信,也可参考我这篇文章:https://www.cnblogs.com/qinruiqian/p/19023950 SPI协议基本介绍 SPI(Serial P
阅读全文
摘要:目录硬件I2C读写MPU6050接线图代码实现标准库实现HardI2C.hHardI2C.cMPU6050.cMYOLED.cmain.cHAL库实现MPU6050.hMPU6050.cMYOLED.hMYOLED.cmain.c实现效果 硬件I2C读写MPU6050 接线图 这是江科大版本的接线图
阅读全文
摘要:目录I2C通信外设I2C通信外设介绍I2C框图引脚复用SDA数据发送数据接收比较器、自身地址寄存器、双地址寄存器、帧错误校验计算和帧错误校验寄存器SCLI2C基本结构主机发送主机接收软件I2C与硬件I2C波形对比软件I2C波形硬件I2C波形 I2C通信外设 I2C通信外设介绍 STM32内部集成了硬
阅读全文
摘要:目录软件I2C读写MPU6050接线图代码实现标准库实现MPU6050.hMPU6050_Reg.hMPU6050.cmain.cHAL库实现实现效果 软件I2C读写MPU6050 接线图 MPU6050的模块内部自带上拉电阻,所以外部不需要接上拉电阻,目前STM32是主机,MPU6050是从机,是
阅读全文
摘要:目录MPU6050MPU6050简介MPU6050参数硬件电路MPU6050框图时钟和传感器传感器的自测单元电荷泵寄存器和通信接口常用寄存器采样频率分频器SMPRT_DIV配置寄存器CONFIG陀螺仪配置寄存器GYRO_CONFIG加速度计配置寄存器ACCEL_CONFIG加速度计数据寄存器温度传感
阅读全文
摘要:目录I2C通信协议硬件电路I2C时序基本单元I2C时序指定地址写当前地址读指定地址读 I2C通信协议 I2C通信更详细内容见:https://www.cnblogs.com/qinruiqian/p/19017678 I2C(Inter IC Bus)是由Philips公司开发的一种通用数据总线 两
阅读全文
摘要:串口收发文本数据包 接线图 接收文本数据包状态图 代码实现 标准库实现 已开源到:https://gitee.com/qin-ruiqian/jiangkeda-stm32 Serial.h #ifndef __SERIAL_H #define __SERIAL_H #include <stdio.
阅读全文
摘要:目录串口收发HEX数据包接线图接收数据的状态图代码实现标准库实现Serial.hSerial.cmain.cHAL库实现Serial.hSerial.cmain.c实现效果 串口收发HEX数据包 接线图 接收数据的状态图 代码实现 标准库实现 已开源到:https://gitee.com/qin-r
阅读全文
摘要:目录USART串口数据包HEX数据包数据和包头包尾冲突的办法无法避免载荷数据和包头包尾重复的问题固定包长和可变包长的选择问题各种数据转换为字节流的问题文本数据包HEX数据包接收文本数据包接收 USART串口数据包 HEX数据包 此处以FF为包头,FE为包尾 数据和包头包尾冲突的办法 限制载荷数据的范
阅读全文
摘要:目录串口发送+接收接线图代码实现标准库实现Serial.hSerial.cmain.cHAL库实现Serial.hSerial.cmain.c实现效果 串口发送+接收 接线图 代码实现 标准库实现 已开源到:https://gitee.com/qin-ruiqian/jiangkeda-stm32
阅读全文
摘要:目录串口发送接线图引脚定义数据模式代码实现标准库实现Serial.hSerial.cmain.cHAL库实现Serial.hSerial.cmain.c实现效果 串口发送 接线图 引脚定义 USART1的TX是PA9,RX是PA10,我们要用USART进行通信,所以就选这两个脚 数据模式 HEX模式
阅读全文
浙公网安备 33010602011771号