草庐IT

IIC_wr_eeprom

全部标签

STM32MX配置EEPROM(AT24C02)------保姆级教程

————————————————————————————————————⏩大家好哇!我是小光,嵌入式爱好者,一个想要成为系统架构师的大三学生。⏩最近在开发一个STM32H723ZGT6的板子,使用STM32CUBEMX做了很多驱动,包括ADC、UART、RS485、EEPROM(IIC)、FLASH(SPI)等等。⏩本篇文章对STM32CUBEMX配置RRPROM(AT24C02)做一个详细的使用教程。⏩感谢你的阅读,不对的地方欢迎指正。————————————————————————————————————EEPROMAT24C02工作原理实验环境MX配置驱动代码测试结果AT24C02工作原

STM32之I2C对EEPROM 页读写、连续读写操作

页写入原理stm32的EEPROM(24C02)的一页只有8个字节 组织架构是256*8bits =2k(bits) 步骤:1、起始信号2、检查总线是否忙碌3、发送EEPROM设备地址和发送方向4、发送要写入的单元格地址5、开始发送数据6、发送完响应noack停止发送  7、结束信号注意:以上的每一步都需要响应EV事件代码//-----------------------对EEPROM进行页写入----------------------------------//buffer:要写入的缓冲区数据//addr:要写入的单元格地址//num :要写入的数据数量不能超过页大小8位uint16_tE

ARM IIC总线实现温湿传感器

IIC.h#ifndef__IIC_H__#define__IIC_H__#include"stm32mp1xx_gpio.h"#include"stm32mp1xx_rcc.h"/*通过程序模拟实现I2C总线的时序和协议*GPIOF--->AHB4*I2C1_SCL--->PF14*I2C1_SDA--->PF15***/#defineSET_SDA_OUTdo{GPIOF->MODER&=(~(0x3MODER|=(0x1MODER&=(~(0x3BSRR|=(0x1BRR|=(0x1BSRR|=(0x1BRR|=(0x1IDR&(0x1IIC.c#include"iic.h"extern

STM32软件模拟实现IIC写入和读取AT24C02(STM32CubeMx配置)

模拟IIC原理了解IIC总线协议AT24C02器件STM32CubeMx配置工程生成及代码编写工程生成代码编写延时函数delay.c编写delay.h编写IIC函数实现IIC起始信号IIC停止信号应答信号数据的发送及读取iic函数头文件AT24C02的写/读函数AT24C02写函数AT24C02读函数main函数编写实现效果原理了解IIC总线协议IIC:InterIntegratedCircuit,集成电路总线,是一种同步串行半双工通信总线。在使用IIC时分为硬件IIC以及软件IIC,下图为两者的区别:在使用IIC前先来了解一下IIC总线结构图,即下图:从图中可以看出IIC有两个双向信号线,一

ESP8266使用EEPROM的正确方式

EEPROM其实是一个EEPROMClass类的实例,其定义如下#if!defined(NO_GLOBAL_INSTANCES)&&!defined(NO_GLOBAL_EEPROM)externEEPROMClassEEPROM;#endif从这里可以看出只要没有定义NO_GLOBAL_INSTANCES和NO_GLOBAL_EEPROM那么便会定义EEPROM。·对于这个类的实现其实很简单,但是通过阅读代码,其实它总是被缓存的。也就是说你的读写总是在内存进行的。它的标准步骤如下:EEPROM.begin ->EEPROM.read或者EEPROM.write->EEPROM.end中间的r

基于FPGA的I2C协议——以EEPROM为例

基于FPGA的I2C协议------以EEPROM为例文章目录基于FPGA的I2C协议------以EEPROM为例一、I2C硬件层二、I2C协议简介三、程序讲解1.程序目标2.状态机图示3.代码讲解总结一、I2C硬件层1、I2C为双线总线接口,仅有SCL(时钟线)、SDA(数据线)两根线。2、其中两根线均为开漏输出,均无输出高电平的能力,需要外界上拉电阻来输出高电平,SCL、SDA在空闲状态为高阻态。3、在一个I2C通讯总线中,可连接多个I2C通讯设备,支持多个通讯主机及多个通讯从机。每个连接到总线的设备都有一个独立的地址,主机可以利用这个地址进行不同设备之间的访问。4、传输速率标准模式下可

0.96寸OLED显示屏标准库移植HAL库(模拟IIC) - 基于STM32

**0.96寸OLED显示屏标准库移植HAL库,使用模拟IIC**由于项目的需要使用OLED屏显示,并且现有的项目程序是基于HAL库编写的,而手头能找到的程序是标准库的驱动程序,大概看了一下代码,比较简单,涉及到不同库之间需要改动的代码很少。代码下载链接:点击此处下载驱动代码首先去LCDWiKi网站(链接)下载基于0.96寸OLED屏的IIC驱动代码,这个网站包含了常用显示模块的驱动代码,十分方便,本次我选择的是0.96inchOLEDModuleSKU:MC096GX。下载后只需要oled屏的oled.c、oled.h和oledfont.h代码,但是需要改动如下几个地方的代码首先是oled.

S32k1xx系列mcu eeprom和flash的使用方法

本文浅谈S32k1xx系列mcu的memory结构以及如何快速使用nxp官方使用的sdk对其eeprom和flash进行快速使用。一.memory结构:如数据手册所示,S32k1xx系列mcu的memory结构由几个方面组成:P-flash(用于代码存储),Data-flash(NVM),以及一个flexram(可用于模拟EE或作为普通的ram使用)。每个型号的各个memory大小不同,11x系列较小,14x系列较大。 二.eeprom的使用方法: 使用方法为将flexram配置为EE,同时要划分一部分区域的NVM给与EE进行备份存储。划分NVM和RAM的大小需要寄存器进行配置。这里拿S32K

EEPROM芯片(24c02)使用详解(I2C通信时序分析、操作源码分析、原理图分析)

1、前言(1)本文主要是通过24c02芯片来讲解I2C接口的EEPROM操作方法,包含底层时序和读写的代码;(2)大部分代码是EEPROM芯片通用的,但是其中关于某些时间的要求,是和具体芯片相关的,和主控芯片和外设芯片都有关系,需要具体分析,但是逻辑顺序是不变的;2、EEPROM介绍(1)在嵌入式开发中,EEPROM的实际场景比闪存flash少很多。EEPROM芯片容量小,flash容量大,并且flash价格便宜;(2)EEPROM的读写速度一般比flash慢;(3)EEPROM大多是I2C接口,占用的引脚比flash少;(4)EEPROM比flash掉电保存数据的时间更久,总体来说就是更稳定

STM32 使用硬件IIC驱动0.96寸4针IOLED显示器(HAL库)

OLED显示屏驱动HAL库一、简介:SSD1306是一个单片CMOSOLED/PLED驱动芯片可以驱动有机/聚合发光二极管点阵图形显示系统。由128segments和64Commons组成。该芯片专为共阴极OLED面板设计。SSD1306中嵌入了对比度控制器、显示RAM和晶振,并因此减少了外部器件和功耗。有256级亮度控制。数据/命令的发送有三种接口可选择:6800/8000串口,I2C接口或SPI接口。适用于多数简介的应用,注入移动电话的屏显,MP3播放器和计算器等。详细介绍以及工作原理:链接:https://pan.baidu.com/s/1nz1MpdP5-o-kRXF9mfZmig提取