最近基于迅为的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
共4条
1/1 1 跳转至页
iMX6q 的 EIM 接口的配置 可以与 FPGA 通讯,交换数据,最常用的接口配置
关键词: iMX6q 配置 交换
共4条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】智能可穿戴设备AR/VR如何引领科技新潮流! | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
【有奖活动】震撼来袭!这场直播将直击工程师的心灵! | |
“我想要一部加热台”活动,不花钱赢取开发好工具!活动开始了哦 | |
【有奖活动】伙伴们:您的“需求”解决了吗? |
打赏帖 | |
---|---|
老胖子聊电路--分析一个反馈电路被打赏50分 | |
放大↔震荡被打赏50分 | |
【换取手持数字示波器】RTduino驱动ssd1306+sht31温湿度计被打赏40分 | |
【换取手持数字示波器】称植国产开源TobudOS到雅特力AT32F425被打赏40分 | |
【分享评测,赢取加热台】+Telink-泰凌微电子B91点灯篇被打赏20分 | |
【换取手持数字示波器】+精英板驱动LCD屏被打赏50分 | |
【换取手持数字示波器】+DFR0216全彩灯带WS2812示例分享被打赏50分 | |
【换取手持数字示波器】安装雅特力国产IDE-AT32IDE被打赏30分 | |
【换取手持数字示波器】+DFR0654板卡驱动数码管和串口功能分享被打赏50分 | |
【换取手持数字示波器】+DFPlayerMini模块推喇叭示例分享被打赏50分 |