elbear_arduino_bsp/docs/elsomik_description.md

66 lines
3.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Elsomik
Особенности работы с платой Elsomik в среде программирования ArduinoIDE.
### Функциональное назначение выводов
Ниже представлен вид платы снизу:
![elsomik_pinout.png](elsomik_pinout.png)
### Загрузка скетчей
!!!!!
### Цифровые выводы
Выводы на плате Elsomik пронумерованы в соответствии с их принадлежностью к определенному GPIO-порту и конкретному пину внутри порта. Чтобы использовать цифровой вывод, необходимо передать в функцию номер порта и номер пина в формате `P0_1`, где "0" — это номер порта, а "1" — номер пина внутри порта. Например, для инициализации вывода 5 порта 1 на выход необходимо вызвать функцию `pinMode(P1_5, OUTPUT)`.
Для использования доступны следующие выводы: `P0_0 ... P0_15, P1_0 ... P1_15, P2_6, P2_7`. Выводы `P0_11 ... P0_15` на плате обозначены иначе, ниже представлена таблица соответствия:
|Обозначение на плате|Номер вывода|
|---------|---------|
|TDI|P0_11|
|TCK|P0_12|
|TMS|P0_13|
|TRST|P0_14|
|TDO|P0_15|
### АЦП
На плате доступно 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|
#### ШИМ
На плате Elsomik в 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 недоступно.
### Прерывания
На плате Elsomik доступно 8 прерываний, настраиваемых функцией `void attachInterrupt(uint8_t interruptNum, void (*userFunc)(void), int mode)`:
|Цифровой вывод|Номер прерывания|
|---------|---------|
|P0_4|0|
|P0_9|1|
|P0_10|2|
|P0_15|3|
|P1_6|4|
|P1_9|5|
|P1_12|6|
|P1_15|7|
### Serial
Интерфейс UART0 доступен на выводах P0_5, P0_6, для работы с ним используется экземпляр класса под названием `Serial`.
Интерфейс UART1 доступен на выводах P1_8, P1_9, используемый экземпляр класса - `Serial1`.