第2期ARM裸机篇/【3】I.MX6U-ALPHA开发板简介1_开发板资源
作者:互联网
文章目录
- 简介
- 正点原子 I.MX6U-ALPHA/Mini 开发板资源初探
- 正点原子 I.MX6U-ALPHA/Mini 开发板资源说明
- I.MX6U-ALPHA 硬件资源说明
- CAN 接口
- RS232/485 选择接口
- I.MX6ULL 核心板接口
- RGBLCD 接口
- 后备电池接口
- USB HOST(OTG)
- USB 串口/串口 1
- USB SLAVE(OTG)
- USB 转串口
- 摄像头模块接口
- 启动(BOOT)拨码开关
- TF 卡接口
- 光环境传感器
- 蜂鸣器
- SDIO WIFI 接口
- ATK 模块接口
- 左右声道喇叭接口
- 耳机输出接口
- 录音输入接口
- 复位按键
- 用户按键 KEY
- 红色用户 LED 灯
- 蓝色电源指示 LED 灯
- WM8960 音频 DAC
- MIC(咪头)
- Nano SIM 卡接口
- ICM20608 六轴传感器
- Mini PCIE 4G 接口
- DC6~16V 电源输入
- 电源开关
- 5V 电源输入/输出
- 3.3V 电源输入/输出
- 3 路 USB HOST 接口
- 引出的 IO 口
- 以太网接口 1(RJ45)
- 以太网接口 2(RJ45)
- RS232 接口(母)
- RS485 接口
- I.MX6U-ALPHA 软件资源说明
- I.MX6U-Mini 硬件资源说明
- **I.MX6U-Mini** 软件资源说明
- I.MX6ULL 核心板硬件资源说明
- 最近更新
- 欢迎关注微信公众号
简介
要学嵌入式 Linux 驱动开发肯定需要一个硬件平台,也就俗称的开发板,本书使用的是正点原子出品的I.MX6U-ALPHA/Mini
开发板。
ALPHA 是全功能开发板,Mini 是精简版。这两款都是以 NXP 的 I.MX6ULL 为核心的 Cortex-A7 开发平台,板载资源丰富,非常适合以前学过Cortex-M 内核单片机(比如 STM32)的工程进阶嵌入式 Linux 开发。
工欲善其事,必先利其器,本章我们就先来详细了解一下未来将会陪伴我们很长一段时间的朋友——I.MX6UXALPHA/Mini
开发平台。
目标
了解I.MX6U-ALPHA/Mini
开发板资源。
阅读基础
熟悉计算机。
环境说明
- windows10
参考资料
- 原子文档:I.MX6ULL开发指南 第五章
- NXP官方文档:I.MX6ULL参考手册、数据手册
正点原子 I.MX6U-ALPHA/Mini 开发板资源初探
正点原子目前已经拥有多款 STM32、I.MXRT 以及 FPGA 开发板,这些开发板常年稳居淘宝销量冠军,累计出货超过 10W 套。这款 ALPHA 开发板,是正点原子推出的第一款 Linux 开发板,采用底板+核心板的形式。接下来我们分别介绍 I.MX6U-ALPHA 开发板的底板和核心板。
MX6U-ALPHA 开发板底板资源
从上图可以看出,I.MX6U-ALPHA 开发板底板资源十分丰富,把 I.MX6UL/ULL 的内部资源发挥到了极致,基本所有 I.MX6UL/ULL 的内部资源都可以在此开发板上验证,同时扩充丰富的接口和功能模块,整个开发板显得十分大气。
开发板的外形尺寸为 100mm*180mm
大小,板子的设计充分考虑了人性化设计,并结合正点原子多年的开发板设计经验,经过多次改进,最终确定了这样的设计。
正点原子 I.MX6U-ALPHA 开发板底板板载资源如下:
◆ 1 个核心板接口,支持 I.MX6UL/6ULL 等核心板
◆ 1 个电源指示灯(蓝色)
◆ 1 个状态指示灯(红色)
◆ 1 个六轴(陀螺仪+加速度)传感器芯片,ICM20608
◆ 1 个高性能音频编解码芯片,WM8960
◆ 1 路 CAN 接口,采用 TJA1050 芯片
◆ 1 路 485 接口,采用 SP3485 芯片
◆ 1 路 RS232 串口(母)接口,采用 SP3232 芯片
◆ 1 个 ATK 模块接口,支持正点原子蓝牙/GPS/MPU6050/手势识别等模块
◆ 1 个光环境传感器(光照、距离、红外三合一)
◆ 1 个摄像头模块接口
◆ 1 个 OLED 模块接口
◆ 1 个 USB 串口,可用于代码调试
◆ 1 个 USB SLAVE(OTG)接口,用于 USB 从机通信
◆ 1 个 USB HOST(OTG)接口,用于 USB 主机通信
◆ 1 个有源蜂鸣器
◆ 1 个 RS232/RS485 选择接口
◆ 1 个串口选择接口
◆ 1 个 TF 卡接口(在板子背面)
◆ 2 个 10M/100M 以太网接口(RJ45)
◆ 1 个录音头(MIC/咪头)
◆ 1 路立体声音频输出接口
◆ 1 路立体声录音输入接口
◆ 1 个小扬声器(在板子背面)
◆ 2 个扬声器外接接口,左右声道。
◆ 1 组 5V 电源供应/接入口
◆ 1 组 3.3V 电源供应/接入口
◆ 1 个直流电源输入接口(输入电压范围:DC6~18V) ◆ 1 个启动模式选择配置接口
◆ 1 个 RTC 后备电池座,并带电池
◆ 1 个复位按钮,可用于复位 MPU 和 LCD
◆ 1 个功能按钮
◆ 1 个电源开关,控制整个板的电源
◆ 1 个 Mini PCIE 4G 模块接口
◆ 1 个 Nano SIM 卡接口
◆ 1 个 SDIO WIFI 接口
正点原子 I.MX6U-ALPHA 开发板底板的特点包括:
- 接口丰富。板子提供十来种标准接口,可以方便的进行各种外设的实验和开发。
- 设计灵活。我们采用核心板+底板形式,板上很多资源都可以灵活配置,以满足不同条件下的使用;我们引出了 105 个 IO 口,极大的方便大家扩展及使用。
- 资源丰富。板载高性能音频编解码芯片、六轴传感器、百兆网卡、光环境传感器以及各种接口芯片,满足各种应用需求。
- 人性化设计。各个接口都有丝印标注,且用方框框出,使用起来一目了然;部分常用外设大丝印标出,方便查找;接口位置设计合理,方便顺手。资源搭配合理,物尽其用。
I.MX6U-Mini 开发板底板资源
从上图可以看出,I.MX6U-Mini 开发板底板其实就是 I.MX6U-ALPHA 开发板的精简底板。Mini 开发板的外形尺寸为100mm*130mm
。正点原子 I.MX6U-Mini 开发板底板板载资源如下:
◆ 1 个核心板接口,支持 I.MX6ULL 核心板。
◆ 1 个电源指示灯(蓝色)。
◆ 1 个状态指示灯(红色)。
◆ 1 路 CAN 接口,采用 TJA1050 芯片。
◆ 1 路 485 接口,采用 SP3485 芯片。
◆ 1 个 ATK 模块接口,支持正点原子蓝牙/GPS/MPU6050/手势识别等模块。
◆ 1 个摄像头模块接口。
◆ 1 个 USB 串口,可用于代码调试。
◆ 1 个 USB HOST 接口,用于 USB 主机通信。
◆ 1 个有源蜂鸣器 。
◆ 1 个 RS232/RS485 选择接口。
◆ 1 个 TF 卡接口。
◆ 1 个 10M/100M 以太网接口(RJ45)
◆ 1 组 5V 电源供应/接入口
◆ 1 组 3.3V 电源供应/接入口
◆ 1 个直流电源输入接口(输入电压范围:DC6~18V)
◆ 1 个启动模式选择配置接口
◆ 1 个 RTC 后备电池座,并带电池
◆ 1 个复位按钮,可用于复位 MPU 和 LCD
◆ 1 个 ON/OFF 按钮。
◆ 1 个功能按钮
◆ 1 个电源开关,控制整个板的电源
◆ 1 个 SDIO WIFI 接口
正点原子 I.MX6U-Mini 开发板底板的特点包括:
- 外设部分电路原理图基本与 ALPHA 开发板一致,因此可以直接使用 ALPHA 开发板
的所有开发资料、视频和教程。 - Mini 底板相比 ALPHA 开发板在成本上有优势,适合学生朋友使用。
I.MX6U 核心板资源
接下来,我们来看 I.MX6ULL 核心板资源图,正点原子的 I.MX6ULL 核心板根据存储芯片的不同分为 EMMC 和 NAND 两种,根据对外提供的接口可以分为邮票孔和 BTB 两种。本教程主要使用与教学的,所以只会讲解 BTB 接口的核心板。
BTB 接口的 NAND 版本
BTB 接口的 NAND 版本核心板如下图所示:
从图可以看出,I.MX6ULL 核心板板载资源丰富,可以满足各种应用的需求。整个核心板的外形尺寸为 46mm*36mm
大小,非常小巧,并且采用了贴片板对板连接器,使得其可以很方便的应用在各种项目上。I.MX6ULL NAND
版核心板为工业级工作温度,可以应用在温度要求严格的场合。
正点原子 I.MX6ULL NAND 版核心板板载资源如下:
◆ CPU:MCIMX6Y2CVM05AB
(工业级)或 MCIMX6Y2CVM08AB
(工业级),主频分别为 528MHz 和 800MHz(实际为 792MHz),BGA289
◆ 外扩 DDR3L:NT5CC128M16JR-EK
,256MB 字节,工业级
◆ NAND FLASH:MT29F2G08ABAEAWP-IT
或 MT29F4G08ABADAWP-IT
,分别256MB/512MB 字节,均为工业级
◆ 两个 2*30 的防反插 BTB 座,共引出 120 PIN 。
BTB 接口的 EMMC 版本
BTB 接口的 EMMC 版本核心板如下图所示:
从图可以看出,EMMC 版本的核心和 NAND 版本的基本一样,不同之处在于将NAND 换成了 EMMC,将 DDR3L 换成了 512MB 的商业级。因此正点原子的 EMMC 核心板为商业级的工作温度范围,如需工业级的请联系定制。
正点原子 I.MX6ULL EMMC 版核心板板载资源如下:
◆ CPU:MCIMX6Y2CVM08AB(工业级),800MHz(实际 792MHz),BGA289
◆ 外扩 DDR3L:NT5CC256M16EP-EK,512MB 字节,商业级。
◆ EMMC:KLM8G1GET,这是一个 8GB 的 EMMC 芯片。
◆ 两个 2*30 的防反插 BTB 座,共引出 120 PIN
正点原子 I.MX6ULL 核心板的特点
正点原子 I.MX6ULL 核心板的特点包括:
- 体积小巧。核心板仅 46mm*36mm 大小,方便使用到各种项目里面。
- 集成方便。核心板使用 120PBTB 连接座,可以非常方便的集成到客户 PCB 上,更换简单,方便维修测试。
- 资源丰富。核心板板载:256MB/512MB DDR3L、可以选择 NAND 或 EMMC 等存储器,可以满足各种应用需求。
- 性能稳定。核心板采用 6 层板设计,单独地层、电源层,且关键信号采用等长线走线,保证运行稳定、可靠。
- 不管是 NAND 还是 EMMC 核心板均通过了 CE 和 FCC 认证。
- 人性化设计。底部放有详细丝印,方便安装;按功能分区引出 IO 口,方便布线。
正点原子 I.MX6U-ALPHA/Mini 开发板资源说明
资源说明部分,这两个开发板我们将分为两个部分说明:硬件资源说明和软件资源说明。
I.MX6U-ALPHA 硬件资源说明
这里我们首先详细介绍 I.MX6U-ALPHA 开发板的各个部分,我们将按逆时针的顺序依次介绍:
CAN 接口
这是开发板板载的 CAN 总线接口(CAN),通过 2 个端口和外部 CAN 总线连接,即 CANH和 CANL。这里提醒大家:CAN 通信的时候,必须 CANH 接 CANH,CANL 接 CANL,否则可能通信不正常!
RS232/485 选择接口
这是开发板板载的 RS232(COM3)/485 选择接口(JP1),因为 RS485 基本上就是一个半双工的串口,为了节约 IO,我们把 RS232(COM3)和 RS485 共用一个串口,通过 JP1 来设置当前是使用 RS232(COM3)还是 RS485。
这样的设计还有一个好处。就是我们的开发板既可以充当 RS232 到 TTL 串口的转换,又可以充当 RS485 到 TTL485 的转换。(注意,这里的 TTL 高电平是 3.3V)
I.MX6ULL 核心板接口
这是开发板底板上面的核心板接口,由 2 个 2*30 的贴片板对板接线端子(3710F 公座)组成,可以用来插正点原子的 I.MX6UL/ULL 核心板等,从而学习 I.MX6UL/6ULL 等芯片,达到一个开发板,学习多款 SOC 的目的,减少重复投资。
RGBLCD 接口
这是转接板自带的 RGB LCD 接口(LCD),可以连接各种正点原子的 RGB LCD 屏模块,并且支持触摸屏(电阻/电容屏都可以)。采用的是 RGB888 格式,可显示 1677 万色,色彩显示
丰富。
后备电池接口
这是 I.MX6UL/ULL 后备区域的供电接口,可以用来给 I.MX6UL/ULL 的后备区域提供能量,在外部电源断电的时候,维持 SNVS 区域数据的存储,以及 RTC 的运行。
USB HOST(OTG)
这是开发板板载的一个侧插式的 USB-A 座(USB_HOST),由于 I.MX6U 的 USB 支持 OTG功能,所以 USB 既可作 HOST,又可做 SLAVE。我们可以通过这个 USB-A 座,连接 U 盘/USB鼠标/USB 键盘等其他 USB 从设备,从而实现 USB 主机功能。不过特别注意,由于 USB HOST和 USB SLAVE 是共用一个 USB 端口,所以两者不可以同时使用。
USB 串口/串口 1
这是 USB 串口同 I.MX6U 的串口 1 进行连接的接口(JP5),标号 RXD 和 TXD 是 USB 转串口的 2 个数据口(对 CH340C 来说),而 U1_TX(TXD)和 U1_RX(RXD)则是 I.MX6U 串口 1的两个数据口。他们通过跳线帽对接,就可以连接在一起了,从而实现 I.MX6U 的串口通信。
设计成 USB 串口,是出于现在电脑上串口正在消失,尤其是笔记本,几乎清一色的没有串口。所以板载了 USB 串口可以方便大家调试。而在板子上并没有直接连接在一起,则是出于使用方便的考虑。这样设计,你可以把 I.MX6U-ALPHA 开发板当成一个 USB 转 TTL 串口,来和其他板子通信,而其他板子的串口,也可以方便地接到开发板上。
USB SLAVE(OTG)
这是开发板板载的一个 MiniUSB 头(USB_SLAVE),用于 USB 从机(SLAVE)通信,与上面的 USB HOST 一起作为 OTG 功能。通过此 MiniUSB 头,开发板就可以和电脑进行 USB通信了。
注意:该接口不能和 USB HOST 同时使用。
开发板总共板载了两个 MiniUSB 头,一个(USB_TTL)用于 USB 转串口,连接 CH340C芯片;另外一个(USB_SLAVE)用于 I.MX6U 内部 USB。同时开发板可以通过此 MiniUSB 头供电,板载两个 MiniUSB 头(不共用),主要是考虑了使用的方便性,以及可以给板子提供更大的电流(两个USB 都接上)这两个因素。
USB 转串口
这是开发板板载的另外一个 MiniUSB 头(USB_TTL),用于 USB 连接 CH340C 芯片,从而实现 USB 转串口。同时,此 MiniUSB 接头也是开发板的电源提供口。
摄像头模块接口
这是开发板板载的一个摄像头模块接口(P1),摄像头模块(需自备),对准插入到此插槽
中。
启动(BOOT)拨码开关
I.MX6U 支持多种启动方式,比如 SD 卡、EMMC、NAND、QSPI FALSH 和 USB 等,要想从某一种设备启动就必须先设置好启动拨码开关。
I.MX6U-ALPHA 开发板用了一个 8P 的拨码开关来选择启动方式,正点原子开发板支持从 SD 卡、EMCM、NAND 和 USB 这四种启动方式,这四种启动方式对应的拨码开关拨动方式已经写在了开发板上。大家在使用的时候根据自己的实际需求设置拨码开关即可。
TF 卡接口
这是开发板板载的一个标准 TF 卡接口(TF_CARD),该接口在开发板的背面,采用小型的TF 卡接口,USDHC 方式驱动,有了这个 TF 卡接口,就可以满足海量数据存储的需求。
光环境传感器
这是开发板板载的一个光环境三合一传感器(U9),它可以作为:环境光传感器、近距离(接近)传感器和红外传感器。通过该传感器,开发板可以感知周围环境光线的变化,接近距离等,从而可以实现类似手机的自动背光控制。
蜂鸣器
这是一个有源蜂鸣器,通过高低电平控制蜂鸣器的开关。
SDIO WIFI 接口
这是开发板上的一个 SDIO WIFI(P4)接口,可以通过此接口连接正点原子出品的 SDIO WIFI
模块。SDIO WIFI 接口和 TF 卡共用一个 USDHC 接口,因此不能同时和 TF 卡使用。
ATK 模块接口
这是开发板板载的一个正点原子通用模块接口(JP2),目前可以支持正点原子开发的 GPS模块、蓝牙模块、MPU6050 模块、激光测距模块和手势识别模块等,直接插上对应的模块,就可以进行开发。后续我们将开发更多兼容该接口的其他模块,实现更强大的扩展性能。
左右声道喇叭接口
开发板板载了一个高性能的音频解码芯片 WM8960,此芯片可以驱动左右声道 2 个 8Ω,1W 的小喇叭,这两个接口用于外接两个左右声道小喇叭。
不过在 I.MX6U-ALPHA 开发板的背面已经默认焊接了一个小喇叭,这个小喇叭接到了右声道上,因此如果要在此接口的右声道上外接小喇叭,那么必须先将开发板上自带的喇叭拆掉,否则WM8960 驱动能力可能不足。
耳机输出接口
这是开发板板载的音频输出接口(PHONE),该接口可以插 3.5mm 的耳机,当 WM8960 放音的时候,就可以通过在该接口插入耳机,欣赏音乐。此接口支持耳机插入检测,如果耳机不插入的话默认通过喇叭播放音乐,如果插入耳机的话就关闭喇叭,通过耳机播放音乐。
录音输入接口
这是开发板板载的外部录音输入接口(LINE_IN),通过咪头我们只能实现单声道的录音,而通过这个 LINE_IN,我们可以实现立体声录音。
复位按键
这是开发板板载的复位按键(RESET),用于复位 I.MX6U,还具有复位液晶的功能,因为液晶模块的复位引脚和 I.MX6U 的复位引脚是连接在一起的,当按下该键的时候,I.MX6U 和液晶一并被复位。
用户按键 KEY
这是开发板板载的 1 个机械式输入按键(KEY0),可以做为普通按键输入使用。
红色用户 LED 灯
这是开发板板载的 1 个 LED 灯,为红色,用户可以使用此 LED 灯。在调试代码的时候,使用 LED 来指示程序状态,这是非常不错的一个辅助调试方法。
蓝色电源指示 LED 灯
这是开发板电源指示 LED 灯,为蓝色,当板子供电正常的时候此灯就会常亮。如果此灯不亮的话就说明开发板供电有问题(排除 LED 灯本身损坏的情况)。
WM8960 音频 DAC
这是一颗欧胜公司出品的音频 DAC 芯片,用于实现音乐播放与录音。
MIC(咪头)
这是开发板的板载录音输入口(MIC),该咪头直接接到 WM8960 的输入上,可以用来实现录音功能。
Nano SIM 卡接口
这是开发板上的 Nano SIM 卡接口,如果要使用 4G 模块的话就需要在此接口中插入 Nano SIM 卡。
ICM20608 六轴传感器
这是开发板板载的一个六轴传感器芯片(U6),型号为 ICM20608,此芯片采用 SPI 接口与I.MX6U 相连接。ICM20608 内部集成 1 个三轴加速度传感器和 1 个三轴陀螺仪,该传感器在姿态测量方面应用非常广泛。所以喜欢玩姿态测量的朋友,也可通过本开发板进行学习。
Mini PCIE 4G 接口
这是开发板板载的一个 Mini PCIE 座,但是本质上走的 USB 协议,通过此接口可以连接 4G模块,比如高新兴物联的 ME3630。
接上 4G 模块以后 I.MX6U-ALPHA 开发板就可以实现 4G上网功能,对于不方便布网线或者没有 WIFI 的场合来说是个不错的选择。
DC6~16V 电源输入
这是开发板板载的一个外部电源输入口(DC_IN),采用标准的直流电源插座。
开发板板载了 DC-DC 芯片(JW5060T),用于给开发板提供高效、稳定的 5V 电源。由于采用了 DC-DC 芯片,所以开发板的供电范围十分宽,大家可以很方便的找到合适的电源(只要输出范围在DC6~16V 的基本都可以)来给开发板供电。
在耗电比较大的情况下,比如用到 4.3 屏/7 寸屏/网口的时候,建议使用外部电源供电,可以提供足够的电流给开发板使用。
电源开关
这是开发板板载的电源开关(K1)。该开关用于控制整个开发板的供电。这是一个两段式拨动开关,拨到右边关闭开发板电源,整个开发板都将断电,电源指示灯(PWR)会随之熄灭。拨到右边打开开发板电源,整个板子开始供电,电源指示灯(PWR)点亮。
5V 电源输入/输出
这是开发板板载的一组 5V 电源输入输出排针(2*3)(VOUT2),该排针用于给外部提供 5V的电源,也可以用于从外部接 5V 的电源给板子供电。
同样大家在实验的时候可能经常会为没有 5V 电源而苦恼不已,正点原子充分考虑到了大家需求,有了这组 5V 排针,你就可以很方便的拥有一个简单的 5V 电源(USB 供电的时候,最大电流不能超过 500mA,外部供电的时候,最大可达 3000mA)。
3.3V 电源输入/输出
这是开发板板载的一组 3.3V 电源输入输出排针(2*3)(VOUT1),用于给外部提供 3.3V 的
电源,也可以用于从外部接 3.3V 的电源给板子供电。
大家在实验的时候可能经常会为没有 3.3V 电源而苦恼不已,有了 I.MX6U-ALPHA 开发板,
3 路 USB HOST 接口
这是开发板板载的 3 路 USB HOST 接口,I.MX6U 有两个 USB 接口,正点原子I.MX6UALPHA 开发板通过 GL850 芯片将 I.MX6U 的 USB2 扩展成了 4 路 USB HOST,其中一路用于连接 4G 模块,另外 3 路作为 USB HSOT,用户可以通过这三路 USB HOST 接口连接 USB 鼠标、USB 键盘、U 盘等设备。
引出的 IO 口
这是开发板 IO 引出端口 JP6,采用 2*16 排针,总共引出 31 个 IO 口。
以太网接口 1(RJ45)
I.MX6U 有两个网络接口:ENET1 和 ENET2,这是 ENET1 网络接口,可以用来连接网线,实现网络通信功能。该接口使用 I.MX6U 内部的 MAC 控制器外加 PHY 芯片,实现 10/100M 网络的支持。
以太网接口 2(RJ45)
这是开发板板载的以太网接口 2,也就是 I.MX6U 的 ENET2 网络接口。
RS232 接口(母)
这是开发板板载的另外一个 RS232 接口(COM3),通过一个标准的 DB9 母头和外部的串口连接。通过这个接口,我们可以连接带有串口的电脑或者其他设备,实现串口通信。
RS485 接口
这是开发板板载的 RS485 总线接口(RS485),通过 2 个端口和外部 485 设备连接。这里提醒大家,RS485 通信的时候,必须 A 接 A,B 接 B。否则可能通信不正常。
I.MX6U-ALPHA 软件资源说明
上面我们详细介绍了正点原子 I.MX6U-ALPHA 开发板的硬件资源。接下来,我们将向大家
简要介绍一下 I.MX6U-ALPHA 开发板的软件资源。
软件资源分为 3 部分:Linux 系统驱动软件资源、裸机例程、Linux 驱动例程,我们依次来看一下这三类软件资源的情况。
关于 Linux 系统软件资源如表所示:
接下来看一下 I.MX6U-ALPHA 开发板的裸机例程,如表所示:
从上表可以看出,正点原子的I.MX6U-ALPHA开发板裸机例程似乎不是很多,不像STM32、RT1052 那样六七十个裸机例程,这是因为嵌入式 Linux 和单片机的开发方式以及应用场合不同。
单片机学名叫做 Microcontroller,也就是微控制器,主要用于控制相关的应用,因此单片机的外设都比较多,比如很多路的 IIC、SPI、UART、定时器等等。
嵌入式 Linux 开发主要注重于高端应用场合,比如音视频处理、网络处理等等。比如一个机器人,高性能处理器加 Linux 系 统(或者其他系统)作为机器人的大脑,主要负责接收各个传感器采集的数据然后对原始数据进行处理,得到下一步执行指令,这个往往需要很高的性能。当处理完成得到下一步要做的动作之后大脑就会将数据发给控制机器人各个关节电机的驱动控制器,这些驱动控制器一般都是单片机做的。
所以大家在学习嵌入式 Linux 开发的时候一定不要深陷裸机,我们之所以讲解裸机是为了给嵌入式 Linux 打基础,让大家了解所使用的 SOC、了解 GCC 那一套工作流程,最终的目的都是为了嵌入式 Linux 做准备的。
看完裸机例程以后我们最后再来看一下正点原子为 I.MX6U-ALPHA 开发板准备的嵌入式Linux 驱动例程,如表所示:
因为有些外设驱动在 Linux 内核里面已经集成了,因此并没有编写独立的驱动,我们会在相应的章节里面对这些驱动进行讲解。关于正点原子 I.MX6U-ALPHA 开发板的软件资源就讲解到这里,软件资源我们也会持续更新的。
I.MX6U-Mini 硬件资源说明
SDIO WIFI 接口
这是开发板上的一个 SDIO WIFI(P2)接口,可以通过此接口连接正点原子出品的 SDIO WIFI模块。SDIO WIFI 接口和 TF 卡共用一个 USDHC 接口,因此不能同时和 TF 卡使用。
USB 转串口
USB 串口,为 MiniUSB 接口(USB_TTL),USB 连接 CH340C 芯片,CH340C 与 I.MX6IULL的串口 1 相连接,从而实现 USB 转串口。设计成 USB 串口,是出于现在电脑上串口正在消失,尤其是笔记本,几乎清一色的没有串口,所以板载 USB 串口可以方便大家调试。
I.MX6ULL 核心板接口
这是开发板底板上面的核心板接口,由 2 个 2*30 的贴片板对板接线端子(3710F 公座)组成,可以用来插正点原子的 I.MX6UL/ULL 核心板等,从而学习 I.MX6UL/6ULL 等芯片,达到一个开发板,学习多款 SOC 的目的,减少重复投资。
RGBLCD 接口
这是转接板自带的 RGB LCD 接口(LCD),可以连接各种正点原子的 RGB LCD 屏模块,并且支持触摸屏(电阻/电容屏都可以)。采用的是 RGB888 格式,可显示 1677 万色,色彩显示丰富。
USB HOST 接口
这是开发板板载的一个卧式 USB-A 座(USB_HOST),我们可以通过这个 USB-A 座,连接
U 盘/USB 鼠标/USB 键盘等其他 USB 从设备,从而实现 USB 主机功能。
后备电池接口
这是 I.MX6ULL 后备区域的供电接口,可以用来给 I.MX6ULL 的后备区域提供能量,在外部电源断电的时候,维持 SNVS 区域数据的存储,以及 RTC 的运行。
启动(BOOT)拨码开关
I.MX6U 支持多种启动方式,比如 SD 卡、EMMC、NAND、QSPI FALSH 和 USB 等,要想从某一种设备启动就必须先设置好启动拨码开关。
I.MX6U-Mini 开发板用了一个 8P 的拨码开关来选择启动方式,支持从 SD 卡、EMCM、NAND 和 USB 这四种启动方式,这四种启动方式对应的拨码开关拨动方式已经写在了开发板上。大家在使用的时候根据自己的实际需求设置拨码开关即可。
摄像头模块接口
这是开发板板载的一个摄像头模块接口(P1),摄像头模块(需自备),对准插入到此插槽中。
ATK 模块接口
这是开发板板载的一个正点原子通用模块接口(P7),目前可以支持正点原子开发的 GPS模块、蓝牙模块、MPU6050 模块、激光测距模块和手势识别模块等,直接插上对应的模块,就可以进行开发。后续我们将开发更多兼容该接口的其他模块,实现更强大的扩展性能。
蜂鸣器
这是一个有源蜂鸣器,通过高低电平控制蜂鸣器的开关。
ON/OFF 按键
这是一个 ON/OFF 按键,连接到 I.MX6ULL 的 OF/OFF 引脚上。
复位按键
这是开发板板载的复位按键(RESET),用于复位 I.MX6U,还具有复位液晶的功能,因为液晶模块的复位引脚和 I.MX6U 的复位引脚是连接在一起的,当按下该键的时候,I.MX6U 和液晶一并被复位。
用户按键 KEY
这是开发板板载的 1 个机械式输入按键(KEY0),可以做为普通按键输入使用。
蓝色电源指示 LED 灯
这是开发板电源指示 LED 灯,为蓝色,当板子供电正常的时候此灯就会常亮。如果此灯不
亮的话就说明开发板供电有问题(排除 LED 灯本身损坏的情况)。
红色用户 LED 灯
这是开发板板载的 1 个 LED 灯,为红色,用户可以使用此 LED 灯。在调试代码的时候,使用 LED 来指示程序状态,这是非常不错的一个辅助调试方法。
引出的 IO 口
这是开发板 IO 引出端口 P4,采用 2*24 排针,总共引出 41 个 IO 口。
3.3V 电源输入/输出
这是开发板板载的一组 3.3V 电源输入输出排针(2*3)(JP1),用于给外部提供 3.3V 的电源,也可以用于从外部接 3.3V 的电源给板子供电。
大家在实验的时候可能经常会为没有 3.3V 电源而苦恼不已,有了 I.MX6U-Mini 开发板,你就可以很方便的拥有一个简单的 3.3V 电源(最大电流不能超过 3000mA)。
5V 电源输入/输出
这是开发板板载的一组 5V 电源输入输出排针(2*3)(JP2),该排针用于给外部提供 5V 的
电源,也可以用于从外部接 5V 的电源给板子供电。
同样大家在实验的时候可能经常会为没有 5V 电源而苦恼不已,正点原子充分考虑到了大家需求,有了这组 5V 排针,你就可以很方便的拥有一个简单的 5V 电源(USB 供电的时候,最大电流不能超过 500mA,外部供电的时候,最大可达 3000mA)。
电源开关
这是开发板板载的电源开关。该开关用于控制整个开发板的供电。这是一个自锁式开关,按下以后打开开发板电源,整个板子开始供电,电源指示灯(PWR)点亮。再次按下开关弹起,关闭开发板电源,整个开发板都将断电,电源指示灯(PWR)会随之熄灭。
DC6~16V 电源输入
这是开发板板载的一个外部电源输入口(DC_IN),采用标准的直流电源插座。开发板板载了 DC-DC 芯片(JW5060T),用于给开发板提供高效、稳定的 5V 电源。
由于采用了 DC-DC 芯片,所以开发板的供电范围十分宽,大家可以很方便的找到合适的电源(只要输出范围在DC6~16V 的基本都可以)来给开发板供电。在耗电比较大的情况下,比如用到 4.3 屏/7 寸屏/网口的时候,建议使用外部电源供电,可以提供足够的电流给开发板使用。
以太网接口(RJ45)
这是开发板板载的以太网接口,连接到 I.MX6U 的 ENET2 网络接口。
CAN 接口
这是开发板板载的 CAN 总线接口(CAN),通过 2 个端口和外部 CAN 总线连接,即 CANH和 CANL。
这里提醒大家:CAN 通信的时候,必须 CANH 接 CANH,CANL 接 CANL,否则可能通信不正常!
RS485/串口 3 接口
这是 RS485 与 I.MX6ULL 串口 3 的跳线帽设置接口,如果将 485_R 与 U3_T、485_T 与 U3_R 连起来,那么 RS485 接口就会使用 I.MX6ULL 的串口 3。做 RS485 实验的时候一定要将此接口连起来。
RS485 接口
这是开发板板载的 RS485 总线接口(RS485),通过 2 个端口和外部 485 设备连接。这里提醒大家,RS485 通信的时候,必须 A 接 A,B 接 B。否则可能通信不正常。
JTAG 接口
10P 的 JTAG 接口,可用于连接 JLINK 等调试器。
USB OTG 接口
这是开发板板载的一个 MiniUSB 头(USB_OTG),用于 USB OTG 实验。
TF 卡接口
这是开发板板载的一个标准 TF 卡接口(TF_CARD),该接口在开发板的背面,采用小型的TF 卡接口,USDHC 方式驱动,有了这个 TF 卡接口,就可以满足海量数据存储的需求。
I.MX6U-Mini 软件资源说明
由于 Mini 板是 ALPHA 的精简底板,因此 Mini 板的软件资源和 ALPHA 的软件资源可以共用,包括例程、视频和教程,除了 Mini 板没有的外设。具体软件资源请参考对于 ALPHA 开发板的描述。
I.MX6ULL 核心板硬件资源说明
核心板资源参考图和图 中的标注部分,我们将按逆时针的顺序依次介绍:
BTB 接口的 NAND 版本核心板如下图所示:
BTB 接口的 EMMC 版本核心板如下图所示:
核心板电源指示灯
这是核心板板载的一个蓝色 LED 灯,用于指示核心板供电是否正常,如果核心板供电正常的话此灯就会点亮。
NAND/EMMC 存储芯片
这是核心板上板载的存储芯片,分为 NAND 和 EMMC 两种。对于 NAND 版本的核心板共有256MB 和 512MB 两 种 容 量 的 NAND , 型 号 分 别 为MT29F2G08ABAEAWP-IT
或MT29F4G08ABADAWP-IT
,这两种型号的 NAND FLASH 工作温度范围都为工业级。
EMMC 版本的核心板使用 8GB 的 EMMC,型号为 KLM8G1GET
。
DDR3L 芯片
这是核心板板载的 DDR3L 芯片,NAND 版本核心板的 DDR3L 容量为 256MB,EMMC 版本的核心板的 DDR3L 容量为 512MB。型号分别为NT5CC128M16JR-EK
和 NT5CC256M16EPXEK
。
如果要用于 UI 开发,那么最好选择 512MB 的 DDR3L,当然了,正点原子的 I.MX6U 核心板支持定制,具体定制方法请联系销售。
CPU
这是核心板的 CPU,型号为MCIMX6Y2CVM08AB
,MCIMX6Y2CVM08AB
主频为800MHz(实际 792MHz)。
该芯片采用 Coretx-A7 内核,自带 32KB 的 L1 指令 Cache、32KB 的 L1 数据 Cache、128KB的 L2Cache、集成 NEON 和 SIMDv2、支持硬件浮点(FPU)计算单元,浮点计算架构为VFPv4-D32、1个 RGB LCD 接口、2 个 CAN 接口、2 个 10M/100M 网络接口、2 个 USB OTG 接口(USB2.0)、2 路ADC、8 个串口、3 个 SAI、4 个定时器、8 路 PWM、4 路 I2C 接口、4 路 SPI 接口、一路 CSI 摄像头接口、2 个 USDHC 接口,支持 4 位 SD 卡,最高可以支持 UHS-I SDR 104 模式,支持 1/4/8 位的EMMC,最高可达 HS200 模式、一个外部存储接口、支持 16 位的 LPDDR2-800、DDR3-800 和DDR3L-800、支持 8 位的 MLC/SLC NAND Flash,支持 2KB、4KB 和 8KB 页大小,以及 124 个通用IO 口等。
32.768KHz 晶振
这是一个无源的 32.768KHz 晶振,供 I.MX6U 内部 RTC 使用。
24MHz 晶振
这是一个无源的 24MHz 晶振,供 I.MX6U 使用。
另外,I.MX6U 核心板的接口在底部,通过两个 2*30 的板对板端子(3710M 母座)组成,总共引出了 104 个 IO,通过这个接口,可以实现与 I.MX6U-ALPHA 底板对接。
最近更新
欢迎关注微信公众号
标签:MX6U,板载,USB,接口,开发板,裸机,串口 来源: https://blog.csdn.net/aa1319594154/article/details/120153470