# START-MIK32 Особенности работы с платой START-MIK32 в среде программирования ArduinoIDE. ### Функциональное назначение выводов ![Start_V1_pinout.png](Start_V1_pinout.png) ### Загрузка скетчей Для загрузки скетчей в ArduinoIDE необходимо передвинуть переключатель режима программатора на плате в положение `COM`. Так же необходимо установить две перемычки на разъем 5 - первой перемычкой замкнуть выводы `COM_RX` и `MCU_TX`, а второй - выводы `COM_TX` и `MCU_RX`. ### Цифровые выводы Выводы на плате START-MIK32 пронумерованы в соответствии с их принадлежностью к определенному GPIO-порту и конкретному пину внутри порта. Чтобы использовать цифровой вывод, необходимо передать в функцию номер порта и номер пина в формате `P0_1`, где "0" — это номер порта, а "1" — номер пина внутри порта. Например, для инициализации вывода 5 порта 2 на выход необходимо вызвать функцию `pinMode(P2_5, OUTPUT)`. Для использования доступны следующие выводы: `P0_0 ... P0_15, P1_0 ... P1_15, P2_0 ... P2_7`. На плате есть встроенные светодиоды и кнопка. Светодиоды подключены к выводам P0_3, P1_3. Кнопка подключена к выводу Р0_8. Для удобства при работе с ними можно воспользоваться макросами `LED_BUILTIN`(P0_3), `LED_BUILTIN1`(P1_3) и `BTN_BUILTIN`, передавая их в качестве аргументов функции вместо номера цифрового вывода. ### АЦП На плате доступно 8 выводов, которые можно использовать в качестве каналов АЦП. Для работы с ними в функцию `analogRead()` необходимо передать номер канала или номер соответствующего цифрового вывода. Доступные каналы и их соответствие номерам выводов платы: |Цифровой вывод|Номер канала АЦП| |---------|---------| |P1_5|A0| |P1_7|A1| |P0_2|A2| |P0_4|A3| |P0_7|A4| |P0_9|A5| |P0_11|A6| |P0_13|A7| #### ШИМ На плате START-MIK32 в ArduinoIDE доступно 8 выводов для формирования ШИМ-сигнала. Генерация сигнала осуществляется с помощью 32-битного таймера. Выводы, подключенные к одному и тому же таймеру, выдают ШИМ-сигнал одинаковой частоты. Доступные выводы: |Цифровой вывод|Используемый таймер| |---------|---------| |P0_0|таймер 1| |P0_1|таймер 1| |P0_2|таймер 1| |P0_3|таймер 1| |P1_0|таймер 2| |P1_1|таймер 2| |P1_2|таймер 2| |P1_3|таймер 2| При использовании SPI формирование ШИМ сигнала недоступно на выводах P1_0 ... P1_3. ### Прерывания На плате START-MIK32 доступно 8 прерываний, настраиваемых функцией `void attachInterrupt(uint8_t interruptNum, void (*userFunc)(void), int mode)`: |Цифровой вывод|Номер прерывания| |---------|---------| |`BTN_BUILTIN` (P0_8)|0| |P1_9|1| |P0_10|2| |P1_15|3| |P0_12|4| |P0_13|5| |P0_14|6| |P0_15|7| ### Serial Интерфейс UART0 доступен на выводах P0_5, P0_6, для работы с ним используется экземпляр класса под названием `Serial`. Интерфейс UART1 доступен на выводах P1_8, P1_9, используемый экземпляр класса - `Serial1`. USB-UART преобразователь, установленный на плате, поддерживает стандартные скорости UART до 57600 бод. Нестандартные скорости должны быть кратны 12*32=384, например, 240000 бод, 768000 бод.