tag 标签: i2c通信

相关博文
  • 热度 12
    2015-8-3 17:00
    1045 次阅读|
    0 个评论
    I2C 通信 本实验有两个模块 iic_com 和 led_seg7 , iic_com 为 I2C 协议, led_seg7 为数码管的显示( `define WRITE_DATA 8'b0100_1001 // 写入 EEPROM 的数据 数据为 49 ),显示即为 WRITE_DATA 值。 本实验的目的了解 AT24C02 的 I2C 协议, I2C 通信中涉及两条信号线,即时钟线 SCL 和数据线 SDA, 时序如下: PS: 本实验是通过 随机读时序 来编程的。程序主要是根据 SCL 和 SDA 的时序关系来书写程序。 器件地址( DEVICE ADDRESS )的定义如图: 最低位 R/W 表示读或者写状态, 1 表示读, 0 表示写。 由 AT24C02 的电路图: 可知, A2,A1,A0 均为 0 ,故有 `define DEVICE_READ 8'b1010_0001 // 被寻址器件地址(读操作) `define DEVICE_WRITE  8'b1010_0000 // 被寻址器件地址(写操作) Iic_com.v : // 计数器 ,// 当计数满时,锁存按键值(注意:按键的初值为高电平)  //cnt_delay500 计数循环,为 iic 提供时钟 // cnt=0:scl 上升沿, cnt=1:scl 高电平中间, cnt=2:scl 下降沿, cnt=3:scl 低电平中间  // 使能信号 start 赋值 // 读、写时序 Led_seg7: 略(数码管的显示电路)