У меня есть плата MicroZed с Xillinux 1.3, работающая на ней. Я хотел связать с ним внешний АЦП SPI и написать приложение в Linux для чтения значений из АЦП. Аппаратный интерфейс SPI устройства Zynq не включен в Xillinux. Как я могу включить его, мне придется перекомпилировать FSBL и U-boot, но я не знаю с чего начать. Могу ли я просто изменить дизайн Vivado Xillinux и перейти оттуда или мне нужно начинать с нуля?Включить аппаратное SPI на Xillinux
ответ
Вам не нужно изменять FSBL или U-boot. Вам нужно только добавить контроллер SPI в дерево устройств и обновить программируемую логику, чтобы контакты SPI подключались к вашему АЦП.
В Xilinx SDK есть инструменты для создания файла дерева устройств, описанного на странице Build Device Tree Blob.
Обычно я редактирую файлы .dts вручную, но вам все равно нужно запустить dtc
, чтобы преобразовать их в двоичный формат, как описано на этой странице.
Для примера, здесь .dts фрагмент для zynq-zc770-xm013.dts платы, позволяющей SPI подключен к флэш-памяти:
&spi0 {
status = "okay";
num-cs = <4>;
is-decoded-cs = <0>;
eeprom: [email protected] {
at25,byte-len = <8192>;
at25,addr-mode = <2>;
at25,page-size = <32>;
compatible = "atmel,at25";
reg = <2>;
spi-max-frequency = <1000000>;
};
};
вы должны сделать 2 шага.
1- модифицируйте файл дескриптора оборудования (.h) вашей платы в источниках ядра и добавьте устройство spi. Во-первых, посмотрите на схему платы и техническое описание на Processo, чтобы убедиться в использовании правильного устройства с правильным именем
2- добавить spidev на файл конфигурации ядра
Теперь построить и загрузите Ядро, если вы проверяете/dev /, вы должны найти spidev ** что-то.
- 1. Beaglebone Black - Включить интерфейс SPI
- 2. STM32 SPI аппаратное обеспечение и строгие предупреждения о сглаживании
- 3. Как включить аппаратное ускорение в телефоне Windows?
- 4. Как включить аппаратное ускорение декодирования в libVLC?
- 5. Включить объект SPI Hazelcast через пружину
- 6. Можно ли программно включить/отключить аппаратное обеспечение?
- 7. Как включить аппаратное ускорение на ICS, но отключить в Gingerbread?
- 8. SPI периферийный на LPC1769
- 9. аппаратное событие на Power8
- 10. Реализация программного обеспечения SPI
- 11. Могу ли я включить аппаратное ускорение для Углового материала?
- 12. Включить контроллер SPI для Cortex-A7 за пределами linux
- 13. Есть ли способ включить аппаратное ускорение в Google TV Emulator?
- 14. Наложение рисунка на аппаратное обеспечение
- 15. Как вручную включить аппаратное ускорение Android после setContentView?
- 16. Как включить аппаратное ускорение для эмулятора Android в Mac OS?
- 17. Unknown BlueNRG SPI response
- 18. Аппаратное ускорение не включено
- 19. Аппаратное моделирование
- 20. Аппаратное ускорение Java
- 21. Аппаратное обеспечение управления через php
- 22. Linux Kernel Driver - SPI как идентифицируется устройство SPI?
- 23. Обнаружение устройства spi от другого водителя
- 24. Arduino Nano: поддерживается SPI?
- 25. MCP2515 & ATMEGA328 Особенность SPI
- 26. Переключить один бит на Arduino + 74HC165 + SPI
- 27. Реализация SPI-раб ISR на PIC32?
- 28. Запись на внешнюю EEPROM с помощью SPI
- 29. SPI на linux (малина PI), используя spidev
- 30. STM32F1 - Использование основного SPI на голом металле