当前位置:首页 > 工业控制 > 工业控制
[导读]摘要:详细介绍一种I2C控制IP的工作原理及其可编程寄存器,给出该IP在CMOS数字成像中的应用实例。该实例基于可编程片上系统(SOPC)技术设计,在NioslI IDE中通过编写程序来实现系统功能,并通过QuartusII软件自带的Si

摘要:详细介绍一种I2C控制IP的工作原理及其可编程寄存器,给出该IP在CMOS数字成像中的应用实例。该实例基于可编程片上系统(SOPC)技术设计,在NioslI IDE中通过编写程序来实现系统功能,并通过QuartusII软件自带的SignaITapII进行验证。结果表明,在CMOS成像领域选用该IP核,系统能充分利用SOPC技术的优势,具有扩展性好、控制灵活、开发周期短等特点。
关键词:SOPC;I2C控制IP;CMOS

1 IP的硬件结构及寄存器
1.1 IP硬件结构
    IP内部结构如图1所示。主要由波特率时钟寄存器、寄存器组控制器、并行I/O接口、I2C可编程接口、I2C接口引擎5个模块组成。波特率时钟产生器用来产生I2C IP工作的基本时钟频率;寄存器组控制器用来对寄存器进行设置,设置数据通过并行I/O接口传送到该模块中;并行I/0接口模块用来处理可编程接口模块传送过来的命令;I2C可编程接口模块用来设置IP各个寄存器的地址;I2C接口引擎模块执行I2C总线上数据的传输。


1.2 寄存器结构
    I2C控制IP主要由6个寄存器构成,如表1所列。通过对寄存器的读写可以方便地控制I2C总线数据的传输,从而实现NioslI处理器与设备之间的通信。数据寄存器用来存放I2C总线上要传送的数据;波特率产生模块,波特率时钟寄存器和时钟寄存器共同决定I2C总线上SCL的频率。SCL的计算公式为。其中System_clk是系统时钟;Value是时钟寄存器的值;divider是波特率时钟寄存器的值所对应的分频数(寄存器的值与分频数相差为1,如寄存器设置为O,则分频数为1;寄存器设置为1,则分频数值为2)。本地地址寄存器、控制寄存器、状态寄存器的详细介绍略——编者注。

2 I2C控制IP在成像系统中的应用
    在成像系统中,CMOS传感器应用非常普遍。这些传感器大多数都自带I2C串行通信接口,本文以MT9M011为例介绍I2C控制IP在成像系统中的应用。MT9M011传感器根据读写位数可分为两种方式:16位数据读写方式和8位数据读写方式。这里选用曝光寄存器,采用16位读写方式进行操作,时序如图2所示。


    从设备地址(写模式)与从设备地址(读模式)高7位为从器件地址,第8位是读写控制位(R/W),它控制数据的传输方向。
    向曝光寄存器Ox09写入数据:主器件启动传输,然后发送它所要寻址的从设备地址(写模式)。MT9M011监视总线,当其地址与传送的从器件地址相符时,响应一位应答信号,接着主器件发送曝光寄存器地址,MT9M011再次应答,在向曝光寄存器中写入16位数据后主器件停止写数据。每传送8位数据,从器件MT9M011都会产生一位应答信号。
    从曝光寄存器0x09读出数据:开始部分与写数据时序是相同的,当主器件发送完从设备地址(写模式)和寄存器地址后,需要重新启动,并发送从设备地址(读模式),然后才能从寄存器中读出数据。每读完1字节数据,主器件都会产生1位应答信号。当16位数据被读出后,主器件发送1位非应答信号,传输结束。

3 IP应用实例
3.1 硬件设计
    本文使用I2C控制IP对图像传感器MT9M01l寄存器进行并行配置。硬件设计基于SOPC技术,将系统组件库提供的32位Nios II软核处理器、SDRAM接口模块、TIMER定时器模块(提供SignaltapII中对信号进行采样的频率)、PI0模块以及I2C控制IP(配置为主设备)集成在一块FPGA内。QuartusII顶层原理略——编者注。
3.2 软件设计
    软件的编写有两种方式:一种是对I2C控制IP应用程序编程接口(API)函数的操作;另一种是利用Altera提供的读写函数对寄存器进行操作。为了提高系统运行的速度,采用第二种方法。系统软件部分是在NiosII IDE中,通过编写C代码完成的。
    对CMOS寄存器的并行配置程序主要包括以下两个部分:
    ①IP初始化设置:包括设置波特率、设置本地址寄存器、设置时钟寄存器值。
    ②选择CMOS1,对其寄存器进行读写;选择CMOS2,对其寄存器进行读写。寄存器选择曝光寄存器。
    关键代码如下:
   
    
    
    函数checkBus查询状态寄存器的BB来判断I2C总线忙/闲状态,checkProgres函数查询状态寄存器的PIN来判断总线数据是否传输完成。为了便于观察读出的数据和写入的数据是否一致,通常将程序包含在while语句中。

4 实验验证
    将硬件系统生成的下载文件烧写到FPGA芯片上并运行C代码程序,用QuartusII自带的SignaItapII逻辑分析仪对I2C总线上的数据进行观察。图3为所得到的波形,信号由上至下分别为CMOS2/CMOS1上的I2C总线信号m_sclk_2、m_sda_2、m_sclk_1、m_sda_1。前半部分给CMOS1写入0x06、0X07,然后读出;后半部分对CMOS2写入相同的数并读出。此波形满足MT9M011图像传感器时序读写要求。

5 系统扩展
    在需要多路CMOS配置的应用中,使用该I2C控制IP可以很容易地实现多路并行CMOS寄存器配置。例如,8路并行CMOS配置系统:在电路板上焊接8片CMOS传感器芯片,通过对分配器3路信号的控制将使能并行加载到8块CMOS芯片,3路控制信号和使能信号通过对SOPC系统的PIO接口模块的控制来实现,配置数据的传输则在I2C控制IP的控制下完成。电路板结构简单,系统容易实现。

结语
    本文所介绍的I2C IP可作为自定义组件加载到SOPC系统中,使系统的设计更为灵活,功能扩展上具有较大的潜力。在采用CMOS图像传感器的成像系统中,I2C接口应用普遍,本文通过给出该IP应用实例,说明了该IP的使用具有广阔的前景和较高的应用价值。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

电源系统设计包括设计参数之间的许多权衡,例如尺寸、成本、效率和负载瞬态性能。为了设计功率级,必须建立各种特性,例如瞬态容限、纹波电压和负载特性。

关键字: 降压转换器 电源设计 控制

引领供应链数字化转型新潮流 上海2024年5月16日 /美通社/ -- 5月14日,"第七届亚太智慧供应链与物流创新博览会"在上海顺利举办,作为中国和亚太区最大规模,最有影响力的顶流供应链物流盛会,...

关键字: 数字化 软件 供应链管理 控制

上海2024年5月13日 /美通社/ -- CONNECT 2 是更加用户友好的声卡,仅需轻点几下,它就能为人声和乐器的录制增添异彩。触控面板触感舒适、控制精准、一目了然。所有输入输出信号均可独立静音。自动设置功能通过内...

关键字: NEC 声卡 控制 软件

功率器件是一种专门用于控制、调节和放大电能的电子元件,主要用于处理大功率电信号或驱动高功率负载,如电机、变压器、照明设备等。

关键字: 功率器件 控制 放大电能

机器人是一种集成了机械、电子、控制、传感、人工智能等多学科先进技术的自动化装备,能够模仿或替代人类进行各种任务的设备。

关键字: 人工智能 电子 控制

SCL(serial clock):时钟线,传输CLK信号,一般是I2C主设备向从设备提供时钟的通道。

关键字: I2C 总线通信 时钟线

伺服电机是一种高精度、高性能的电机,广泛应用于各种自动化控制系统中。控制伺服电机是实现自动化控制的关键环节,不同的控制方式具有不同的特点和适用场景。本文将介绍几种常见的伺服电机控制方式及其特点,并分析在实际应用中应注意的...

关键字: 伺服电机 控制 自动化

大连2023年9月20日 /美通社/ -- 日前,国际独立第三方检测、检验和认证机构德国莱茵TÜV大中华区(以下简称"TÜV莱茵")受...

关键字: 控制 医疗服务 HEALTH 信息安全

 上海2023年9月7日 /美通社/ -- 近期,“国家卫生健康委国际交流与合作中心·因美纳公共卫生教育奖学金”项目(下称,“公共卫生教育奖学金”)完成首批奖学金颁发。该项目是由国家卫生健康委国际...

关键字: BSP 控制 组网 网络建设

张家港2023年8月25日 /美通社/ -- 对于塔机买家,需求的不仅仅是塔机的功能性,还有塔机的耐用性和残值。在这方面,波坦塔机以其卓越的品质和持久的稳定性,成为了一个值得信赖的选择。 当你在考虑购买二手塔机时,你应...

关键字: BSP 控制 变频调速 应力
关闭
关闭