- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
NiosII的I2C控制IP及其在成像系统中的应用
关键代码如下:
函数checkBus查询状态寄存器的丽来判断I2C总线忙/闲状态,checkProgres函数查询状态寄存器的PIN来判断总线数据是否传输完成。为了便于观察读出的数据和写入的数据是否一致,通常将程序包含在while语句中。
4 实验验证
将硬件系统生成的下载文件烧写到FPGA芯片上并运行C代码程序,用QuartusII自带的SignahapII逻辑分析仪对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的使用具有广阔的前景和较高的应用价值。
来源:维库开发网
上一篇:基于FPGA和IP
Core的定制缓冲管理的实现
下一篇:具有X86到ARM二进制翻译和执行功能的SoC系统设计