Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
EEPROM
I2C_IIC
5
使用at24cxx读写的问题
发布于 2024-08-09 09:46:31 浏览:378
订阅该版
各位前辈,问个问题,就是我怎么将这个i给写进at24c02这个芯片里面呢? 上电再读取一次i的数值,应该怎么操作呢,还有一个问题就是后面两张图的软件包有啥区别嘛? ![c8999432d92541224c81de7ae5b5ccdc.png](https://oss-club.rt-thread.org/uploads/20240809/c8999432d92541224c81de7ae5b5ccdc.png) ![86d3bef1a93b8bda0cdfd59fa19e6021.png](https://oss-club.rt-thread.org/uploads/20240809/86d3bef1a93b8bda0cdfd59fa19e6021.png) ![711719bc40ec5e1df4bab5d557e65a52.png](https://oss-club.rt-thread.org/uploads/20240809/711719bc40ec5e1df4bab5d557e65a52.png)
查看更多
3
个回答
默认排序
按发布时间排序
yc961213911
2024-08-09
这家伙很懒
1、初始化IIC总线 2、初始化at24cxx 3、调用at24cxx.h里边的读写接口
梦笑真美
2024-08-09
这家伙很懒,什么也没写!
先初始化,在读写
菜鸟攻城狮
2024-08-09
这家伙很懒,什么也没写!
初始化IIC总线得时候报了这个错误,有知道是什么原因得嘛? ![1723201358618(1).jpg](https://oss-club.rt-thread.org/uploads/20240809/285bbd59daf427266f91e1bf985a057e.jpg) 下面这是我的代码#include
#include
#include
#include
#define EEPROM_I2C_BUS_NAME "i2c1" // 根据实际配置修改 I2C 总线名称 #define EEPROM_ADDR 0xA1 // AT24C02 的 地址 1010 0001 读 struct rt_i2c_bus_device *i2c_bus; #define LED1 GET_PIN(B,5) #define LED2 GET_PIN(B,8) int main(void) { at24cxx_device_t at24c02_dev; rt_hw_i2c_init_1(); at24c02_dev = at24cxx_init(EEPROM_I2C_BUS_NAME, EEPROM_ADDR); /* 初始化 AT24C02 EEPROM 设备 */ if (at24c02_dev == RT_NULL) { rt_kprintf("Failed to initialize AT24C02 EEPROM device.\n"); return -1; } rt_pin_mode(LED1, PIN_MODE_OUTPUT); rt_pin_mode(LED2, PIN_MODE_OUTPUT); uint8_t read_data[4];// 定义读取缓冲区 int q = 0;// 定义整数型变量 q 用于存储读取的结果 rt_err_t result = at24cxx_read(at24c02_dev, 0, read_data, sizeof(read_data));// 使用 at24cxx_read() 函数读取数据 if (result == RT_EOK) { // 将读取的字节序列重新组合成整数 q = ((read_data[0] << 24) & 0xFF000000) | ((read_data[1] << 16) & 0x00FF0000) | ((read_data[2] << 8) & 0x0000FF00) | (read_data[3] & 0x000000FF); rt_kprintf("Integer q read from AT24C02: %d\n", q); } else { rt_kprintf("Failed to read integer q from AT24C02.\n"); } while(1) { if(q <= 10) { rt_pin_write(LED1, PIN_LOW); q=q+1; } rt_thread_mdelay(1000); uint8_t data[4]; data[0] = (q >> 24) & 0xFF; // 存储 q 的最高字节 data[1] = (q >> 16) & 0xFF; data[2] = (q >> 8) & 0xFF; data[3] = q & 0xFF; // 存储 q 的最低字节 rt_err_t result = at24cxx_write(at24c02_dev, 0, data, sizeof(data)); if (result == RT_EOK) { rt_kprintf("Integer q written to AT24C02 successfully.\n"); } else { rt_kprintf("Failed to write integer q to AT24C02.\n"); } rt_pin_write(LED1, PIN_HIGH); rt_pin_write(LED2, PIN_HIGH); rt_thread_mdelay(1000); if (q > 10) { rt_pin_write(LED2, PIN_LOW); rt_thread_mdelay(5000); rt_pin_write(LED2, PIN_HIGH); q=0; } } return 0; } int rt_hw_i2c_init_1(void) { /* 查找 I2C 总线设备 */ i2c_bus = (struct rt_i2c_bus_device *)rt_device_find(EEPROM_I2C_BUS_NAME); if (i2c_bus == RT_NULL) { rt_kprintf("I2C bus %s not found!\n", EEPROM_I2C_BUS_NAME); return -RT_ERROR; } /* 初始化 I2C 总线 */ rt_i2c_bus_device_init(i2c_bus, EEPROM_I2C_BUS_NAME); rt_kprintf("I2C bus %s initialized OK!\n", EEPROM_I2C_BUS_NAME); return RT_EOK; }
撰写答案
登录
注册新账号
关注者
0
被浏览
378
关于作者
菜鸟攻城狮
这家伙很懒,什么也没写!
提问
10
回答
5
被采纳
0
关注TA
发私信
相关问题
1
NXP的I2C应该比ST的好用吧
2
Use of I2C device driver
3
关于I2C 驱动问题请教
4
我如何知道这个iic的io配置和我电路设计的是一致的?
5
I2C模拟读操作失败,不知道问什么进不去读函数
6
RTT的I2C有官方文档资料没有
7
求 STM32F103 IIC 自定义IO初始化 代码
8
报一个LPC4008代码中I2C的bug
9
RTOS IIC总线使用
10
关于在RTT中使用STM32 I2C的疑问
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
国产MCU移植系列教程汇总,欢迎查看!
4
机器人操作系统 (ROS2) 和 RT-Thread 通信
5
五分钟玩转RT-Thread新社区
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
RT-Thread项目助手v0.2.0 - 支持Env Windows
2
RttreadV5.10上,GD32F450Z RTC时间显示问题
3
rt-smart启动流程分析
4
EtherKit快速上手PROFINET
5
RTThread USB转串口无法接收数据
热门标签
RT-Thread Studio
串口
Env
LWIP
SPI
AT
Bootloader
Hardfault
CAN总线
FinSH
ART-Pi
USB
DMA
文件系统
RT-Thread
SCons
RT-Thread Nano
线程
MQTT
STM32
RTC
FAL
rt-smart
ESP8266
I2C_IIC
UART
WIZnet_W5500
ota在线升级
PWM
cubemx
flash
freemodbus
BSP
packages_软件包
潘多拉开发板_Pandora
定时器
ADC
flashDB
GD32
socket
编译报错
中断
Debug
rt_mq_消息队列_msg_queue
SFUD
msh
keil_MDK
ulog
MicroPython
C++_cpp
本月问答贡献
出出啊
1517
个答案
342
次被采纳
小小李sunny
1444
个答案
290
次被采纳
张世争
813
个答案
177
次被采纳
crystal266
547
个答案
161
次被采纳
whj467467222
1222
个答案
149
次被采纳
本月文章贡献
出出啊
1
篇文章
2
次点赞
小小李sunny
1
篇文章
1
次点赞
张世争
1
篇文章
3
次点赞
crystal266
2
篇文章
2
次点赞
whj467467222
2
篇文章
2
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部