如何在niosII中添加i2c外设_winday_新浪博客

如何在niosII中添加i2c外设

winday

摘要:本文说明了如何在niosII添加第三方i2c外设,以供参考。

由于本人使用的Altera SOPC Builder没有i2c外设,因此必须使用第三方i2c外设。如何把第三方i2c外设添加到niosII中,并加以应用呢?本人使用的开发环境:Altera SOPC Builder、Quartus II 8.0、Nios II  8.0 IDE。开发工具安装目录:D:\。

第一步,下载i2c外设软件包:oc_i2c_master.rar。本软件包包含i2c外设的HDL实现,及驱动代码。网络上很容易找到。

第二步,解压,并把整个文件夹复制到D:\altera\80\ip\sopc_builder_ip\。

第三步,在Altera SOPC Builder中create new componet->file->open 打开D:\altera\80\ip\sopc_builder_ip\ oc_i2c_master\中的class.ptf文件。

第四步,在Altera SOPC Builder中Tools->options->IP Search Path 如下设置:D:\altera\80\ip\sopc_builder_ip。

第五步,此时Altera SOPC Builder左侧Systerm Contents中出现DeviceSOPC-〉oc_i2c_master外设。双击此条目,i2c外设及可被添加到niosII上。

第六步,Altera SOPC Builder中sopc builder generate。

第七步,若没有错误,在Quartus II中顶层文件中(bdf文件)加入上步生成的nios_cpu

模块。

第八步,添加IO PIN,并把i2c相关的两个脚设置成双向IO,并设置成开漏输出。注意硬件上,i2c两个IO要加上拉电阻,2K欧姆较为合适。

第九步,Quartus II编译整个工程。

第十步,基于这个nios cpu在Nios II IDE中建立工程。通过包含头文件“oc_i2c.h”即可调用i2c外设的相关驱动函数。注意在读写i2c外设之前请先调用i2c初始化函数。

在Quartus II中编译整个工程时,若出现以下错误:Error:Node instance “the_oc_i2c_master”instantiates undefined entity “oc_i2c_master”,请将D:\altera\80\ip\sopc_builder_ip\oc_i2c_master\hdl下的四个.hdl件复制到当前工程文件夹下,重新编译

如何在niosII中添加i2c外设_winday_新浪博客的更多相关文章

  1. Javascript Jquery 中的数组定义与操作_子木玲_新浪博客

    body{ font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI& ...

  2. python中multiprocessing.pool函数介绍_正在拉磨_新浪博客

    python中multiprocessing.pool函数介绍_正在拉磨_新浪博客     python中multiprocessing.pool函数介绍    (2010-06-10 03:46:5 ...

  3. python中逐行读取文件的最佳方式_Drupal_新浪博客

    python中逐行读取文件的最佳方式_Drupal_新浪博客 python中逐行读取文件的最佳方式    (2010-08-18 15:59:28)    转载▼    标签:    python   ...

  4. Go语言中怎样判断数据类型_不懂的木匠_新浪博客

    要判断数据类型,可以用Go的空接口: 建一个函数t 设置参数i 的类型为空接口,空接口可以接受任何数据类型 func t(i interface{}) {  //函数t有一个参数i  switch i ...

  5. 如何在Eclipse中添加Tomcat的jar包

    原文:如何在Eclipse中添加Tomcat的jar包 右键项目工程,点击Java Build Path 点击Add Library,选择Server Runtime 选择Tomcat版本 此时就看到 ...

  6. 如何在Eclipse中添加Servlet-api.jar的方法

    方法一: 点击窗口->首选项->java->构建路径->类路径变量->新建:将你的tomcat目录下的common/lib/servlet.jar加进来.如果你建立了一个 ...

  7. Oracle 12c 多租户家族(12c 18c 19c)如何在 PDB 中添加 HR 模式

    Oracle 12c 多租户家族(12c [12.2.0.1].18c [12.2.0.2].19c [12.2.0.3])如何在 PDB 中添加模式:19c (19.3) 手工添加示例 HR 用户 ...

  8. linux中读写锁的rwlock介绍-nk_ysg-ChinaUnix博客

    linux中读写锁的rwlock介绍-nk_ysg-ChinaUnix博客 linux中读写锁的rwlock介绍 2013-02-26 13:59:35 分类: C/C++   http://yaro ...

  9. 【Tomcat-原】如何在Myeclipse中添加本地的Tomcat

    2014-10-27 16-24-09  liulin 说明: Myeclipse中自带Tomcat,如果不想用Myeclipse自带的Tomcat,可以使用本地的Tomcat, 下面将介绍如何在My ...

随机推荐

  1. angular中按需加载js

    按需加载估计是大家在使用angular之后最想解决的问题吧,因为angular的依赖机制,导致了必须在第一次加载的时候就加载所有js文件,小项目还好,稍大一点的项目如果有上百个js文件,不管是从效率还 ...

  2. sql语句查看库里有没有这张表,有就删除

    查看库里有没有这张表,有就删除 DROP TABLE IF EXISTS 表名

  3. HDU - 1598 find the most comfortable road 【最小生成树】

    题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=1598 思路 用kruskal 算法 将边排序后 跑 kruskal 然后依次将最小边删除 再去跑 kr ...

  4. HackerRank - flipping-the-matrix 【数学】

    题意 一个矩阵中 每一行 每一列 都可以倒置 在不断进行倒置后 求 左上的那个 N * N 矩阵 的和 最大为多少 思路 M = 2 * N 通过 倒置特性 我们可以发现,最左上的那个矩阵 第 [I] ...

  5. iOS 发大招 otherButtonTitles:(nullable NSString *)otherButtonTitles, ... 写法 && 编写通用类的时候关于可变参数的处理

    开始 我  以为 这个 alertView 里面 ...的写法  应该 是一个 普通的数组  然 并没有 分享一篇好文 http://www.tekuba.net/program/290/ IOS实现 ...

  6. virtualbox 桥接 (转)

    virtualbox 自带的网络配置模式要么选择host-only,要么bridge,对于经常使用virtualbox的同学一定想要像vmware一样的nat配置,既可以让host访问guest,又可 ...

  7. Shiro-权限认证(授权)-编程式授权

    权限认证 权限认证也就是访问控制,即在应用中控制谁能访问哪些资源 权限认证核心要素 权限 : 即操作资源的权利,比如访问某个页面,以及对某个模块的数据的添加,修改,删除,查看的权利 角色 : 是权限的 ...

  8. nginx+tomcat负载均衡搭建

    一.      单独部署tomcat和nginx Nginx版本:nginx-1.13.5 Tomcat版本:apache-tomcat-8.5.8 操作系统:win10 必须先部署一个tomcat服 ...

  9. JS高阶函数的理解(函数作为参数传递)

    JS高阶函数的理解 高阶函数是指至少满足下列条件之一的函数. · 函数可以作为参数被传递 · 函数可以作为返回值输出 一个例子,我们想在页面中创建100个div节点,这是一种写法.我们发现并不是所有用 ...

  10. java:eclipse安装tomcat插件及配置tomcat

    我们都知道myeclipse自带tomat图标,而eclipse却没有,若想eclipse实现带有tomcat图标可以下载tomcat插件 tomcat插件下载地址:http://www.eclips ...