Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
| zheleznaja_chast:stm32_usb_dmx_controller [2022/12/23 02:59] – [USB DMX 512 Контролер управления на базе STM32 своими руками] slyfoxleo | zheleznaja_chast:stm32_usb_dmx_controller [Дата неизвестна] (текущий) – внешнее изменение (Дата неизвестна) 127.0.0.1 | ||
|---|---|---|---|
| Строка 24: | Строка 24: | ||
| __Cохранять до 36 сцен освещения в энергонезависимой памяти микроконтроллера и перезагружать любую по команде.__ | __Cохранять до 36 сцен освещения в энергонезависимой памяти микроконтроллера и перезагружать любую по команде.__ | ||
| - | https:// | + | |
| (Сцена № 0 автоматически загружается после включения питания.) Протокол MiniDMX хорошо подходит для сложных операций освещения, | (Сцена № 0 автоматически загружается после включения питания.) Протокол MiniDMX хорошо подходит для сложных операций освещения, | ||
| Строка 34: | Строка 34: | ||
| Исходный код вполне подходит в качестве шаблона для дальнейшей собственной разработки, | Исходный код вполне подходит в качестве шаблона для дальнейшей собственной разработки, | ||
| ===== Описание железной части ===== | ===== Описание железной части ===== | ||
| - | Микроконтроллер тактируется внутренним осциллятором (HSI48), частота которого синхронизируется с сигналом USB. Этот метод обеспечивает очень стабильный выходной сигнал DMX. | + | Микроконтроллер тактируется внутренним осциллятором (//HSI48//), частота которого |
| Потому что невозможно повторно запустить USART микроконтроллера STM32 сразу после сброса DMX, USART Tx продолжает работать в режиме ожидания во время сброса DMX. Он питается через | Потому что невозможно повторно запустить USART микроконтроллера STM32 сразу после сброса DMX, USART Tx продолжает работать в режиме ожидания во время сброса DMX. Он питается через | ||
| - | резистор к DMX-драйверу MAX487, на который подается низкий уровень другим выходом с открытым стоком | + | резистор к DMX-драйверу |
| микроконтроллер во время сброса DMX. | микроконтроллер во время сброса DMX. | ||
| - | Общий ток питания без нагрузки DMX составляет около 25 мА, с подключенной шиной DMX до 50 мА. | + | |
| + | Общий ток питания без нагрузки DMX составляет около | ||
| Для простого воспроизведения с помощью простых инструментов аппаратное обеспечение построено на **однослойной** печатной плате с **небольшим количеством перемычек.** | Для простого воспроизведения с помощью простых инструментов аппаратное обеспечение построено на **однослойной** печатной плате с **небольшим количеством перемычек.** | ||
| + | |||
| провода. Толщина и расстояние между печатными проводами рассчитаны на любительские технологии. Сборка предназначена | провода. Толщина и расстояние между печатными проводами рассчитаны на любительские технологии. Сборка предназначена | ||
| + | |||
| и нескольких сквозных отверстий и деталей SMD. | и нескольких сквозных отверстий и деталей SMD. | ||
| ===== Схематическая диаграмма ===== | ===== Схематическая диаграмма ===== | ||
| Строка 56: | Строка 62: | ||
| ===== Прошивка микропроцессора ===== | ===== Прошивка микропроцессора ===== | ||
| Поскольку на этой плате нет порта RS-232, программирование возможно только с | Поскольку на этой плате нет порта RS-232, программирование возможно только с | ||
| - | SWD программатор. Вместо покупки специального модуля ST-LINK рекомендуется | + | **SWD программатор**. |
| - | использовать модуль STM Nucleo-64, который дешевле, | + | |
| - | дополнительно можно использовать для других экспериментов с микроконтроллерами STM32. Как программировать | + | Вместо покупки специального модуля ST-LINK рекомендуется |
| - | внешние детали с Nucleo, прочитайте его руководство. Когда программатор отключен (т.е. используется | + | использовать модуль |
| + | дополнительно можно использовать для других экспериментов с микроконтроллерами STM32. | ||
| + | |||
| + | Как программировать | ||
| + | внешние детали с **Nucleo**, прочитайте его руководство. Когда программатор отключен (т.е. используется | ||
| автономный, | автономный, | ||
| voltage», подключите выход 3,3 В (// | voltage», подключите выход 3,3 В (// | ||
| Строка 68: | Строка 78: | ||
| {{: | {{: | ||
| + | |||
| Соберите короткий адаптер для программирования (см. рисунок выше, длина провода не более 25 см): | Соберите короткий адаптер для программирования (см. рисунок выше, длина провода не более 25 см): | ||
| + | |||
| --- подключите 2-й контакт разъема Nucleo SWD (считая сбоку в сторону Mini | --- подключите 2-й контакт разъема Nucleo SWD (считая сбоку в сторону Mini | ||
| разъем USB) с выводом PA14 нашей платы (красный на фото выше). | разъем USB) с выводом PA14 нашей платы (красный на фото выше). | ||
| Строка 118: | Строка 130: | ||
| ==== Краткий справочник всех команд ASCII ==== | ==== Краткий справочник всех команд ASCII ==== | ||
| ^ Команда ^ Описание | ^ Команда ^ Описание | ||
| - | | **Sn** | + | | **[[#S <DMX канал> |
| - | | **Vn** | + | | **[[#V < |
| - | | **,n** (// | + | | **[[#, (запятая) < |
| - | | | + | | **[[#+ (не принимает параметры)|+]]** | увеличить адресный уровень буфера передачи канала DMX на единицу || |
| - | | **-** | уменьшить адресный уровень буфера передачи DMX-канала на единицу || | + | | **[[#- (не принимает параметры)|-]]** | уменьшить адресный уровень буфера передачи DMX-канала на единицу || |
| | **=n** | | **=n** | ||
| | **Tn** | | **Tn** | ||
| Строка 136: | Строка 148: | ||
| | **?** | | **?** | ||
| < | < | ||
| - | команда ожидает параметр, | + | команда ожидает параметр, |
| - | значения всегда в десятичном формате и отправляется через USB как текст | + | значения всегда в десятичном формате |
| </ | </ | ||
| === S <DMX канал> | === S <DMX канал> | ||