首页 > 编程语言 >(11.3)iic串口读写EEPROM实验:程序设计

(11.3)iic串口读写EEPROM实验:程序设计

时间:2024-06-17 20:55:57浏览次数:14  
标签:信号 读写 11.3 sda iic 串口 i2c EEPROM out

一、实验任务

二、架构框图

  其中:

  i2c驱动模块:

  

   bit_ctrl:0代表发送8位字节地址;1代表发送16位字节地址(本实验采用)

  i2c_addr[15:0]:16位字节地址,当bit_ctrl为0时只有低8位是有效的

  i2c_data_w[7:0]:向EEPROM写入的8位数据

  i2c_exec:拉高代表当前进行一次i2c的读操作或写操作

  i2c_rh_wl:i2c_exec拉高之后,若为高电平则进行一次读操作,低电平则进行一次写操作

  dri_clk:输出的一个低频时钟

  i2c_ack:应答信号,用于指示i2c器件有没有应答(在读写器件,必须所有要求的应答位都应答,最终输出的ack才为0)

  i2c_data_r[7:0]:EEPROM读出的8位数据

  i2c_done:当前信号操作完成后信号拉高

  scl、sda:连接到从器件的两根引脚

  用于控制u_i2c_dri模块,在读取的过程中会判断读取的值和写入的值是否一致,输出rw_done(读写操作完成)与rw_result(读写操

三、状态机图

四、FPGA内部三态门

  当sda_dir为高电平时,sda_out与sda信号直连;为低电平时,代表将sda信号作为输入,不让sda_out信号驱动,此时sda_out与sda之间是一个高阻的状态,相当于断开了,断开之后可以通过sda_in引脚读取sda的信号

  因此,sda_out用于主机向EEPROM从机写入数据;sda_in用于主机从从机EEPROM读取数据

五、代码

  略,位置位于资料目录“F:\【新资料-Vivado_2020.2-已完结】正点原子FPGA达芬奇Pro A7开发板资料(A盘)\4_Source_Code\1_Verilog\35T\25_top_e2prom”

 

标签:信号,读写,11.3,sda,iic,串口,i2c,EEPROM,out
From: https://www.cnblogs.com/liwilling/p/18253113

相关文章

  • DSP技术及应用的综合项目:串口与按键控制直流电机运行及液晶屏显示状态 芯片是TMS320F2
    目录绪论串口与按键控制直流电机运行及液晶屏显示状态一、实验目的及要求二、实验原理三、实验软硬件环境四、实验过程(实验步骤、记录、数据、分析)五、测试/调试及实验结果分析六、实验结论与体会内容说明参考资料绪论随着科技的飞速发展,数字信号处理器(DSP)在现代......
  • STM学习记录(六)————串口的发送接收
    文章目录前言一、串口结构体及库函数二、实现串口发送(库函数)1.程序设计2.代码三.串口接收1.串口接收(普通)2.串口中断接收3.串口发送字符串函数4.串口实现printf(重定向)5.串口实现scanf(重定向)前言一个学习单片机的小白~有错误评论区或私信指出~一、串口结构体及......
  • 上位机图像处理和嵌入式模块部署(h750 mcu和usb虚拟串口)
    【 声明:版权所有,欢迎转载,请勿用于商业用途。联系信箱:[email protected]】    对于mcuusb而言,大部分情况下,它和上位机之间的关系都是device的关系。一般usb,可以成成host和device。如果mcu是host,那么意味着它可以主动访问别的usb设备,比如u盘、相机之类的设备。如......
  • 51单片机有开发板A和开发板B,通过串口,实现开发板A的按键,控制开发板B的LED亮灭。
    1、功能描述有开发板A和开发板B,通过串口,实现开发板A的按键,控制开发板B的LED亮灭。2、实验原理1.串口通信(UART)串口通信是一种异步通信方式,它允许单片机通过两条线(发送线TX和接收线RX)进行数据传输。在51单片机中,串口通信是通过两个主要寄存器(SCON、SMO/SM1)和中断(RI、TI)......
  • NG32031单片机串口初始化
    目录1.串口基础2.串口配置步骤3.N32G031串口初始化示例3.1开启时钟3.2 配置GPIO3.3 配置USART3.4 使能中断(如果需要)    3.5. 示例代码4.调试和验证5.注意事项6.额外功能NG32G031单片机的串口(UART)通常用于与外部设备或计算机进行串行通信。以下......
  • 学习日志-C51-串口通信
    学习日志-C51-串口通信串口控制LED灯亮灭1.常见通信串口比较分类1:单工:只能由甲向乙传输信号,一根传输线。半双工:数据可以在双方传输,但同一时刻只能单方传输,发送数据的同时不能接收数据,一根传输线。全双工:数据可以在双方传输,发送数据的同时也能接收数据,需两根传输线。......
  • 串口收发UART(Verilog HDL)
    UART(UniversalAsynchronousReceiverTransmitter,通用异步收发器)是一种异步串行通信协议,主要用于计算机和嵌入式系统之间的数据交换。实现UART通信的接口规范和总线标准包括RS-232、RS449、RS423和RS485等,接口标准规定了通信标准的电气特性、传输速率、连接特性和机械特性。文......
  • 单片机学习(9)--串口
    串口8.1串口通信1.串口介绍2.硬件电路3.电平标准4.接口及引脚定义5.常见通信接口比较6.相关术语6.51单片机的UART7.串口参数8.串口模式图8.串口和中断系统9.串口相关寄存器8.2串口向电脑发送数据,电脑通过串口控制LED1.串口向电脑发送数据程序(1)工程目录(2)main.c函数(3)UART......
  • 串口通信GPT
    目录硬件层面串口通信的基本原理是什么?常见的串口通信协议有哪些?硬件层面如何连接两个设备进行串口通信?需要哪些硬件支持?RS-232与RS-485的区别?软件层面如何在编程中实现串口通信?如何配置串口参数以确保通信正常?数据处理如何处理串口通信中的数据丢失或错误?如何处理......
  • 细说ARM MCU的串口接收数据的实现过程
    目录一、硬件及工程1、硬件2、软件目的3、创建.ioc工程二、代码修改1、串口初始化函数MX_USART2_UART_Init()(1)MX_USART2_UART_Init()串口参数初始化函数(2)HAL_UART_MspInit()串口功能模块初始化函数2、串口中断的执行过程3、启动串口接收中断4、自动生成main函数5......