如何在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_新浪博客的更多相关文章
- Javascript Jquery 中的数组定义与操作_子木玲_新浪博客
body{ font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI& ...
- python中multiprocessing.pool函数介绍_正在拉磨_新浪博客
python中multiprocessing.pool函数介绍_正在拉磨_新浪博客 python中multiprocessing.pool函数介绍 (2010-06-10 03:46:5 ...
- python中逐行读取文件的最佳方式_Drupal_新浪博客
python中逐行读取文件的最佳方式_Drupal_新浪博客 python中逐行读取文件的最佳方式 (2010-08-18 15:59:28) 转载▼ 标签: python ...
- Go语言中怎样判断数据类型_不懂的木匠_新浪博客
要判断数据类型,可以用Go的空接口: 建一个函数t 设置参数i 的类型为空接口,空接口可以接受任何数据类型 func t(i interface{}) { //函数t有一个参数i switch i ...
- 如何在Eclipse中添加Tomcat的jar包
原文:如何在Eclipse中添加Tomcat的jar包 右键项目工程,点击Java Build Path 点击Add Library,选择Server Runtime 选择Tomcat版本 此时就看到 ...
- 如何在Eclipse中添加Servlet-api.jar的方法
方法一: 点击窗口->首选项->java->构建路径->类路径变量->新建:将你的tomcat目录下的common/lib/servlet.jar加进来.如果你建立了一个 ...
- 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 用户 ...
- linux中读写锁的rwlock介绍-nk_ysg-ChinaUnix博客
linux中读写锁的rwlock介绍-nk_ysg-ChinaUnix博客 linux中读写锁的rwlock介绍 2013-02-26 13:59:35 分类: C/C++ http://yaro ...
- 【Tomcat-原】如何在Myeclipse中添加本地的Tomcat
2014-10-27 16-24-09 liulin 说明: Myeclipse中自带Tomcat,如果不想用Myeclipse自带的Tomcat,可以使用本地的Tomcat, 下面将介绍如何在My ...
随机推荐
- 上传项目至GitHub
在windows系统客户端安装git工具. 注:如何安装git工具在此不做介绍,如需了解可网上搜索安装介绍. 在“本地文件”中添加“.git文件”,用于git管理. 进入本地文件夹,右击鼠标- ...
- STM32 HAL库 UART使用printf
// 添加这个函数 int fputc(int ch,FILE *f) { uint8_t temp[]={ch}; HAL_UART_Transmit(&UartHandle,temp,,) ...
- Shell中的while循环
while循环的格式 while expression do command command ``` done 1.计数器控制的while循环 主要用于已经准确知道要输入的数据和字符串的数目 ...
- Yii2数据库操作的各种写法
-------------------------------ActiveRecord---------------------------------------- 查询: // find the ...
- SQL语法结构
目录 一.增 1.增加字段 2.新建约束 二.删 1.删除字段 2.删除约束 三.改 1.修改字段 一.增 1.增加字段: ALTER TABLE [表名] ADD [字段名] NVARCHAR () ...
- Python程序打包成exe的一些坑
今天写了一个项目,Python项目,需要在win7上跑起来,我想,这不是简单的不行么,直接上Pyinstaller不就完了? 但是后来,我发觉我真是too young too simple. 为什么这 ...
- js 动态加载事件的几种方法总结
本篇文章主要是对js 动态加载事件的几种方法进行了详细的总结介绍,需要的朋友可以过来参考下,希望对大家有所帮助 有些时候需要动态加载javascript事件的一些方法往往我们需要在 JS 中动态添 ...
- c++学习笔记(网上资料)
C++笔记 2007-3-22 1. 程序 —— 可执行文件,人发送给计算机的一组指令. 硬件指令是二进制, ...
- Spring Cloud之Ribbon与Nginx区别
客户端负载均衡器 在SpringCloud中Ribbon负载均衡客户端,会从eureka注册中心服务器端上获取服务注册信息列表,缓存到本地. 让后在本地实现轮训负载均衡策略. Ribbon与Nginx ...
- css的伪类选择器的使用
伪类选择器,在不同情况下显示的css,伪类选择器在处理页面的美观是很大帮助.其实很多美丽的按钮或者页面都是有这些基础的知识实现的,掌握好基础很重要. 名字 实例 说明 :link a:link 选择所 ...