基于Nios II的I2C总线接口的实现
时间:04-09
来源:《电子工程师》
点击:
4应用实例
笔者在NiosⅡIDE7.1环境下编写了使用该Mas-ter Core的C语言代码,现把部分主程序代码列出。
1)IP-Master Core初始化
完成对预分频器的设置,确定SCL时钟频率;控制寄存器中I2C-Master Core使能位置1,使其工作。
2)查询确认信号
数据收发是否完成,通过查询TIP状态位来确定。
3)写字节操作
单字节写入按图5操作流程:

4)随即地址读操作
随即地址读字节按图6流程操作:

以上是使用I2C-Master Core的关键代码,若向地址0xS0写入0x5A,再将其读出,可按下面写法:

若操作正确,DATA的值应该位为0x5A。
5结束语
本文探讨了使用免费I2C-Master Core的方法,方便地实现了基于Nios Ⅱ的I2C接口芯片的开发,为I2C的电子工程设计使用提供了一种简单快捷的方法。
笔者在NiosⅡIDE7.1环境下编写了使用该Mas-ter Core的C语言代码,现把部分主程序代码列出。
1)IP-Master Core初始化
完成对预分频器的设置,确定SCL时钟频率;控制寄存器中I2C-Master Core使能位置1,使其工作。
2)查询确认信号
数据收发是否完成,通过查询TIP状态位来确定。
3)写字节操作
单字节写入按图5操作流程:

4)随即地址读操作
随即地址读字节按图6流程操作:

以上是使用I2C-Master Core的关键代码,若向地址0xS0写入0x5A,再将其读出,可按下面写法:

若操作正确,DATA的值应该位为0x5A。
5结束语
本文探讨了使用免费I2C-Master Core的方法,方便地实现了基于Nios Ⅱ的I2C接口芯片的开发,为I2C的电子工程设计使用提供了一种简单快捷的方法。
- 基于嵌入式NiosⅡ软核的串口直接读写寄存器方式编程 (09-08)
- 基于NiosⅡ处理器的TFT-LCD图形显示设计 (10-24)
- I2C串行EEPROM应用系统的健壮性设计(03-29)
- 基于PLD的视频接口的技术构成与应用设计(07-20)
- 德州仪器推出具备 I2C 接口的双向电流、电压与电源监控器(06-11)
- 基于I2C总线技术的USB接口设计(01-20)
