在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 4298|回复: 15

[求助] 如何用verilog实现以下功能

[复制链接]
发表于 2017-7-12 15:38:13 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

x

I2C

I2C
发表于 2017-7-12 15:53:30 | 显示全部楼层
assign cam_scl1 = cam_i2c_scl;
assign cam_scl2 = cam_i2c_scl;
     ...
assign cam_scl8 = cam_i2c_scl;

always@(*)
begin
   case(mux) begin
       3'd0 :  begin
                     cam_sda_master_out <= cam_sda1_slave_in;
                     cam_sda1_slave_out  <= cam_sda_master_in;
                   end
       3'd1 :  begin
                     cam_sda_master_out <= cam_sda2_slave_in;
                     cam_sda2_slave_out  <= cam_sda_master_in;
                   end
          ...
       3'd7 :  begin
                     cam_sda_master_out <= cam_sda8_slave_in;
                     cam_sda8_slave_out  <= cam_sda_master_in;
                   end  
      end ;               
end
然后 cam_sda_master_out /in 通过三态门连接master端
       cam_sda1_slave_in/out 通过三态门连接8个slave端

希望能有帮助
 楼主| 发表于 2017-7-12 16:07:53 | 显示全部楼层
2222.png 回复 2# 冲出藩篱

我想用FPGA 替换MUX芯片
发表于 2017-7-12 17:57:14 | 显示全部楼层
用CD4066就可以了,有必要用这么贵的东西吗?
 楼主| 发表于 2017-7-12 17:59:03 | 显示全部楼层
回复 4# 吾要单片机

这是一个大项目的一小部分,用FPGA一个个取代电路中的器件
 楼主| 发表于 2017-7-12 18:01:35 | 显示全部楼层
如果SDA的数据格式是不变的,那么我是否可以通过寻址的方式来实现,这样的话,SDA又是如何变化的呢
发表于 2017-7-12 18:17:37 | 显示全部楼层
我认为你想要简单的切换是不行,可行的办法是自己设计一个多端口的IIC,才能解决你的问题
发表于 2017-7-12 19:04:19 | 显示全部楼层
回复 3# jiannanc

手册中的9.2的系统框图画的非常清楚了。从I2Cbus中解析出mux寄存器来,然后去控制8个slave的选通。
如果是FPGA的话,建议用一个低速的时钟来透传SCA和SDA,这样的话,时序有保证。
发表于 2017-7-12 19:35:21 | 显示全部楼层
本来IIC总线是支持1拖n的,给每个从机分配地址就行了
发表于 2017-7-12 19:46:12 | 显示全部楼层
说的再细点,希望有帮助
1.CPU发地址给9个slave (TCA9548也算一个),解析到地址后,TCA9548把SDA拉低(占住总线)。
2.disable 8个slave。
3.TCA9548 release SDA, CPU会继续发command(配置该选通的slave),TCA9548解析command得到mux寄存器。TCA9548把SDA拉低(占住总线)。
4.enable 选通的slave.
5.TCA9548 release SDA.
6.通路建立,TCA9548监控SDA_IN,遇到CPU再发地址的话,重复步骤1
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-23 16:30 , Processed in 0.021857 second(s), 8 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表