找回密码
 注册
关于网站域名变更的通知
查看: 2494|回复: 3
打印 上一主题 下一主题

I2C-Master Core Specification中Transmit register与Receive register应该如何理解? ...

[复制链接]
  • TA的每日心情
    擦汗
    2020-1-14 15:59
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2008-12-29 22:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    I2C-Master Core Specification中Transmit register与Receive register应该如何理解?
    0 W5 n1 G2 [! A1 x
    ! k, a8 j  ~' e" e- K7 Nopencore的I2C-Master Core Specification中
    / s+ O0 N: O! h+ P7 XTransmit register与Receive register应该如何理解?3 c4 r# I* v/ X2 q& ?
    Transmit register是不是用来保存从器件地址吧?
    * Z$ u" W: W, g8 _6 E  L看文档中写着7:1定义是Next byte to transmit via I2C! u2 v% u4 s0 _, x7 s# q1 ~' r
    第0位的定义则是:
    . u7 s* E9 `; K8 e' ?/ DIn case of a data transfer this bit represent the data’s LSB.
    # Y1 w6 C6 l$ ~( }2 |In case of a slave address transfer this bit represents the RW bit.& ?: Y, M6 O( T; A
    ‘1’ = reading from slave
    " ?# `' c+ h2 m: e+ w‘0’ = writing to slave
    3 z; T" v; i" |( z/ h; T1 l# t- L( @& D9 o! O. k" b$ F& Y+ J
    给我的感觉是不是这个传输寄存器只记录从器件地址,最末位用来设置读写控制的吧?! c- P" u# G9 J% p
    1 _+ ?. f8 I7 D
    后面的操作状态机 第一步会先读这个传输寄存器 然后再进行读写移位寄存器里面的数据吧?
    8 E) A& `+ J/ C5 G1 a; |
    ) _0 [  `3 i  Z- v( V  i) O2 K那个Receive register就有点看不明白了
    " K1 o" i# i  j, `3 g4 g9 @9 v4 Y; \看定义是Last byte received via I2C
      b. d8 I0 U6 q看代码也一下没看明白
    3 {% r. W7 e" r6 ~, v) C
    3 M7 j' ?& T/ _) M1 E谁解释一下吧
  • TA的每日心情
    擦汗
    2020-1-14 15:59
  • 签到天数: 1 天

    [LV.1]初来乍到

    2#
     楼主| 发表于 2008-12-30 18:40 | 只看该作者
    在这个模块中wb_adr_i是不是只是作为寄存器地址来使用的了
    * ?7 w, l+ D3 @7 ~9 g* K( A; ]  p3 w6 Q6 d/ u, l! E- T  z$ @
    见代码中:
    " d* _4 [+ ]3 o5 \case (wb_adr_i) // synopsis parallel_case
    / W8 e, v& d" w* k" L0 ~3'b000 : prer [ 7:0] <= #1 wb_dat_i;
    . v( K2 k$ p- e& l* r1 n7 u3'b001 : prer [15:8] <= #1 wb_dat_i;
    0 _6 u0 M! L  e* \3'b010 : ctr <= #1 wb_dat_i;/ x  H* M' w: f
    3'b011 : txr <= #1 wb_dat_i;/ m; d! y1 y! X6 ]" t$ b& |9 s
    default: ;
    , s( N+ ~( c( Q% P/ ~8 K' d9 yendcase
    % ?5 b- J  S9 e, U: y: A1 G% k
    ! p1 f& L- V9 J4 V3 S. j按照这意思就是# C# R. i" s' p3 i0 h$ S
    使用到的寄存器 通过这个wb_adr_i来选择
    8 }! m3 g9 t/ T! N外部控制器发地址3'b000( ]% y4 A: p" u3 m8 t
    就是告诉I2C-Master Core 我要给你发Clock Prescale register的参数了
  • TA的每日心情
    擦汗
    2020-1-14 15:59
  • 签到天数: 1 天

    [LV.1]初来乍到

    3#
     楼主| 发表于 2008-12-31 20:58 | 只看该作者
    见一个资料里面写的:
    " l3 Q) _5 J7 n# W9 }! cI2C 总线写命令格式如下:
    " c2 V3 a; k3 I    写信号:<Start><Write Slave Address+Write Bit><Ack><Register Index><Ack><Data><Ack> …… <Stop>
    " B7 d* F: }, E
    ; W9 b7 X8 l% [+ ~
    ( P) N& S, t# _5 i但是见opencore的spec中
    " e0 D' E: \! e% U好像是  d) f8 }& H7 U5 a( v$ c  T) [
    $ K0 O4 L) b: }
       <Start><Write Slave Address+Write Bit><Ack>Data><Ack> …… <Stop>

    该用户从未签到

    4#
    发表于 2009-9-25 14:40 | 只看该作者
    你好,我是一名初学者,由于要用到i2c,所以……很头疼,可不可以把i2c core给小弟传一份啊,无比感谢; P+ t1 V9 h% I0 P; ]+ P
    邮箱:chris_0403@163.com! ^" j5 r& f: E1 X! d& k
    如果方便的话,谢谢了
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-7-19 10:57 , Processed in 0.125000 second(s), 24 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表