Инструменты пользователя

Инструменты сайта


boards:nms-uq7-komdiv-mk:peripherial:start

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слеваПредыдущая версия
Следующая версия
Предыдущая версия
boards:nms-uq7-komdiv-mk:peripherial:start [2026/07/28 14:02] Илья Ковальчукboards:nms-uq7-komdiv-mk:peripherial:start [2026/07/30 06:51] (текущий) – [Ethernet] Артем Слепов
Строка 1: Строка 1:
 ====== Использование периферии Q7_KOMDIV_MK ======  ====== Использование периферии Q7_KOMDIV_MK ====== 
 +
 +На странице приведены примеры настройки и проверки периферийных интерфейсов модуля ''Q7_KOMDIV_MK''.
 +
 +  * CAN
 +  * UART;
 +  * I2C;
 +  * SPI;
 +  * SATA;
 +  * RTC.
 +
 +
 +**Скрипты для тестирования доступны в [[https://gitlab.inmys.online/srisa-public/k5500vk018-test-suite|репозитории test-suite]].**
 +
  
 ===== CAN ===== ===== CAN =====
Строка 14: Строка 27:
 GND    --- GND GND    --- GND
 </code> </code>
 +
 +{{komdiv_can_connection.jpeg?600}}
  
 ==== Настройка ==== ==== Настройка ====
Строка 30: Строка 45:
 Скорость на обоих интерфейсах должна совпадать. Скорость на обоих интерфейсах должна совпадать.
  
-==== Приём =====+==== Приём ====
  
 Приём всех кадров: Приём всех кадров:
Строка 149: Строка 164:
  
 Команда указывает датчику начать чтение с регистра 0x14, после чего получает 12 последовательных байт данных. Команда указывает датчику начать чтение с регистра 0x14, после чего получает 12 последовательных байт данных.
 +
 +
 +В качестве примера используется лазерный дальномер VL53L0X.
 +
 +==== Подключение VL53L0X ====
 +
 +{{komdiv_i2c_connection.jpeg?600}}
  
 ==== Чтение VL53L0X ==== ==== Чтение VL53L0X ====
Строка 162: Строка 184:
 * ''20'' — количество измерений. * ''20'' — количество измерений.
  
-Пример результата:+Вывод скрипта:
  
 <code> <code>
-Distance 1: 245 mm +Distance 1: 87 mm 
-Distance 2: 247 mm +Distance 2: 65 mm 
-Distance 3: 246 mm+Distance 3: 71 mm 
 +Distance 4: 68 mm 
 +Distance 5: 74 mm 
 +Distance 6: 65 mm 
 +Distance 7: 74 mm 
 +Distance 8: 104 mm 
 +Distance 9: 122 mm 
 +Distance 10: 169 mm 
 +Distance 11: 281 mm 
 +Distance 12: 364 mm 
 +Distance 13: 298 mm 
 +Distance 14: 185 mm 
 +Distance 15: 112 mm 
 +Distance 16: 89 mm 
 +Distance 17: 76 mm 
 +Distance 18: 69 mm 
 +Distance 19: 65 mm 
 +Distance 20: 70 mm 
 +</code> 
 + 
 +===== SPI ===== 
 + 
 +В качестве примера используется SPI Flash, подключённая к ''CS0''. Ей соответствует устройство ''/dev/spidev1.0''
 + 
 +При подключении к  ''CS1'' используется устройство ''/dev/spidev1.1''
 + 
 + 
 +==== Подключение ==== 
 + 
 +{{komdiv_spi_connection.jpeg?600}} 
 + 
 +==== Конфигурация ==== 
 + 
 +Для работы с устройствами SPI необходимо загрузить модуль ядра:  
 + 
 +<code> 
 +modprobe spidev 
 +</code> 
 + 
 +==== Определение SPI Flash ==== 
 + 
 +<code> 
 +flashrom -p linux_spi:dev=/dev/spidev1.0,spispeed=1000 
 +</code> 
 + 
 +Пример успешного результата: 
 + 
 +<code> 
 +flashrom v1.5.1 on Linux 6.1.135 (mips64) 
 +flashrom is free software, get the source code at https://flashrom.org 
 + 
 +Found Macronix flash chip "MX66L51235F/MX25L51245G" (65536 kB, SPI) on linux_spi. 
 +=== 
 +This flash part has status UNTESTED for operations: WP 
 +The test status of this chip may have been updated in the latest development 
 +version of flashrom. If you are running the latest development version, 
 +please email a report to flashrom@flashrom.org if any of the above operations 
 +work correctly for you with this flash chip. Please include the flashrom log 
 +file for all operations you tested (see the man page for details), and mention 
 +which mainboard or programmer you tested in the subject line. 
 +You can also try to follow the instructions here: 
 +https://www.flashrom.org/contrib_howtos/how_to_mark_chip_tested.html 
 +Thanks for your help! 
 +No operations were specified.
 </code> </code>
  
 ===== SATA ===== ===== SATA =====
 +
 +Интерфейс SATA мультиплексируется между двумя каналами. Выбор активного канала выполняется через GPIO с помощью скрипта ''gpio.sh''.
 +
 +Выбор канала 0:
 +
 +<code>
 +./gpio.sh sata_select 0
 +</code>
 +
 +Выбор канала 1:
 +
 +<code>
 +./gpio.sh sata_select 1
 +</code>
 +
 +После выбора канала проверить обнаружение накопителя можно командой:
 +
 +<code> cat /proc/partitions </code>
 +
 +Пример успешного обнаружения SATA-накопителя:
 +
 +<code>
 +major minor  #blocks  name
 +          0      16384 ram0
 +          1      16384 ram1
 +          2      16384 ram2
 +          3      16384 ram3
 +          4      16384 ram4
 +          5      16384 ram5
 +          6      16384 ram6
 +          7      16384 ram7
 +          8      16384 ram8
 +          9      16384 ram9
 +         10      16384 ram10
 +         11      16384 ram11
 +         12      16384 ram12
 +         13      16384 ram13
 +         14      16384 ram14
 +         15      16384 ram15
 +  31        0        640 mtdblock0
 +  31        1         64 mtdblock1
 +  31        2         64 mtdblock2
 +  31        3         64 mtdblock3
 + 179        0    7634944 mmcblk0
 + 179        1    1048576 mmcblk0p1
 + 179        2    1048576 mmcblk0p2
 + 179        3    1048576 mmcblk0p3
 + 179        8       4096 mmcblk0boot0
 + 179       16       4096 mmcblk0boot1
 +         16  125034840 sdb   # <------------------------/ 
 +         17     153600 sdb1  # <-----------------------/  Обнаруженный SATA-накопитель
 +         18  124881223 sdb2  # <----------------------/ 
 +</code>
 +
 +В данном примере накопитель определён как ''/dev/sdb'' и содержит два раздела.
 +
 +Имя устройства может отличаться в зависимости от порядка обнаружения накопителей.
 +
 +===== RTC =====
 +
 +В дереве устройств определена I2C RTC.  
 +
 +При первом запуске системное время может быть установлено на 01.01.1970, а RTC ещё не будет содержать корректного значения.
 +
 +Пример установки системного времени:
 +
 +<code>
 +date -s "2026-07-29 14:48:00"
 +</code>
 +
 +Запись системного времени в RTC:
 +
 +<code>
 +hwclock -w
 +</code>
 +
 +Просмотр текущего времени RTC:
 +
 +<code>
 +hwclock -r
 +</code>
 +
 +При наличии батарейки записанные дата и время сохраняются после отключения питания.
 +
 +
 +
boards/nms-uq7-komdiv-mk/peripherial/start.1785247324.txt.gz · Последнее изменение: Илья Ковальчук