嵌入式设计与开发项目-AT24C02存储器应用程序设计(I2C协议实战应用)

      最后更新:2022-04-18 02:19:18 手机定位技术交流文章

      AT24C02 内存应用设计

      • 一、实现的功能
      • 二. 根据职能执行守则
        • 第1号主要文件.c/
        • 2 I2C 标题"i2c"H
        • 3; I2c 源代码“i2c.c”)
      • 获得功能过程中的焦点和学习点
        • 1、注意点
        • 2、学习的知识点

      一、实现的功能

      • 1 储存在 AT24C02 内存中的256 字节;
      • 2 读取以 AT24C02 byte 书写的数据;
      • 3 打印 AT24C02 在一个序列端口上储存的数据。
      • {fn黑体fs22bord1shad03aHBE4aH00fscx67fscy662cHFF3cH808080}不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,不,在这里插入图片描述

      二. 根据职能执行守则

      第1号主要文件.c/

      主函数分析:❤️ ❤️ ❤️

      1. (c) 在使用不同的外部环境之前,先调用诸如KEY、LED、LCD、USART2和i2c等初始化功能。
      2. 将16*16字节(即256字节)写到 AT24C02, 然后读取 AT24C02 的内容, 将其保存在数组中, 用于序列打印输出 ;

      2 I2C 标题"i2c"H

      简要分析:❤️ ❤️

      1. (a) 基础初始化脚步模式、 I2C 启动、 I2C 停止、 I2C 主机回答、 I2C 主机不应回答;
      2. 中间一级I2C从I2C主机提供一个字节数据,并从I2C主机接收一个字节数据。
      3. AT24C02 一个特定地址的高级数据ucBuf, ucBuf, ucNum byte at ucAddr;

      3; I2c 源代码“i2c.c”)

      简要分析:❤️ ❤️

      1. (a) 推动输出模式SCL和SDA初始化,并准备由SDA设定的初始化功能,即推输出和投放模式;
      2. SCK和SDA产出高、低水平的操作被封装,SDA接受者准备接收来自机器的信号。
      3. 以I2C原则为基础的国际投资协定概念可能与UART、RS-232、RS-422、RS-485、CAN、IIC和SPI有关,这些概念经常用于嵌入的物体网络。
      4. (a) SCL时钟和SDA信号线通常将粗误误差定为4秒,其主要后果是IIC通信速度;
      5. 通过 I2C 接口传输一字节的数据 。I2CSendByte(unsigned char cSendByte);
      • 先把SCL时钟线拉低,然后判断cSendByte字节的第8位与1进行&(与运算)等于1,如果是则SDA输出高电平1,否则输出低电平0;
      • 然后,在CSendByte法官的第七个职位上,SCL出口高水平能源,锁定SD数据并传输SD数据;
      • 重复上述程序,直到发出八个数据点为止。
      • 请记住, 字节数据位于前方高位, 且在 ICC 发送时落后度低!
      1. 从 I2C 公共汽车上获取一字节的数据 。unsigned char I2CReceiveByte(void);函数
      • 指定两种Char类型:i,记录收到的数字数;cR_Byte,记录收到的数字数;cR_Byte,接收每一项IIC数据。
      • 设置SDA数据线为下拉输入模式,如果机器或主机不响应,SDA将获得高水平的输入模式。
      • (b) 八次四舍五入以获得一字节数据,而SCL最初提供低水平0,等待答复的时间大约为8秒左右,然后为获得SDA的水平状况出口高层次数据,并将数据记录在可变的cR_Byteretrieve八次以获得一字节数据,SCL最初提供低水平0,等待答复的时间大约为8秒左右,然后出口高层次数据以获得SDA的水平状况,并将数据记录在可变的cR_Byte。
      • 最后,CR_Byte将一个移到左边,重复前几个阶段。
      1. I2c_read (未签名的char *pucBuf, 未签名的char ucAddr, 未签名的ucNum) AAT24C02 接收驱动程序
        在这里插入图片描述
      • 启动 IIC 通信, 并让主机在等待机器响应时将 AT24C02 内存和 A0 传输为 0xA0 选择设备的位置 。
      • 系统在等待回复时发送地址 ucAddr 。
      • 重新打开 ICC 联系人并传输从机器数据地址读取的 0xA1 数据,同时等待机器回复;
      • 主机收集从机器提供的数据,并将数据从ucNum字节存储到指针变量;如果没有收到 ucNum 字节数据,主机发出响应信号;否则,终止与国际独立调查委员会的联系。
      1. I2c_ write( 未签名的 AT24C02 存储区的 Char*pucBuf, 未签名的char ucAddr, 未签名的char ucNum) 驱动程序
      • 启动 IIC 通信, 并让主机在等待机器响应时将 AT24C02 内存和 A0 传输为 0xA0 选择设备的位置 。
      • 系统在等待回复时发送地址 ucAddr 。
      • 主机传输机器 ucNum byte 数据 pucBuf, 每个数据发布都等待机器回复, 之后终止与国际独立调查委员会的联络 。

      获得功能过程中的焦点和学习点

      1、注意点

      1. 在减少低高度时,国际独立调查委员会的时钟线SCL和数据线SDA应调整为4x延迟。
      2. 当对机器数据作出反应或接收机器数据时,将数据线SDA设置为下向输入模式,在收到数据后,将SDA设置为输出模式。
      3. 为了避免数据误译,在传输和接收数据时,时钟线会降低。

      2、学习的知识点

      1. 根据国际独立调查委员会通信议定书的原则制定国际独立调查委员会驱动码,随后设立AT24C02应用功能,以改进对国际独立调查委员会的理解和执行;
      2. (b) 控制I2C的启动、停止、数据传输以及对SCL和SDA变化的反应;
      3. SDA展示了对主机的高度学习,而不是对计算机的响应。
      4. I2C 协议数据访问 AT24C02;
      5. 左边一个为 *2,右边一个为 / 2;
        ❤️ ❤️ ❤️ ❤️ ❤️ ❤️

      本文由 在线网速测试 整理编辑,转载请注明出处,原文链接:https://www.wangsu123.cn/news/22455.html

          热门文章

          文章分类