(SOM-IMX6ULL-E2)
 
 
 
| Вывод | Обозначение | 
|---|---|
| 1 | VBUSIN | 
| 2 | VDDCOIN | 
| 3 | VBUSIN | 
| 4 | PORB | 
| 5 | VBUSIN | 
| 6 | VDD_SNVS_3V3 | 
| 7 | VBUSIN | 
| 8 | SYS_4V4 | 
| 9 | |
| 10 | SYS_4V4 | 
| 11 | GND | 
| 12 | SYS_4V4 | 
| 13 | GND | 
| 14 | VCC_3V3 | 
| 15 | GND | 
| 16 | VCC_3V3 | 
| 17 | GND | 
| 18 | VCC_3V3 | 
| 19 | GND | 
| 20 | VBAT | 
| 21 | GND | 
| 22 | VBAT | 
| 23 | PMIC_ONREQ | 
| 24 | VBAT | 
| 25 | PMIC_STBY_REQ | 
| 26 | NVCC_CSI | 
| 27 | MX6_RESETB | 
| 28 | NVCC_SD1 | 
| 29 | NWDOG | 
| 30 | VLDO_1V8 | 
| 31 | ONOFF | 
| 32 | VLDO2_3V3 | 
| 33 | ONKEY | 
| 34 | VLDO3_3V3 | 
| 35 | GND | 
| 36 | LED_CHARGE | 
| 37 | I2C1_SDA | 
| 38 | WDI | 
| 39 | I2C1_SCL | 
| 40 | NTC_THERMISTOR | 
| 41 | SNVS_TAMPER9 | 
| 42 | USB2_DP | 
| 43 | SNVS_TAMPER8 | 
| 44 | USB2_DN | 
| 45 | SNVS_TAMPER7 | 
| 46 | GND | 
| 47 | SNVS_TAMPER6 | 
| 48 | USB2_CHD_B | 
| 49 | SNVS_TAMPER5 | 
| 50 | USB2_VBUS | 
| 51 | SNVS_TAMPER4 | 
| 52 | GND | 
| 53 | SNVS_TAMPER3 | 
| 54 | USB1_DP | 
| 55 | SNVS_TAMPER2 | 
| 56 | USB1_DN | 
| 57 | SNVS_TAMPER1 | 
| 58 | GND | 
| 59 | SNVS_TAMPER0 | 
| 60 | USB1_CHD_B | 
| 61 | GND | 
| 62 | USB1_VBUS | 
| 63 | GPIO1_0 | 
| 64 | GND | 
| 65 | GPIO1_1 | 
| 66 | GND | 
| 67 | GPIO1_2 | 
| 68 | TRST | 
| 69 | GPIO1_3 | 
| 70 | TDO | 
| 71 | GPIO1_4 | 
| 72 | TDI | 
| 73 | GPIO1_5 | 
| 74 | TCK | 
| 75 | GPIO1_6 | 
| 76 | TMS | 
| 77 | GPIO1_7 | 
| 78 | MOD | 
| 79 | GPIO1_8 | 
| 80 | GND | 
| 81 | GPIO1_9 | 
| 82 | UART1_TXD | 
| 83 | GND | 
| 84 | UART1_RXD | 
| 85 | UART3_TXD | 
| 86 | UART1_CTS | 
| 87 | UART3_RXD | 
| 88 | UART1_RTS | 
| 89 | UART3_CTS | 
| 90 | GND | 
| 91 | UART3_RST | 
| 92 | UART2_TXD | 
| 93 | GND | 
| 94 | UART2_RXD | 
| 95 | UART4_TXD | 
| 96 | UART2_CTS | 
| 97 | UART4_RXD | 
| 98 | UART2_RTS | 
| 99 | GND | 
| 100 | GND | 
| 101 | UART5_TXD | 
| 102 | CLK1_N | 
| 103 | UART5_RXD | 
| 104 | CLK1_P | 
| 105 | GND | 
| 106 | NC | 
| 107 | NC | 
| 108 | NC | 
| 109 | LCD_RESET | 
| 110 | LCD_ENABLE | 
| 111 | LCD_CLK | 
| 112 | LCD_VSYNC | 
| 113 | LCD_HSYNC | 
| 114 | LCD_DATA_0 | 
| 115 | LCD_DATA_1 | 
| 116 | LCD_DATA_2 | 
| 117 | LCD_DATA_3 | 
| 118 | LCD_DATA_4 | 
| 119 | LCD_DATA_5 | 
| 120 | LCD_DATA_6 | 
| 121 | LCD_DATA_7 | 
| 122 | LCD_DATA_8 | 
| 123 | LCD_DATA_9 | 
| 124 | LCD_DATA_10 | 
| 125 | LCD_DATA_11 | 
| 126 | LCD_DATA_12 | 
| 127 | LCD_DATA_13 | 
| 128 | LCD_DATA_14 | 
| 129 | LCD_DATA_15 | 
| 130 | LCD_DATA_16 | 
| 131 | LCD_DATA_17 | 
| 132 | LCD_DATA_18 | 
| 133 | LCD_DATA_19 | 
| 134 | LCD_DATA_20 | 
| 135 | LCD_DATA_21 | 
| 136 | LCD_DATA_22 | 
| 137 | LCD_DATA_23 | 
| 138 | GND | 
| 139 | GND | 
| 140 | CPLD_IO_10 | 
| 141 | CPLD_TMS | 
| 142 | CPLD_IO_9 | 
| 143 | CPLD_TDI | 
| 144 | CPLD_IO_8 | 
| 145 | CPLD_TCK | 
| 146 | CPLD_IO_7 | 
| 147 | CPLD_TDO | 
| 148 | CPLD_IO_6 | 
| 149 | GND | 
| 150 | CPLD_IO_5 | 
| 151 | CSI_MCLK | 
| 152 | CPLD_IO_4 | 
| 153 | CSI_PIXCLK | 
| 154 | CPLD_IO_3 | 
| 155 | CSI_VSYNC | 
| 156 | CPLD_IO_2 | 
| 157 | CSI_HSYNC | 
| 158 | CPLD_IO_1 | 
| 159 | NC | 
| 160 | CPLD_IO_0 | 
| 161 | CSI_D7 | 
| 162 | NC | 
| 163 | CSI_D6 | 
| 164 | BOOT_0 | 
| 165 | CSI_D5 | 
| 166 | BOOT_1 | 
| 167 | CSI_D4 | 
| 168 | GND | 
| 169 | CSI_D3 | 
| 170 | SD_CLK | 
| 171 | CSI_D2 | 
| 172 | SD_CMD | 
| 173 | CSI_D1 | 
| 174 | SD_D3 | 
| 175 | CSI_D0 | 
| 176 | SD_D2 | 
| 177 | NC | 
| 178 | SD_D1 | 
| 179 | NC | 
| 180 | SD_D0 | 
| 181 | GND | 
| 182 | GND | 
| 183 | LED_SPD_1 | 
| 184 | LED_SPD_0 | 
| 185 | LED_LINK_1 | 
| 186 | LED_LINK_0 | 
| 187 | GND | 
| 188 | GND | 
| 189 | ETH_0_TX_P | 
| 190 | ETH_1_TX_P | 
| 191 | ETH_0_TX_N | 
| 192 | ETH_1_TX_N | 
| 193 | GND | 
| 194 | GND | 
| 195 | ETH_1_RX_P | 
| 196 | ETH_0_RX_P | 
| 197 | ETH_1_RX_N | 
| 198 | ETH_0_RX_N | 
| 199 | GND | 
| 200 | GND | 
| Вывод | Режим | 
|---|---|
| E17 | ENET1_RDATA1 | 
| F16 | ENET1_RDATA0 | 
| D15 | ENET1_RX_ER | 
| E16 | ENET1_RX_EN | 
| E14 | ENET1_TDATA1 | 
| E15 | ENET1_TDATA0 | 
| F14 | ENET1_REF_CLK | 
| F15 | ENET1_TX_EN | 
| C16 | ENET2_RDATA1 | 
| C17 | ENET2_RDATA0 | 
| D16 | ENET2_RX_ER | 
| B17 | ENET2_RX_EN | 
| A16 | ENET2_TDATA1 | 
| A15 | ENET2_TDATA1 | 
| D17 | ENET2_REF_CLK | 
| B15 | ENET2_TX_EN | 
| K17 | ENET1_MDIO | 
| L16 | ENET1_MDC | 
| Вывод | Режим | 
|---|---|
| G17 | I2C_SCL | 
| G16 | I2C_SDA | 
| Вывод | Режим | 
|---|---|
| E6 | NAND_DQS | 
| A3 | NAND_READY | 
| A4 | NAND CLE | 
| D5 | NAND_WP | 
| C8 | NAND_WE | 
| D8 | NAND_RE | 
| B4 | NAND_ALE | 
| A5 | NAND_D7 | 
| A6 | NAND_D6 | 
| B6 | NAND_D5 | 
| C6 | NAND_D4 | 
| D6 | NAND_D3 | 
| A7 | NAND_D2 | 
| B7 | NAND_D1 | 
| D7 | NAND_D0 | 
| B5 | NAND_CS1 | 
| C5 | NAND_CS0 | 
Вариант задействования 8-ми портов UART и 2 порта CAN
| Контакт разъема | Вывод процессора | Обозначение | 
|---|---|---|
| 84 | K16 | UART1_RX | 
| 82 | K14 | UART1_TX | 
| 94 | J16 | UART2_RX | 
| 92 | J17 | UART2_TX | 
| 87 | H16 | UART3_RX | 
| 85 | H17 | UART3_TX | 
| 110 | B8 | UART4_RX | 
| 111 | A8 | UART4_TX | 
| 130 | G13 | UART5_RX | 
| 101 | F17 | UART5_TX | 
| 153 | E5 | UART6_RX | 
| 151 | F5 | UART6_TX | 
| 131 | B13 | UART7_RX | 
| 130 | C13 | UART7_TX | 
| 135 | B14 | UART8_RX | 
| 134 | C14 | UART8_TX | 
| 123 | A11 | CAN1_RX | 
| 122 | B11 | CAN1_TX | 
| 125 | D12 | CAN2_RX | 
| 124 | E12 | CAN2_TX | 
 
В качестве системы сборки для платы imx6_ull используется buildroot. Данная система сборки позваляет гибко собрать дистрибутив Embedded Linux для многих платформ. Официальный сайт системы сборки расположен по адресу https://buildroot.org/ . Для сборки проекта Вам понадобится ПК с дистрибутивом Linux (рекомендуем установить Ubuntu 18.04 или старше) или виртуальную машину с дистрибутивом Linux. Все дальнейшие действия по распоковки и сборки проекта будут производится на ПК с дистрибутивом Ubuntu 18.04.
В домашней папке пользователя создайте папку inmys_board. Скачайте архив проекта (файл imx6ull.tar.gz) в папку inmys_board. Распакуйте архив imx6_ull.tar.gz в данную папку. После распаковки должна появится папка imx6_ull. Перейдите к папке imx6_ull (cd ~/inmys_board/imx6_ull/). Состав BSP:
Перейдите в папке ~/inmys_board/imx6_ull/ и выполните скрипт ~/inmys_board/imx6_ull/install_board.sh imx6ull_board, скрипт настроит систему сборки. По завершению работы скрипта будут распакованы и созданы ряд папок buildroot-2019.05.1 - система сборки buildroot-external-inmys - BSP dl - папка куда будут скачиватся программы необходимые для сборки. imx6ull_board_output - папка с выходными файлами.
В BSP используется:
Перейдите в папку ~/inmys_board/imx6_ull/imx6ull_board_output и выполните команду make. После этого начнется сборка системы. По завершению сборки в папке ~/inmys_board/imx6_ull/imx6ull_board_output/images появятся файлы
Пароль и логин для входа root root.
Для загрузки som модуля с sd карты, необходимо записать загрузочный образ на sd карту. Подключите sd карту к компьютер.
перейдите
cd ~/inmys_board/imx6_ull/imx6ull_board_output
Замените название SD устройства sdX на тот который у вас в системе.
dd if=./images/sdcard_imx6ull_board.img of=/dev/sdX
Воспользуйтесь сознанной ранее SD картой и скопируйте на нее в папку /boot файлы u-boot-dtb.imx и rootfs.ubi
Загрузитесь с SD карты и после загрузки системы выполните команды:
# cd /boot # flash_erase /dev/mtd0 0 0 # mount -t debugfs none /sys/kernel/debug/ # kobs-ng init -x -w --chip_0_device_path=/dev/mtd0 ./u-boot-dtb.imx # flash_erase /dev/mtd1 0 0 # nandwrite -p /dev/mtd1 ./uImage # flash_erase /dev/mtd2 0 0 # nandwrite -p /dev/mtd2 ./imx6ull-inmys-som.dtb # flash_erase /dev/mtd4 0 0 # ubiformat /dev/mtd4 -f rootfs.ubi
После копирования выключите питания модуля и переведите модуль для загрузки с NAND.
Проверка наличия доступных CAN интерфейсов
# ifconfig 
can0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          UP RUNNING NOARP  MTU:16  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:10 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:26 
can1      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          UP RUNNING NOARP  MTU:16  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:10 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:27 
eth0      Link encap:Ethernet  HWaddr 04:91:62:BC:83:17  
          inet addr:192.168.1.199  Bcast:0.0.0.0  Mask:255.255.255.0
          inet6 addr: fe80::691:62ff:febc:8317/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:2686 errors:0 dropped:0 overruns:0 frame:0
          TX packets:27 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:177780 (173.6 KiB)  TX bytes:1566 (1.5 KiB)
eth1      Link encap:Ethernet  HWaddr 04:91:62:BC:91:7E  
          inet addr:192.168.0.199  Bcast:0.0.0.0  Mask:255.255.255.0
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
Для прослушивания данных передаваемых по can можно воспользоваться консольной утилитой candump Пример для can0
# candump can0 can0 123 [8] 11 22 33 44 55 66 77 88 can0 123 [8] 11 22 33 44 55 66 77 88 can0 123 [8] 11 22 33 44 55 66 77 88 can0 123 [8] 11 22 33 44 55 66 77 88 can0 123 [8] 11 22 33 44 55 66 77 88 can0 123 [8] 11 22 33 44 55 66 77 88
Для проверки отладки передачи воспользуйтесь консольной программой cansend Пример для can0
# cansend can0 123#1122334455667788
Для временного изменения скорости работы can порта
# ifconfig can0 down # ip link set can0 up type can bitrate 125000
Для установки скорости по умолчанию отредактируйте файл /etc/network/interfaces
# vi /etc/network/interfaces
Проверка двух CAN (необходимо соединить can0 и can1)
# candump can0 & # cansend can1 123#1122334455667788 can0 123 [8] 11 22 33 44 55 66 77 88 # cansend can1 123#1122334455667788 can0 123 [8] 11 22 33 44 55 66 77 88 # cansend can1 123#1122334455667788 can0 123 [8] 11 22 33 44 55 66 77 88 # killall candump
На плате доступны Последовательные порты:
По умолчанию в сборке включена утилита picocom с помощью которой можно по передавать данные.
picocom -b 115200 /dev/ttymxc1
По умолчанию установлены статические IP адреса для обоих интерфейсов. Для изменения поведения(изменения IP адресов и под сетей или для выключения DHCP) необходимо отредактировать файл /etc/network/interfaces.
auto lo
iface lo inet loopback
auto can0
iface can0 inet manual
    bitrate 125000
    up /sbin/ip link set $IFACE down
    up /sbin/ifconfig $IFACE txqueuelen 10
    up /sbin/ip link set $IFACE type can bitrate 125000 restart-ms 10
    up /sbin/ip link set $IFACE up
auto can1
iface can1 inet manual
    bitrate 125000
    up /sbin/ip link set $IFACE down
    up /sbin/ifconfig $IFACE txqueuelen 10
    up /sbin/ip link set $IFACE type can bitrate 125000 restart-ms 10
    up /sbin/ip link set $IFACE up
# Config static ip
auto eth0
iface eth0 inet static
        address 192.168.1.199
        netmask 255.255.255.0
# Configure eth0 with dhcp IP
# auto eth0
# iface eth0 inet dhcp
# Config static ip
auto eth1
iface eth1 inet static
        address 192.168.0.199
        netmask 255.255.255.0
# Configure eth0 with dhcp IP
# auto eth1
# iface eth1 inet dhcp
Пример получения сетевых настроек по dhcp на eth0
auto lo
iface lo inet loopback
auto can0
iface can0 inet manual
    bitrate 125000
    up /sbin/ip link set $IFACE down
    up /sbin/ifconfig $IFACE txqueuelen 10
    up /sbin/ip link set $IFACE type can bitrate 125000 restart-ms 10
    up /sbin/ip link set $IFACE up
auto can1
iface can1 inet manual
    bitrate 125000
    up /sbin/ip link set $IFACE down
    up /sbin/ifconfig $IFACE txqueuelen 10
    up /sbin/ip link set $IFACE type can bitrate 125000 restart-ms 10
    up /sbin/ip link set $IFACE up
# Config static ip
#auto eth0
#iface eth0 inet static
#        address 192.168.1.199
#        netmask 255.255.255.0
# Configure eth0 with dhcp IP
 auto eth0
 iface eth0 inet dhcp
# Config static ip
auto eth1
iface eth1 inet static
        address 192.168.0.199
        netmask 255.255.255.0
# Configure eth0 with dhcp IP
# auto eth1
# iface eth1 inet dhcp