产品选型
- 查看过去版本:TQi.MX6UL_V1.0
产品名称 | TQi.MX6UL_B | TQi.MX6ULL |
---|---|---|
架构 | Cortex_A7 | Cortex_A7 |
CPU | NXP iMX6UL | NXP iMX6ULL |
主频 | 528MHz | 528MHz |
内存 | 256MB | 256MB |
FLASH | 256MB | 256MB |
设计工艺 | 底板+核心板 | 底板+核心板 |
核心板引脚数 | 160pin | 160pin |
核心板层数 | 6层 | 6层 |
电源管理芯片 | 分立电源电路 | 分立电源电路 |
核心板尺寸 | 50*40mm | 50*40mm |
支持系统 | Linux4.1+QT5.5 | Linux4.1+QT5.5 |
底板层数、尺寸 | 2层;182.49*112.47mm | 2层;182.49*112.47mm |
底板供电电源 | 12V1A | 12V1A |
USB_Host | 4路(2.0) | 4路(2.0) |
USB_OTG | 1路(2.0) | 1路(2.0) |
串口 | 最多支持8路 | 最多支持8路 |
以太网 | 2路,100M/10M | 2路,100M/10M |
GPIO | 3路,扩展接口引出 | 3路,扩展接口引出 |
ADC | 最多支持10路 | 最多支持10路 |
PWM | 2路,扩展接口引出 | 2路,扩展接口引出 |
SPI | 2路,扩展接口引出 | 2路,扩展接口引出 |
IIC | 2路(其中扩展接口出1路) | 2路(其中扩展接口出1路) |
CAN | 2路 | 2路 |
音频 | 1路PHONE,2路输出 | 1路PHONE,2路输出 |
LCD | 40P 0.5FPC,最大分辨率:1366*768 | 40P 0.5FPC,最大分辨率:1366*768 |
SD卡 | 1路 | 1路 |
RS485 | 1路(与UART2复用) | 1路(与UART2复用) |
Camera | 可支持USB摄像头 | 可支持USB摄像头 |
Jtag | 1路 | 1路 |
工作环境温度 | 商业级 0~70℃,工业级 -40~85℃ | 商业级 0~70℃,工业级 -40~85℃ |
配套模块 | 链接 | 链接 |
产品图片 | ||
应用领域 | 适用工业控制、工业物联网、医疗电子、数据采集、仪器仪表、数字终端、手持仪器、数据通迅、消费电子、安全防护、集中器、网关等 |
烧录固件
- 启动方式介绍
TQIMX6UL 提供 3 种启动方式,左边(靠近耳机接口)为 SD/USB 启动端,右边为 FLASH 启动端。通过启动开关来切换不同的启动方式。 - 烧录相关说明
出厂默认已经烧写Linux系统,NAND启动模式下可以正常启动系统,如果需要更换更新版本的系统,则需要使用USB、SD卡或TFTP烧录方式重新烧录板子。
注:烧录前建议先连接串口线,如烧录失败,根据串口打印信息分析错误原因。
USB烧录
- 将开发板拨码拨为USB启动(SD/USB端),通过USB otg接口连接板子和电脑;
- 下载mfgtools_for_6ul_v2.2.zip
(提取码:6nrb)烧写工具,烧录方法参考:TQIMX6UL_COREB镜像烧写.pdf第三章节。
- 烧录成功后断电,拨回NAND启动(flash端)启动。
SD卡烧录
- 制作烧录卡
(1)Windows下制作烧录卡
下载Windows_TQSDMaker.zip (提取码:7yq5),详细的Windows下制作烧录卡信息请查看使用手册:TQSDMaker用户使用手册.pdf。
(2)Linux下制作烧录卡
下载images_imx6ul_v2.0.tar.bz2 (提取码:470h),详细的Linux下制作烧录卡信息请查看:TQIMX6UL_COREB镜像烧写.pdf。 - 功制作SD烧录卡后,将拨码启动方式拨为01(SD卡启动),插卡上电进行烧录操作;
- 烧录成功后断电拨回NAND启动(10)启动。
TFTP烧录
如果无法从 nand 启动,在 tftp 烧写前要先制作 sd 启动卡,如果nand可以启动可以直接进入uboot菜单进行TFTP烧录操作,详细的TFTP烧录可查看手册:<<TQIMX6UL_COREB镜像烧写.pdf>>TFTP烧录章节。
- 搭建TFTP服务器,具体可参考安装编译环境章节
- 放置要烧写的镜像置TFTP目录,相应镜像名修改为 u-boot.imx zImage tq-imx6ul.dtb rootfs.img(烧写镜像的名子可以在 uboot 中设置的,这里使用默认镜像名)
- 接上串口,上电。在uboot倒数完之前,按空格键中断自动启动。
... Date: 2010-01-01 (Friday) Time: 3:45:13 Hit any key to stop autoboot: 0 #读秒倒数
出现以上字段之前按
- 进入命令行菜单选择menu->0->6,设置TFTP服务器参数
- 进入命令行菜单选择menu->n,选择相应选项更新所要更新的镜像即可
##### TQ-IMX6UL U-boot MENU ##### [TFTP MODE] ####################################### [1] Download u-boot to Nand Flash [uboot.imx] --tftp 更新 u-boot [2] Download Logo image to Nand Flash [logo.bmp] --tftp 更新 logo [3] Download Linux Kernel to Nand Flash [zImage] --tftp 更新内核 [4] Download Device tree blob(*.dtb) [tq-imx6ul.dtb] --tftp 更新设备树 [5] Download UBIFS image to Nand Flash [rootfs.img] --tftp 更新文件系统 [7] Download all (uboot,kernel,dtb,rootfs) --tftp 更新全部镜像 [8] Boot the system --启动系统 [9] Format the Nand Flash --格式化 nand flash [0] Set the boot parameters --设置其他参数 [p] Test network (Ping PC's IP) [pc:192.168.1.35,arm:192.168.1.41] --测试 pc 与 arm 网络是否连通 [r] Restart u - boot --重启 u-boot [k] Test kernel Image (zImage) --测试内核 [d] Test dtb Image (*.dtb) --测试设备树 [a] test kernel and dtb --测试内核和设备树 [q] Return Main menu --返回主菜单 Please press a key to continue :
- 更新完按8启动系统
串口调试
连接串口线
Windows平台使用终端
因为在window平台下只是作为测试使用,并没有在上面进行开发,所以搭建过程较简单,只是安装一个串口终端即可。
首先安装SecureCRT安装结束后,单击SecureCRT.exe,下载SecureCRT.rar(提取码:6smr),打开SecureCRT,如下图所示:
单击上图中红色框的图标,出现如下图设置框:
在协议里面选择Serial,出现如下图所示的对话框,详细设置参考下图。
注意:端口选项部分根据您的实际使用的端口进行配置,其他选项请一定配置如下图所示。
说明:RTS/CTS一定不能选,否则可能出现串口有输出,没法输入的情况。
配置完毕后,单击上图的“连接”选项即可连通串口。
说明1:当打开了多个串口工具,并且他们还都使用同一个串口端口,那么肯定会出现后来打开的软件报告端口忙的错误,解决办法:关掉不需要的串口工具。
说明2:在设备管理器中可以查看您的电脑的串口设备名,下图中红色框内的COM3和COM4就是本手册编写者的电脑里面的串口设备名(如果是在下图所示的电脑中设置SecureCRT软件时,请将端口栏设置为COM3或COM4,而不是上图中的COM1了,这里特意用了两台不一样的电脑进行截图加以说明的),下图的COM3和COM4仅供参考,您的电脑的串口名请以实际为准;如果您的电脑没有串口设备,请使用USB转串口,USB转串口后的设备名也是COMn(n的数值以实际为准)。
Ubuntu平台使用终端
1.安装minicom
用户可以通过网络或者直接使用光盘的源码进行安装。使用网络安装需要连接互联网,更为简单方便,推荐使用。
安装minicom。
直接在终端执行:
#apt-get install minicom
即可。
2.配置minicom
安装minicom完成后,输入命令#minicom -s
启动,将出现配置菜单:使用PC键盘的上下键选中serial port setup选项后,用回车键进入串口配置。
进入串口配置界面,输入A配置串口驱动为/dev/ttyS0(不管在windows中是COMn(n可以是任意数),在虚拟机的Ubuntu下均是ttyS0)后回车,如果是usb转串口设备名应该作用/dev/ttyUSBn(n为数字,视实际而定,一般为0)。输入E配置速率为115200 8N1输入F将Hardware Flow Control设为NO,回车退出。
由于使用minicom作为超级终端控制路由器等设备, 而不是控制modem,所以需要修改modem and dialing。
将Modem and dialing配置单中得Init string、 Reset string、Hang-up string设置为空。
Step6、设置完成后选择Save setup as dfl选项将当前设置保存为默认设置;在配置菜单上选择Save setup as dfl保存配置单(一定要做这一步,否则下次启动minicom时还需要重新配置);选择Exit退出配置并进入minicom的操作界面。
下次需要启动minicom时,在终端中输入minicon后回车即可直接进入。命令minicom是进入串口超级终端画面,而minicom -s是配置minicom的命令。minicom是基于窗口的。要弹出所需功能的窗口,可按下ctrl-a,然后再按各功能键(a-z或A-Z)。先按ctrl-a,再按z,将出现一个帮助窗口,提供了所有命令的简述。
注意:非正常关闭minicom,会在/var/lock下创建几个文件LCK*,这几个文件可能会阻止minicom的运行,将它们删除后即可恢复。
说明1:如果您是在虚拟机中使用minicom,您需要在启动虚拟机中的Ubuntu之前先在您的虚拟机中添加串口设备,然后再启动虚拟机中的Ubuntu。还需要注意一点:当Windows中使用了串口设备(比如启动了SecureCRT软件,并且已经使用COM3这个串口端口),然后如果在虚拟机中设置的也是COM3这个端口,那么在虚拟机中的Ubuntu启动后,在minicom中是没法使用串口的,只能选择关闭SecureCRT软件,释放COM3,然后虚拟机中的Ubuntu才能够使用该串口。
说明2:输入sudo minicom -D /dev/ttyUSB0可以直接指定USB串口设备。
扩展模块
模块名称 | TQIMX6UL | TQIMX6ULL |
---|---|---|
5寸高清电容屏 | OK | OK |
TN92 7寸电容/电阻屏 | OK | OK |
TN83 7寸电阻屏 | OK | OK |
7寸高清屏 | OK | OK |
10.4寸电阻屏 | OK | OK |
WIFI(RTL8723+BT) | OK | OK |
4G(SIM7600) | OK | OK |
4G(N720) | OK | OK |
功能配置
切换屏幕、设置网络环境等uboot使用请查看TQIMX6UL_COREB_uboot菜单手册.pdf第六章。
安装编译环境
注:以下环境是在ubuntu16.04、64bit系统下搭建,其他系统或其他版本仅供参考。
1.下载gcc-linaro-4.9-20190425.tar.bz2(提取码:vub7)文件,将其拷贝到根目录/opt下,然后在ubuntu系统中执行
#cd /opt
#tar jxvf gcc-linaro-4.9-20190425.tar.bz2 -C /
#echo PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/opt/EmbedSky/linaro-4.9/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin:/opt/EmbedSky/linaro-4.9/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/sysroot/usr/bin">> /etc/environment
#source /etc/environment
#arm-linux-gnueabihf-gcc -v
搭建nfs服务器
在Ubuntu系统中执行以下命令,可以在ubuntu系统中搭建nfs服务器:
#apt-get install nfs-common
#mkdir /opt/nfs
#echo "/opt/nfs *(rw,sync,no_root_squash,no_subtree_check)">> /etc/exports
#/etc/init.d/nfs-kernel-server restart
搭建tftp服务器
在pc机中执行以下命令,可以在ubuntu 系统中搭建tftp服务器:
#apt-get install tftp-hpa tftpd-hpa
#mkdir /opt/tftp
#echo "TFTP_USERNAME=\"tftp\""> /etc/default/tftpd-hpa
#echo "TFTP_DIRECTORY=\"/opt/tftp\"">> /etc/default/tftpd-hpa
#echo "TFTP_ADDRESS=\"0.0.0.0:69\"">> /etc/default/tftpd-hpa
#echo "TFTP_OPTIONS=\"-l -c -s\"">> /etc/default/tftpd-hpa
#service tftpd-hpa restart ;注此命令需要每次开机执行一次才能使用
搭建ftp服务器
在pc机中执行以下命令,可以在ubuntu系统中搭建ftp服务器:
#apt-get install vsftpd
#mkdir /opt/ftp
#useradd -d /opt/ftp -s /bin/bash ftpname
#passwd ftpname ;设置密码,例如设置为123
#service vsftpd start
使用方法:
在开发板中执行ftpget -u ftpname -p 123 192.168.1.xxx zImage
获取电脑中/opt/ftp目录下的zImage文件
硬件开发指南
pin脚功能
pin | 引脚名称 | 功能描述 | 使用注意事项备注 | pin | 引脚名称 | 功能描述 | 使用注意事项备注 |
---|---|---|---|---|---|---|---|
1 | VDD_5V | 供电功能 | 2 | GND | |||
3 | VDD_5V | 供电功能 | 4 | GND | |||
5 | USB_OTG1_VBUS | USB OTG功能 | USB OTG电源脚 | 6 | USB_OTG2_DP | USB HOST功能 | 数据线正极 |
7 | USB_OTG1_ID | USB OTG扩展ID引脚 | 8 | USB_OTG2_DM | 数据线负极 | ||
9 | USB_OTG1_DP | 数据线正极 | 10 | UART1_TXD | 串口1(调试串口)发送 | 对应节点/dev/ttySAC0 | |
11 | USB_OTG1_DM | 数据线负极 | 12 | UART1_RXD | 串口1(调试串口)接收 | ||
13 | UART2_TXD | 串口2发送 | 对应节点/dev/ttySAC1 | 14 | UART3_TXD | 串口3发送 | 对应节点/dev/ttySAC2 |
15 | UART2_RXD | 串口2接收 | 16 | UART3_RXD | 串口3接收 | ||
17 | UART4_TXD | 串口4发送 | 对应节点/dev/ttySAC3 | 18 | UART5_TXD | 串口5发送 | 对应节点/dev/ttySAC4 |
19 | UART4_RXD | 串口4接收 | 20 | UART5_TXD | 串口5接收 | ||
21 | GND | 22 | GND | ||||
23 | SD1_CLK | SD卡时钟脚 | 对应节点/dev/mmcblk* | 24 | SD1_CMD | SD卡命令/回应脚 | 对应节点/dev/mmcblk* |
25 | SD1_DATA0 | SD卡数据0脚 | 26 | SD1_DATA1 | SD卡数据1脚 | ||
27 | SD1_DATA2 | SD卡数据2脚 | 28 | SD1_DATA3 | SD卡数据3脚 | ||
29 | UART1_RTS(SD1_CD) | SD卡检测脚 | 30 | JTAG_TDO(I2S_LRCK) | JTAG功能 | JTAG和音频I2S信号复用 | |
31 | JTAG_nTRST(I2S_SDOUT) | JTAG功能 | JTAG和音频I2S信号复用 | 32 | JTAG_TDI(I2S_BCLK) | ||
33 | JTAG_TCK(I2S_SDIN) | 34 | JTAG_TMS(I2S_MCLK) | ||||
35 | CSI_PIXCLK(I2C1_SCL) | IIC1时钟 | 对应i2c节点为/dev/i2c-0 | 36 | CSI_HSYNC(I2C2_SCL) | IIC2时钟 | 连接声卡、RTC、电容电阻触摸,对应i2c节点为/dev/i2c-1 |
37 | CSI_MCLK(I2C1_SDA) | IIC1数据 | 38 | CSI_VSYNC(I2C2_SDA) | IIC2数据 | ||
39 | GND | 40 | GPIO_8(PWM_LCD) | LCD功能 | LCD背光脚,通过PWM频率控制背光 | ||
41 | CAP_INT | LCD功能 | 电容触摸中断脚 | 42 | CAP_RST | 电容触摸复位脚 | |
43 | GPIO_1(TSYP) | 触摸屏接口 | 44 | GPIO_2(TSYM) | 触摸屏接口 | ||
45 | GPIO_3(TSXP) | 触摸屏接口 | 46 | GPIO_4(TSXM) | 触摸屏接口 | ||
47 | GND | 48 | GND | ||||
49 | LCD_PCLK | LCD功能 | LCD时钟脚 | 50 | LCD_HSYNC | LCD功能 | 行同步信号 |
51 | LCD_DE | 52 | LCD_VSYNC | 场同步信号 | |||
53 | LCD_DATA22 | 54 | LCD_DATA23 | ||||
55 | LCD_DATA20 | 56 | LCD_DATA21 | ||||
57 | LCD_DATA18 | 58 | LCD_DATA19 | ||||
59 | LCD_DATA16 | 60 | LCD_DATA17 | ||||
61 | LCD_DATA14 | 62 | LCD_DATA15 | ||||
63 | LCD_DATA12 | 64 | LCD_DATA13 | ||||
65 | LCD_DATA10 | 66 | LCD_DATA11 | ||||
67 | LCD_DATA8 | 68 | LCD_DATA9 | ||||
69 | LCD_DATA6 | 70 | LCD_DATA7 | ||||
71 | LCD_DATA4 | 72 | LCD_DATA5 | ||||
73 | LCD_DATA2 | 74 | LCD_DATA3 | ||||
75 | LCD_DATA0 | 76 | LCD_DATA1 | ||||
77 | GND | 78 | BOOT | 启动方式选择 | 通过底板上的轻触开关,接地即进入烧写模式 | ||
79 | RTC_VCC | RTC供电功能 | 为RTC时钟供电 | 80 | PMIC_ON_REQ | 电源唤醒信号脚 | |
81 | GND | 82 | GND | ||||
83 | ETH1_TXP | 以太网接口1 | 84 | ETH1_RXP | 以太网接口1 | ||
85 | ETH1_TXM | 86 | ETH1_RXM | ||||
87 | 悬空 | 88 | 悬空 | ||||
89 | 悬空 | 90 | 悬空 | ||||
91 | NET1_ACT | 以太网接口1 | 92 | NET1_SPD | 以太网接口1 | ||
93 | GPIO_9(PWM2_OUT) | PWM功能 | 对应节点/sys/class/pwm/* | 94 | GPIO_5 | 核心板引出,底板悬空,预留接口 | |
95 | GND | 96 | GND | ||||
97 | CSI_DATA5(SPI1_NSS) | SPI功能 | 对应节点/dev/spidev0.0 | 98 | CSI_DATA7(SPI1_MISO) | SPI功能 | 对应节点/dev/spidev0.0 |
99 | CSI_DATA4(SPI1_CLK) | 100 | CSI_DATA6(SPI1_MOSI) | ||||
101 | UART3_CTS(CAN1_TX) | CAN功能 | 对应节点can0 | 102 | UART2_CTS(CAN2_TX) | CAN功能 | 对应节点can1 |
103 | UART3_RTS(CAN1_RX) | 104 | UART2_RTS(CAN2_RX) | ||||
105 | ADC1 | 留空 | 106 | ADC2 | 留空 | ||
107 | ADC3 | 留空 | 108 | ADC4 | 留空 | ||
109 | UART1_CTS(USB2_RST) | USB功能 | USB2 复位引脚 | 110 | SNVS_TAMPER4(AUD_INT) | 降低省电模式下的VSNV功耗 | |
111 | SNVS_TAMPER8(CAN1_2_STBY) | CAN功能 | 省电开关 | 112 | SNVS_TAMPER0(NET_RST) | ||
113 | SNVS_TAMPER1(SD1_RST) | SD卡功能 | SD卡复位脚 | 114 | SNVS_TAMPER6(ET2_INT) | ||
115 | SNVS_TAMPER7(GPIO5_IO7) | LED功能(LED2) | 对应节点/sys/class/leds/LED2 | 116 | SNVS_TAMPER2(GPIO5_IO2) | LED功能(LED1) | 对应节点/sys/class/leds/LED1 |
117 | CSI_DATA1(SPI2_NSS) | SPI功能 | 对应节点/dev/spidev1.0 | 118 | JTAG_MOD(GPIO1_IO10) | 核心板引出,底板悬空,预留接口 | |
119 | CSI_DATA0(SPI2_CLK) | 120 | CSI_DATA3(SPI2_MISO) | SPI功能 | 对应节点/dev/spidev1.0 | ||
121 | 悬空 | 122 | CSI_DATA2(SPI2_MOSI) | ||||
123 | GND | 124 | GND | ||||
125 | NET2_TX_CLK | 以太网接口2 | 126 | NET2_TXD0 | 以太网接口2 | ||
127 | NET2_TXEN | 128 | NET2_TXD1 | ||||
129 | NET2_RXER | 130 | NET2_RXD0 | ||||
131 | NET2_CRS_DV | 132 | NET2_RXD1 | ||||
133 | GND | 134 | GND | ||||
135 | GPIO_6(NET_MDIO) | 以太网功能(MDIO总线) | 数据线(MDIO) | 136 | GPIO_7(NET_MDC) | 以太网功能(MDIO总线) | 时钟线(MDC) |
性能参数
功耗参数
- 5寸高清电容屏(800*480)
工作条件 | 电源电压 | 电源电流 | 基本功耗 | 电源电流峰值 | 最大功耗 |
---|---|---|---|---|---|
系统启动过程 | 12v | 210mA | 2.52w | 230mA | 2.76w |
待机基本界面 | 12v | 170mA | 2.04w | 180mA | 2.16w |
播放视频 | |||||
接通网络 |
- 7寸电容屏(800*480)
工作条件 | 电源电压 | 电源电流 | 基本功耗 | 电源电流峰值 | 最大功耗 |
---|---|---|---|---|---|
系统启动过程 | 12v | 250mA | 3.00w | 330mA | 3.96w |
待机基本界面 | 12v | 220mA | 2.64w | 240mA | 2.88w |
播放视频 | |||||
接通网络 |
- 不带屏功耗
工作条件 | 电源电压 | 电源电流 | 基本功耗 | 电源电流峰值 | 最大功耗 |
---|---|---|---|---|---|
系统启动过程 | 12v | 100mA | 1.20w | 120mA | 1.44w |
待机基本界面 | 12v | 90mA | 1.08w | 90mA | 1.08w |
播放视频 | |||||
接通网络 |
- 核心板功耗
工作条件 | 电源电压 | 电源电流 | 基本功耗 | 电源电流峰值 | 最大功耗 |
---|---|---|---|---|---|
系统启动过程 | 5v | 160mA | 0.80w | ||
待机基本界面 | |||||
播放视频 | |||||
接通网络 |
Linux开发指南
编译bootloader固件
下载uboot源码TQIMX6UL_uboot_V2.2.tar.bz2
(提取码:nhp9),将其拷贝到根目录/opt目录下,然后在ubuntu系统中执行
#cd /opt
#tar xjf TQIMX6UL_uboot_V2.0.tar.bz2 -C /
#cd /opt/EmbedSky/TQIMX6UL/uboot-imx
#./build.sh
然后等待编译完成,编译完成后可以看到在此目录下有
imx6ul使用uboot:u-boot-imx6ul.imx
imx6ull使用uboot:u-boot-imx6ull.imx
文件可以直接烧录到对应的板卡中启动,具体使用的是哪款板卡可以查看官网的产品信息。
编译kernel固件
下载linux源码TQIMX6UL_linux_V2.3.tar.bz2
(提取码:sbto),将其拷贝到根目录/opt目录下,然后在ubuntu系统中执行
#cd /opt
#tar xjf TQIMX6UL_linux_V2.0.tar.bz2 -C /
#cd /opt/EmbedSky/TQIMX6UL/linux-imx-4.1.15
#./build.sh
然后等待编译完成,编译完成后可以看到在此目录下有
imx6ul、imx6ull使用kernel:zImage
tq-imx6ul设备树文件:
tq-imx6ul_net0_net1.dtb
tq-imx6ul_net0_uart.dtb
tq-imx6ull设备树文件:
tq-imx6ull_net0_net1.dtb
tq-imx6ull_net0_uart.dtb
文件可以直接烧录到对应板卡中启动,具体使用的是哪款板卡可以查看官网的产品信息。设备树文件分别是双网卡,单网卡+串口复用的设备树,具体使用设备树视客户使用情况而定。
制作rootfs固件
下载系统源文件rootfs_general_v1.5.tgz (提取码:8xch),将其拷贝到根目录/下,然后在ubuntu系统中执行:
#mkdir rootfs //新建文件夹
#tar xvf rootfs_general_v1.0.tgz -C ./rootfs/ //解压到/rootfs,注意不要解压到根目录下
#/opt/EmbedSky/linaro-4.9/gcc-linaro-4.9.4-2017.01-x86_64_arm-linux-gnueabihf/bin/mkubi256M_2k ./rootfs
执行完之后会在当前目录下生成rootfs_2k.img文件,此文件可直接烧写到板卡启动。
Kernel源码简介
内核使用的是kernel_4.1.15。以下的路径都是在相对于内核根目录而言。由于驱动代码牵涉较广,难以将文件一一描述,所以以下提及的驱动源码只是相对主要或者是修改频率比较高的文件。
驱动 | 在内核中的源码位置 | 系统中的设备名称 |
---|---|---|
emmc/sdcard 驱动 | drivers/mmc/host/sdhci-esdhc-imx.c | /dev/mmcblk* |
drivers/mmc/host/sdhci.c | ||
drivers/mmc/host/sdhci-pltfm.c | ||
LCD 驱动 | drivers/video/fbdev/mxc/mxc_edid.c | /dev/fb* |
drivers/video/fbdev/mxc/mxc_dispdrv.c | ||
drivers/video/fbdev/mxc/mxc_lcdif.c | ||
drivers/video/fbdev/mxc/mxc_ipuv3_fb.c | ||
电阻触摸屏驱动 | drivers/input/touchscreen/imx6ul_tsc.c | dev/input/event* |
电容触摸屏驱动 | drivers/input/touchscreen/goodix.c | dev/input/event* |
有线网络驱动 | drivers/net/ethernet/freescale/fec_main.c | eth0 |
串口驱动 | drivers/tty/serial/imx.c | /dev/ttySAC* |
drivers/tty/serial/mxs-auart.c | ||
drivers/tty/serial/serial_core.c | ||
sgtl5000声卡驱动 | sound/soc/imx/* | /dev/snd/* |
I2C驱动 | drivers/i2c/busses/i2c-imx.c | /dev/i2c-* |
按键驱动 | drivers/input/keyboard/gpio_keys.c | dev/input/event* |
背光灯驱动 | drivers/video/backlight/pwm_bl.c drivers/video/backlight/backlight.c | /sys/class/backlight/* |
Pwm驱动 | drivers/clk/clk-pwm.c | /sys/class/pwm/* |
RTC驱动 | drivers/rtc/rtc-pcf8563.c | /dev/rtc0 |
看门狗驱动 | drivers/watchdog/imx2_wdt.c | /dev/watchdog |
ADC驱动 | drivers/iio/adc/imx7d_adc.c | /sys/devices/platform/soc/2100000.aips-bus/2198000.adc/iio\:device0/in_voltage%d_raw |
编译QT程序
1.下载qt例程tqPainter.tar.gz(提取码:uetq)
2.查看手册搭建环境及编译QT5.5开发环境搭建.pdf
二次封装库
1.下载库:
linux_lib_v1.0.1.tar
2.查看文档:天嵌二次封装库
例程使用
1.功能测试使用例程(提取码:y9gb)
2.功能测试手册V1.2.pdf
常用设备使用方法
注:本章节的使用方法仅在资源下载的镜像及源码版本上适用,其他版本的镜像及源码,不予保证功能正常使用,请以各自版本说明为准。
Wifi热点发送功能
本方法仅保证适用于tq-8723-wifi模块,插上模块,在板卡串口终端上执行
#cd /test_file/
#./send_ap.sh
默认账号:test 密码:12345678
修改账号密码方法:
#vim /etc/hostapd.conf
账号对应项:ssid=test
密码对应项:wpa_passphrase=12345678
Wifi连接热点功能
本方法仅保证适用于tq-8723-wifi模块,插上模块,在板卡串口终端上执行
#cd /test_file/
#./link_wifi.sh
默认账号:CDMA-yalu密码:1234567890
wifi用户、密码修改:
#vim /etc/wpa_supplicant.conf
账号对应项:ssid="CDMA-yalu"
密码对应项:psk="1234567890"
4G全网通拨号上网
1.tq-SIM7100,SIM7600使用,在板卡串口终端上执行
#/test_file/link_4g_sim7600.sh
2.N720模块使用,在板卡串口终端上执行
#/test_file/link_4g_N720.sh
注:使用N720如果报错,很可能是串口出错,可以
#vi /etc/ppp/peers/tq_N720_connect
修改/dev/ttyUSB0为/dev/ttyUSB1或者/dev/ttyUSB2,保存重新拨号。
SSH远程登陆
1.先在开发板中配置好网络,例如下面命令是将以太网的ip设置为192.168.1.6:
#ifconfig eth0 192.168.1.6
2.然后在PC中执行ssh root@192.168.1.6可以登录开发板(前提是网络能够互相ping通)
FTP获取文件
1.按照环境搭建章节搭建好ftp服务器
2.在开发板上执行以下命令可以获取电脑中的文件:
#ftpget -u ftpname -p 123 192.168.1.xxx filename
其中123为用户ftpname的密码,192.168.1.xxx为ftp服务器的ip,filename为需要获取的文件名。
常用外设使用方法
RTC使用
插上电池,确保电池有电,进入系统后通过以下命令设置时间:
# date -s "2019-04-28 15:06:00"
Sun Apr 28 15:06:00 UTC 2019
# hwclock -w
# date
Sun Apr 28 15:06:09 UTC 2019
最好设置和自己手机上一样的时间。设置完成后断开12V电源,等待5秒以上。重新接上电源进入系统使用date或hwclock命令查看当前时间,观察时间是否正确。最好断电一天后第二天再上电看时间是否还正确。RTC能够保存时间,要测试精准度最好断电一天后第二天再上电看时间是否还正确。
UART使用
tq-imx6ul/tq-imx6ull有8个串口:
串口 | 设备名 | 功能 | 电平 | 板子上的丝印 |
---|---|---|---|---|
串口0 | /dev/ttySAC0 | 调试串口 | RS232 | CON1 |
串口1 | /dev/ttySAC1 | 用户自定义 | RS485 | CON2 |
串口2 | /dev/ttySAC2 | 用户自定义 | RS232 | CON3 |
串口3 | /dev/ttySAC3 | 用户自定义 | RS232 | CON4 |
串口4 | /dev/ttySAC4 | 用户自定义 | RS232 | CON5 |
串口5 | /dev/ttySAC5 | 用户自定义 | TTL | CON6 |
串口6 | /dev/ttySAC6 | 用户自定义 | TTL | CON7 |
串口7 | /dev/ttySAC7 | 用户自定义 | TTL | CON8 |
板载的串口均为3线串口。除了串口0用作调试串口,其它串口用户都可以使用。
注意:
1.串口6、7与网卡复用,默认不使用串口功能,如果要使用请烧写对应板卡的单网卡+网卡复用(imx6ul为:tq-imx6ul_net0_uart.dtb,imx6ull为:tq-imx6ull_net0_uart.dtb)的设备树文件。
2.串口1默认是485电平,即在默认情况下测试CON2是不通的。若要使用TTL电平,把R194、R200 NC掉,把 R255、R256接成33R的电阻;UART2为TTL电平输出。具体请参考硬件手册。
3.具体测试代码请参考 例程使用
测试CON4的通讯,短接CON4的rx和tx,执行命令
/test_file/test/uart_test /dev/ttySAC3
测试CON4与CON5的通信,分别对接CON4的rx与CON5的tx,执行命令:
# /test_file/test/uart_test /dev/ttySAC3 /dev/ttySAC4
CAN使用
短接can0与can1的H与L,以下是测试过程:
# ifconfig can0 down
# ip link set can0 type can bitrate 1000000 triple-sampling on
# ifconfig can0 up
flexcan 2090000.can can0: writing ctrl=0x012320d4
# ifconfig can1 down
# ip link set can1 type can bitrate 1000000 triple-sampling on
# ifconfig can1 up
flexcan 2094000.can can1: writing ctrl=0x012320d4
# candump can1& #监听can1
# cansend can0 111#1122334455667788 #can0发送数据
can1 111 [8] 11 22 33 44 55 66 77 88 #can1接收到的数据
LED控制
控制LED只是设置一下高低电平即可。系统有2个led灯,具体操作是一样的,只有路径有不一样,led1的操作目录是/sys/class/leds/LED1/,led2的操作目录是/sys/class/leds/LED2/。下面以led1为例,简单说明如何使用:
点亮LED1,在命令行输入下列命令:
#echo 0 > /sys/class/leds/led1/brightness
熄灭LED1,在命令行输入下列命令:
#echo 1 > /sys/class/leds/led1/brightness
GPIO使用
注:控制gpio需要保证该引脚已经配置成普通gpio,例如控制GPIO5_IO2
#echo 130 > /sys/class/gpio/export
#echo out > /sys/class/gpio/gpio130/direction
#echo 1 > /sys/class/gpio/gpio130/value
#echo 0 > /sys/class/gpio/gpio130/value
配置占用引脚为普通GPIO参考:配置占用引脚为普通GOIO.txt
说明:
a./sys/class/gpio/export文件用于通知系统需要导出控制的GPIO引脚编号,/sys/class/gpio/export写编号,比如以上命令,命令成功后生成/sys/class/gpio/gpio130目录,如果没有出现相应的目录,说明此引脚不可导出;
计算引脚编号,引脚编号 = 控制引脚的寄存器基数 + 控制引脚寄存器位数;
b.value文件是端口的数值,为1或0,配置为输出时,echo 1/0高低电平后可以使用万用表测量该引脚是否可控;配置为输入时,直接cat value值。
c.direction文件,定义输入输出方向;
PWM使用
在命令行中设置PWM输出,调出pwm0目录下设备节点,*为你要设的pwm。 在命令行输入下列命令:
#echo 0 > /sys/class/pwm/pwmchip*/export
#echo 1 > /sys/class/pwm/pwmchip*/pwm0/enable //设置使能
#echo 1000000 > /sys/class/pwm/pwmchip*/pwm0/period //设置周期
#echo 500000 > /sys/class/pwm/pwmchip*/pwm0/duty_cycle //设置占空比
背光控制
在命令行中设置背光亮度:
#echo xxx >/sys/class/backlight/backlight/brightness
其中xxx为0~6的数值,表示背光的亮度,0为最暗,6为最亮
在代码中设置背光亮度:
Int fd = Open(“/sys/class/backlight/backlight/brightness”,O_RDWR);
write(fd,”6”,2); //设置背光值为50
Close(fd);
音频使用
播放音频,接耳机或喇叭后执行:
#aplay /root/test_utils/music_20s.wav
录音执行:
#arecord -Dhw:0,1 -d 10 -f cd -r 44100 -c 2 -t wav test.wav
修改&取消默认启动程序
修改/etc/embedsky_conf文件,/opt/PDA/bin/tqpda &是默认开机启动qt程序,若要取消开机启动程序,在其前面加#注释掉即可;若要修改默认启动程序将其替换自己要的程序即可。
常见问题解答
FAQ
FAQ详细信息,请查看《TQIMX6UL_FAQ》文档,文档总结了使用TQIMX6UL系列平台所遇到的部分问题及解决方法,如果查看文档仍未解决问题,请拨打技术支持电话或者发送邮件到技术支持邮箱寻求技术支持。
技术支持说明
天嵌科技致力于高科技产业发展提供技术与服务,为广大客户提供嵌入式技术软硬件开发工具与解决方案,致力于ARM内核系列CPU的开发和应用,提供低功耗、高性价比的嵌入式产品,提供针对性强、量身定制的客户化设计;无论是新设计还是对现有产品的改型设计,我们都会为您提供高品质的开发服务。
由于时间有限,手册难免存在纰漏和错误,诚恳的希望各位读者批评和指正。关于修改的bug,我们会在第一时间在论坛上更新,论坛建有技术支持专区,欢迎大家遇到问题去里面寻找解决方法。还可以通过邮件(support@embedsky.net)与我们联系(为了能够方便跟进记录,请参照邮件落款模板发送邮件。希望能结识更多的朋友,大家一起共同进步。
- 官方网站:http://www.embedsky.com
- 论坛:http://www.armbbs.net
- 淘宝店铺:https://embedsky.taobao.com
- 技术支持邮件:support@embedsky.net
- 技术支持电话:020-38373101-810(IMX6Q)
020-38373101-814(IMX6UL)
020-38373101-818(335X)
邮件落款模板
烧写镜像文件版本号:xxx (例如:V2.0_R1.0,版本号在文件名后面有)
使用板卡、系统:xxx (例如:e9 android 4.3)
联系人:xxxxx
联系方式:xxxxx
公司:xxxxxx (例如:天嵌科技、学校等等)
常规技术支持范围
资源下载
Linux源码包,提取码:8xch
Linux例程,提取码:6wgg
出厂镜像合集,提取码:adxc
Linux平台工具,提取码:ejsd
Windows平台工具,提取码:fn5h
配套电路图,提取码:kl0i
配套芯片手册,提取码:34jc
配套教材集,提取码:oqep