Експандер SPI-FSMC з підтримкою режиму DMA
DOI:
https://doi.org/10.31861/sisiot2024.2.02011Ключові слова:
хост-контролер, шина SPI, вбудована система, IIoT, людино-машинний інтерфейсАнотація
Надано подальшого розвитку апаратним та програмним рішенням для побудови повнофункціональних систем IIoT на базі швидкісного SPI. Досліджено можливість подолання перешкод, спричинених обмеженістю набору ліній введення/виведення (GPIO), до більш повного використання надлишкового поза забезпеченням інформаційного обміну «точка доступу – станція» обчислювального ресурсу WiFi-модулів для вирішення задач, пов’язаних з іншими аспектами функціонування вбудованої системи. Актуальним є розширення базових можливостей компонентів вбудованої системи із врахуванням забезпечення комплексного доступу до шини SPI за всім функціоналом типових IIoT-систем. Реалізацію запропонованих апаратних та програмних рішень виконано у форматі модуля-експандера базових можливостей шини SPI, призначеного для інтенсифікації інформаційного обміну по WiFi-каналу між SoC-контролером та периферією: IO та LCD розширеннями, SD-картами, DRAM і SPI-Flash файловими сховищами. Розроблено апаратний драйвер SPIExpander та програмний драйвер MultySwitcher для управління ним. В розробці програмного драйвера застосовано парадигму HAL та використано методи RTOS задля запобігання нештатних ситуацій множинного доступу до шини. Переваги застосування швидкісного SPI на противагу інтерфейсу STM-FSMC продемонстровано на прикладі реалізації HMI-компонентів вбудованих систем. SPIExpander застосовано в якості системного проксі-драйвера для реалізації функції мережевого комутатора, до одного з послідовних портів якого підключається керований програмним драйвером DrvLoadBlock апаратний драйвер-адаптер DrvSPI2LCD для перетворення DMA-пакетів у потік 16-розрядних слів. Апаратно підвищено стабільність та мінімізовано набір вхідних ліній генерації системних сигналів управління LCD і проведення DMA-блочних операцій. Представлено програмну модель драйвера для реалізації поліядерного та мультипотокового інформаційного обміну. Надано рекомендації щодо використання експандера SPI-FSMC.
Завантажити
Посилання
A. Yarmilko, "High-Speed SPI Bus Host Controller for Embedded Systems," in Proc. 2022 IEEE 41st Int. Conf. Electron. Nanotechnol. (ELNANO), Kyiv, Ukraine, 2022, pp. 662–666, doi: 10.1109/ELNANO54667.2022.9927055.
A. Karmakar, N. Dey, T. Baral, M. Chowdhury and M. Rehan, "Industrial Internet of Things: A Review," in Proc. 2019 Int. Conf. Opto-Electron. Appl. Opt. (Optronix), Kolkata, India, 2019, pp. 1–6, doi: 10.1109/OPTRONIX.2019.8862436.
R. Budihal, “Emerging trends in embedded systems and applications,” 2010. [Online]. Available: https://www.embedded.com/emerging-trends-in-embedded-systems-and-applications/. Accessed on: Nov. 4, 2024.
A. J. Gapinski and Z. J. Czajkiewicz, “Automated Manufacturing: Processes and Technologies,” Int. Conf. Eng. Comput. Educ., Buenos Aires, Argentina, 2009. [Online]. Available: https://www.researchgate.net/publication/319990699_Automated_Manufacturing_Processes_and_Technologies. Accessed on: Nov. 4, 2024.
A. Kalnoskas, “Embedded GUI library for professional HMI development,” 2018. [Online]. Available: https://www.microcontrollertips.com/emwin-embedded-gui-library-for-professional-hmi-development/. Accessed on: Nov. 4, 2024.
AN2784 Application note. Using the high-density STM32F10xxx FSMC peripheral to drive external memories. [Online]. Available: https://www.st.com/resource/en/application_note/cd00200423-using-the-highdensity-stm32f10xxx-fsmc-peripheral-to-drive-external-memories-stmicroelectronics.pdf. Accessed on: Nov. 10, 2024.
ARMDeveloping. Chapter 3. Programmers Model. Bit-banding. [Online]. Available: https://developer.arm.com/documentation/ddi0439/b/Programmers-Model/Bit-banding. Accessed on: Nov. 10, 2024.
Опубліковано
Номер
Розділ
Ліцензія
Авторське право (c) 2024 Безпека інфокомунікаційних систем та Інтернету речей

Ця робота ліцензується відповідно до ліцензії Creative Commons Attribution 4.0 International License.