# sdp-f103-carton-counter Счетчик картона для бумажного комбината ## Подключение * PA0 - выход компаратора, который стоит после оптотранзистора * PB6 - выход на светодиод * PB12 - выход на светодиод, если светодиод горит - сигнал есть и датчик заметил что он видит объект, иначе объекта он не видит * PA10 - usart1_rx * PA9 - usart1_tx ## Сборка и компиляция 1) открыть проект в STM32CubeMX 2) сгенерировать код под SW4STM32 IDE 3) собрать любой IDE, которая умеет работать с CMake ## Фичи * реагирует только на 20 непрерывных импульса от компаратора * когда от компаратора нет импульсов больше 5 периодов, программа считает что потеряла объект * выплевывает текстом данные в usart1 * работает с modbus через usart2 (in development) ## Используемая переферия * TIM4 (CH1) - генерация PWM на ноге PB6 * TIM2 - input capture, захват сигнала с компаратора * TIM3 - таймер для modbus ## Регистры ModBus
Имя | Адрес | Доступ | Допустимые значения | Описание |
---|---|---|---|---|
CONTROL | 0x0012 | rw | 0x00-0xFF | Регистр для управления устройством. Для включения нужных функций нужно установить соответствующие биты. См. описание регистра CONTROL. |
CNT | 0x0012 | rw | 0-32000 | Регистр счета, обнуляется при перезапуске устройства. Специальное значение 0xFFFF означает что регистр был переполнен. |
MAX_LOST_PULSES | 0x0010 | rw | 0-20 | Максимальное количество импульсов, при которых объект считается вышедшим из видимой зоны. |
MIN_RECEIVE_PULSES | 0x0011 | rw | 0-20 | Минимальное количество импульсов, после которых считается что объект в видимой зоне |
Бит | Название | Описание |
---|---|---|
0 | CNT_EN | Сигнал разрешения работы счетчика. 0 - устройство выключено, 1 - включено. |