最近基于迅为的i.mx6Q开发板进行了一个FPGA项目的开发,下面给大家介绍一下EIM接口的配置,包括引脚的的选择和寄存器的配置

For the usage of WEIM on i.MX6, you don't need drivers for WEIM interface. But you must do some configurations for WEIM port like the following :

Let me assume you use 16bit Address lines and 16bit Data lines ,CS1 is for FPGA ChipSelect .

Address lines : EIM_DA0~EIM_DA15

Data lines : EIM_D16~EIM_D31

CS1 : Chip Select

(1)IOMUX configurations

All IOMUX settings for sabresd board are in board-mx6q_sabresd.c ,open it and add iomux for address lines ,data lines ,CS1 ,control lines to structure "static iomux_v3_cfg_t mx6q_sabresd_pads[] = {"

static iomux_v3_cfg_t mx6q_sabresd_pads[] = {

....

/*Address Lines*/

MX6Q_PAD_EIM_DA0__WEIM_WEIM_DA_A_0,

MX6Q_PAD_EIM_DA1__WEIM_WEIM_DA_A_1,

MX6Q_PAD_EIM_DA2__WEIM_WEIM_DA_A_2 ,

MX6Q_PAD_EIM_DA3__WEIM_WEIM_DA_A_3,

MX6Q_PAD_EIM_DA4__WEIM_WEIM_DA_A_4,

MX6Q_PAD_EIM_DA5__WEIM_WEIM_DA_A_5,

MX6Q_PAD_EIM_DA6__WEIM_WEIM_DA_A_6,

MX6Q_PAD_EIM_DA7__WEIM_WEIM_DA_A_7,

MX6Q_PAD_EIM_DA8__WEIM_WEIM_DA_A_8,

MX6Q_PAD_EIM_DA9__WEIM_WEIM_DA_A_9,

MX6Q_PAD_EIM_DA10__WEIM_WEIM_DA_A_10,

MX6Q_PAD_EIM_DA11__WEIM_WEIM_DA_A_11,

MX6Q_PAD_EIM_DA12__WEIM_WEIM_DA_A_12,

MX6Q_PAD_EIM_DA13__WEIM_WEIM_DA_A_13,

MX6Q_PAD_EIM_DA14__WEIM_WEIM_DA_A_14,

MX6Q_PAD_EIM_DA15__WEIM_WEIM_DA_A_15,

/*Data Lines*/

MX6Q_PAD_EIM_D16__WEIM_WEIM_D_16,

MX6Q_PAD_EIM_D17__WEIM_WEIM_D_17,

MX6Q_PAD_EIM_D18__WEIM_WEIM_D_18,

MX6Q_PAD_EIM_D19__WEIM_WEIM_D_19,

MX6Q_PAD_EIM_D20__WEIM_WEIM_D_20,

MX6Q_PAD_EIM_D21__WEIM_WEIM_D_21,

MX6Q_PAD_EIM_D21__WEIM_WEIM_D_22,

MX6Q_PAD_EIM_D21__WEIM_WEIM_D_23,

MX6Q_PAD_EIM_D21__WEIM_WEIM_D_24,

MX6Q_PAD_EIM_D21__WEIM_WEIM_D_25,

MX6Q_PAD_EIM_D21__WEIM_WEIM_D_26,

MX6Q_PAD_EIM_D21__WEIM_WEIM_D_27,

MX6Q_PAD_EIM_D21__WEIM_WEIM_D_28,

MX6Q_PAD_EIM_D21__WEIM_WEIM_D_29,

MX6Q_PAD_EIM_D21__WEIM_WEIM_D_30,

MX6Q_PAD_EIM_D21__WEIM_WEIM_D_31,

/*Control Lines*/

MX6Q_PAD_EIM_RW__WEIM_WEIM_RW,// write signal

MX6Q_PAD_EIM_OE__WEIM_WEIM_OE,// read signal

//perhaps following 2 signals are not used.

MX6Q_PAD_EIM_WAIT__WEIM_WEIM_WAIT,// shakehand signal used to sync mode.

MX6Q_PAD_EIM_BCLK__WEIM_WEIM_BCLK,// Burst clock used to burst and sync mode.

MX6Q_PAD_EIM_LBA__WEIM_WEIM_LBA,// used to burst mode

/*Chip select line*/

MX6Q_PAD_EIM_CS1__WEIM_WEIM_CS_1,

....

}

(2)Distributing Memory Space For WEIM_CS1

By Defaul,The total 128MB space are all for EIM_CS0,so We should reconfigure space.

In Register IOMUXC_GPR1 ,Bit[5:4] determines address spcace on EIM_CS1

Let us set it 64MB:

bit[5:4] = 01

bit[3]= 1 // Make WEIM_CSI to be Active.

(3)Configuring IOMUX mode

We use 16 bit non-mux mode, So we should configure Register On EIM_CS1. See "Table 22-1. EIM multiplexing" : 16bit,MUM=0,DSZ=010

You should configure EIM_CS1GCR1 register according to the mode that you want. More details , See imx61qrm.pdf , page 1038.

(4)Read/Write Setting

Read:  EIM_CSnRCR1/EIM_CSnRCR2

Write: EIM_CSnWCR1/EIM_CSnWCR2

iMX6Q开发板的EIM接口的配置可以与FPGA通讯-交换数据-最常用的接口配置的更多相关文章

  1. 迅为IMX6Q开发板提供原理图_底板PCB_驱动程序源码_芯片和LCD数据手册_开发板环境_使用手册

      迅为IMX6开发板: Android4.4/6.0系统  Linux + Qt5.7系统  Ubuntu12.04系统 部分案例:HMI:3D打印机:医疗设备:工控机:触控一体机:车载终端 核心板 ...

  2. 迅为-iMX6开发板 飞思卡尔iMX6Q开发板 工业级开发板

    了解详情请点击迅为官网:http://topeetboard.com 迅为-i.MX6开发板是采用Freescale Cortex-A9 四核i.MX6Q处理器,主频1GHz,2G DDR3内存,16 ...

  3. 迅为IMX6Q开发板在道路交通信号控制系统解决方案中的应用

    智能交通综合管控平台是为交通指挥系统服务的统一信息平台,以信息技术为主导,以计算机通信网络和智能化指挥控制管理为基础,建成集高新技术应用为一体的智能化指挥调度集成平台,实现信息交换与共享.快速反应决策 ...

  4. IMX6Q开发板Linux-QT挂载U盘及TF卡

    本文基于:迅为-iMX6开发板Linux-QT挂载U盘及TF卡 如下图所示,qt 启动之后,在超级终端中使用命令“mknod /dev/sda1 b 8 1”创建 U盘的设备节点,如下图所示. 插入 ...

  5. 基于uFUN开发板的心率计(一)DMA方式获取传感器数据

    前言 从3月8号收到板子,到今天算起来,uFUN到手也有两周的时间了,最近利用下班后的时间,做了个心率计,从单片机程序到上位机开发,到现在为止完成的差不多了,实现很简单,uFUN开发板外加一个Puls ...

  6. springboot配置(yami配置文件,JSR303数据校验,多环境配置)

    yami配置文件 YAML是 "YAML Ain't a Markup Language" (YAML不是一种标记语言)的递归缩写.在开发的这种语言时,YAML 的意思其实是:&q ...

  7. 迅为-IMX6开发板十层PCB制造,24小时开机测试,满负荷测试运行俩天,没有死机

    迅为-IMX6开发板——工业主板的优势 1.元器件 IMX6工业主板选料,选用经过长时间.高要求验证元器件,保证产品在复杂条件下,耐高温.抗潮湿等工业场合的需求. 2.PCB设计 IMX6工业主板采用 ...

  8. 实用IMX6开发板来袭, 方便开发板方便你

    这是迅为电子推出的一款IMX6Q开发板是Freescale Cortex-a9四核处理器,采用底板加核心板形式,稳定耐用,拆卸非常的方便,同一底板兼容四种核心板,分别为四核商业级,四核工业级,双核商业 ...

  9. 【学习/研发】嵌入式Linux/Android开发有它就够了——迅为4412开发板

    网站:http://www.topeetboard.com 光盘资料+网盘资料+配套视频+售后支持,助您加速学习研发的进程 产品介绍 iTOP-Exynos4412开发板采用 Exynos4412的主 ...

随机推荐

  1. MacOS 的预览 Preview 打开pdf 容易卡死 解决方案

    MacOs 10.13.6 打开pdf之后容易卡死. 移动一下窗口之后就卡死了. 有时候等一会还能缓过来,有时候就缓不过来了. 只要执行下这个命令就可以了. sudo rm -rf ~/Library ...

  2. Vue插值文本换行问题

    问题背景: 后端返回的字符串带有\n换行符,但Vue将其插值渲染成div内部文本后,文本并不换行,换行符显示为一个空格. 目标: 让文本在换行符处换行. 解决方法: 思路:实现文本换行有两种方法,一是 ...

  3. 基于Metronic的Bootstrap开发框架--资产编码打印处理

    在开发业务管理系统的时候,往往涉及到资产信息及编码的打印处理,如我们需要对资产信息.条形码.二维码一起打印,以便贴在具体资产信息上面,方便微信公众号.企业微信进行业务处理,那么编码的打印就很有必要了, ...

  4. C语言之输入月收入,输出该月应纳税额-2019(简易版)

    #include<stdio.h> #include<stdlib.h> #include<string.h> #define s1 0.03 //税率b < ...

  5. RB-Tree删除详解

    红黑树的删除操作较于插入操作,情况更为复杂: 考虑到红黑节点的差异性,我们在此通过红黑节点来考虑这个问题,即仅仅通过要删除的节点是红节点,还是黑节点来讨论不同的情况: 1  删除的红节点为叶子结点(此 ...

  6. ccpc杭州站 赛后总结

    Ccpc杭州站赛后总结 2017年11月4号五号,我参加了ccpc杭州站的比赛,我的队友是聂少飞和王艳,在4号一点半,举行了比赛开幕式,听着教练代表的发言,听着参赛选手代表的发言,听着志愿者的发言,都 ...

  7. PHP细节,empty,is_null,isset,if()

    以下内容转载自http://wuxinjie.github.io/php-04/ 从下表可知,empty与if()完全相反,is_null与isset完全相反 isset是语句,is_null是函数, ...

  8. python之路8-内置模块介绍

    time & datetime模块 1 #_*_coding:utf-8_*_ 2 __author__ = 'Alex Li' 3 4 import time 5 6 7 # print(t ...

  9. 第一章 Python基本语法元素分析(二)

    1.3   实例1:温度转换 根据华氏和摄氏温度定义,利用转换公式如下: C=(F-32)/1.8 F=C*1.8+32 代码如下: 运行结果: 1.4   Python程序语法元素分析 注释:不被程 ...

  10. docker容器运行后退出,怎么才能一直运行?【转】

    现象 启动docker容器 docker run –name [CONTAINER_NAME] [CONTAINER_ID] 查看容器运行状态 docker ps -a 发现刚刚启动的mydocker ...