6.0 KiB
6.0 KiB
Пины МК
Документ составлен по прошивке:
..\new rev\john103C8T6\john103C6T6.ioc..\new rev\john103C8T6\Core\Inc\main.h..\new rev\john103C8T6\Core\Src\gpio.c..\new rev\john103C8T6\Core\Src\usart.c..\new rev\john103C8T6\Core\Src\can.c..\new rev\john103C8T6\Core\Src\i2c.c..\new rev\john103C8T6\Core\Src\spi.c..\new rev\john103C8T6\Core\Inc\ow_port.h
МК: STM32F103C8Tx, корпус LQFP48.
Основные интерфейсы
| Пин МК | Функция | Настройка | Назначение в проекте |
|---|---|---|---|
PB6 |
USART1_TX |
AF push-pull, remap USART1 | Modbus RTU slave TX |
PB7 |
USART1_RX |
input, no pull, remap USART1 | Modbus RTU slave RX |
PA2 |
USART2_TX |
AF push-pull | Modbus RTU master TX |
PA3 |
USART2_RX |
input, no pull | Modbus RTU master RX |
PA15 |
One_wire |
GPIO, динамически input/output | Шина 1-Wire для DS18B20 |
PA10 |
Relay_dc5v |
GPIO output push-pull | Реле 5 В, управляется из Modbus coil 20 |
PC13 |
GPIO output | push-pull | Светодиод/индикация, используется в led_blink() |
PA0 |
GPIO input | no pull | Вход, назначение в коде не найдено |
PA11 |
CAN_RX |
input | CAN RX |
PA12 |
CAN_TX |
AF push-pull | CAN TX |
PB8 |
I2C1_SCL |
AF open-drain, remap I2C1 | I2C1 SCL |
PB9 |
I2C1_SDA |
AF open-drain, remap I2C1 | I2C1 SDA |
PB3 |
SPI1_SCK |
AF push-pull, remap SPI1 | SPI1 SCK |
PB4 |
SPI1_MISO |
input, no pull, remap SPI1 | SPI1 MISO |
PB5 |
SPI1_MOSI |
AF push-pull, remap SPI1 | SPI1 MOSI |
PA13 |
SWDIO |
Serial Wire | Отладка |
PA14 |
SWCLK |
Serial Wire | Отладка |
PD0 |
OSC_IN |
HSE oscillator | Внешний кварц |
PD1 |
OSC_OUT |
HSE oscillator | Внешний кварц |
GPIO output, сконфигурированные в MX_GPIO_Init
| Пин МК | Начальное состояние | Комментарий |
|---|---|---|
PC13 |
RESET |
Индикация, мигает при старте через led_blink(GPIOC, 13, ...) |
PA1 |
RESET |
Выход сконфигурирован, активного использования в коде не найдено |
PA4 |
RESET |
Выход сконфигурирован, активного использования в коде не найдено |
PA5 |
RESET |
Выход сконфигурирован, активного использования в коде не найдено |
PA6 |
RESET |
Выход сконфигурирован, активного использования в коде не найдено |
PA7 |
RESET |
Выход сконфигурирован, активного использования в коде не найдено |
PA8 |
RESET |
Выход сконфигурирован, активного использования в коде не найдено |
PA9 |
RESET |
Выход сконфигурирован, активного использования в коде не найдено |
PA10 |
RESET |
Relay_dc5v, в цикле main зависит от MB_DATA.Coils.coils[1].state_val_bit.state_val_05 |
PA15 |
RESET |
1-Wire, затем драйвер меняет режим пина input/output |
PB0 |
RESET |
Выход сконфигурирован, активного использования в коде не найдено |
PB1 |
RESET |
Выход сконфигурирован, активного использования в коде не найдено |
PB2 |
RESET |
Выход сконфигурирован, активного использования в коде не найдено |
PB10 |
RESET |
Выход сконфигурирован, активного использования в коде не найдено |
PB11 |
RESET |
Есть macro GPIOB11_valve, но прямой записи в PB11 в текущем коде не найдено |
PB12 |
RESET |
Выход сконфигурирован, активного использования в коде не найдено |
PB13 |
RESET |
Выход сконфигурирован, активного использования в коде не найдено |
PB14 |
RESET |
Выход сконфигурирован, активного использования в коде не найдено |
PB15 |
RESET |
Выход сконфигурирован, активного использования в коде не найдено |
Периферия без внешнего пина
| Периферия | Настройка | Назначение |
|---|---|---|
TIM1 |
internal clock, period 65535, prescaler 0 |
Тайминги 1-Wire, OW_TIM |
TIM2 |
internal clock, period 65535, prescaler 7199 |
Таймер Modbus slave |
TIM4 |
internal clock, period 65535, prescaler 7199 |
Таймер Modbus master |
ADC1 |
ADC_CHANNEL_VREFINT |
Внутренний Vref, внешних ADC-пинов нет |
RTC |
LSI | Часы, доступны через Modbus-регистры |
Замечания
- В
.iocпиныPA2/PA3отмечены как GPIO output, но в актуальномusart.cони инициализируются какUSART2_TX/RX. Для документации использована фактическая инициализация из исходников. - Функция
handle_valves()содержит запись вGPIOCpin14, ноPC14не инициализирован вMX_GPIO_Init()и сама функция в основном цикле закомментирована. - Для RS-485 direction control (
DE/RE) отдельный GPIO вmodbus_config.hне задан:RS_EnableReceive()иRS_EnableTransmit()закомментированы.