Обновлены шапки и по мелочи
This commit is contained in:
@@ -29,7 +29,7 @@
|
||||
1. Настройка периферии (periph_config.h):
|
||||
(+) Определить массивы GPIO_Init_TypeDef для портов:
|
||||
gpioa_config[32], gpiob_config[32]
|
||||
(+) Настроить режим пинов: Input, Output, AltFunc и другие функции
|
||||
(+) Настроить режим пинов: Input, Output, AltFunc или не используется (аналог режим)
|
||||
|
||||
2. Инициализация GPIO:
|
||||
(+) gpio_init() — инициализация портов GPIOA и GPIOB
|
||||
@@ -47,9 +47,37 @@
|
||||
(+) GPIO_Switch_Init(&sw, GPIOB, GPIO_PIN_0, SET) — инициализация кнопки
|
||||
(+) GPIO_Read_Switch(&sw) — чтение состояния кнопки с фильтрацией
|
||||
|
||||
5. Утилитарные функции:
|
||||
(+) gpio_get_init(GPIOA, GPIO_PIN_5) — получение конфигурации пина
|
||||
5. Получение конфигурации пинов:
|
||||
(+) gpio_get_init(порт, пин) - для периферии
|
||||
|
||||
==============================================================================
|
||||
##### Особенности работы #####
|
||||
==============================================================================
|
||||
|
||||
- Динамические режимы светодиодов:
|
||||
- Моргание: простой on/off с заданным периодом
|
||||
- Плавное затухание: квадратичное изменение яркости через ШИМ
|
||||
- Требуют вызова GPIO_LED_Dynamic_Handle() в основном цикле
|
||||
|
||||
- Защита от дребезга:
|
||||
- Фильтрация по времени (Sw_FilterDelay в миллисекундах)
|
||||
- Неблокирующий алгоритм с отслеживанием состояния
|
||||
- При изменении уровня запускается таймер, состояние обновляется после задержки
|
||||
|
||||
- ШИМ для плавного затухания:
|
||||
- Программная генерация с 15 уровнями яркости (LED_PWM_TICKS)
|
||||
- Полный цикл затухания-разтухания: 2 × LED_PWM_TICKS шагов
|
||||
|
||||
- Конфигурация пинов:
|
||||
- Периферия может перезаписывать конфигурацию пинов (например, UART на AltFunc)
|
||||
- gpio_get_init() позволяет периферии получить исходную конфигурацию
|
||||
- После использования периферии можно восстановить исходные настройки
|
||||
|
||||
- Табличный подход:
|
||||
- Каждый пин имеет свою строку в массиве конфигурации
|
||||
- Позволяет централизованно управлять всеми пинами
|
||||
- Упрощает отладку и модификацию конфигурации
|
||||
|
||||
@endverbatim
|
||||
******************************************************************************
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user