Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* Одиночный режим преобразования, запуск в прерывании по таймеру */
- HAL_EPIC_MaskLevelSet(HAL_EPIC_TIMER16_1_MASK);
- HAL_IRQ_EnableInterrupts();
- ..................................................................
- void __attribute__((section(".ram_text"))) trap_handler(void)
- {
- if (EPIC_CHECK_TIMER16_1())
- {
- if (__HAL_TIMER16_GET_FLAG_IT(&htimer16_1, TIMER16_FLAG_ARRM))
- {
- HAL_GPIO_TogglePin(GPIO_0, GPIO_PIN_10); /* Смена сигнала PORT0_10 на противоположный */
- __HAL_TIMER16_CLEAR_FLAG(&htimer16_1, TIMER16_FLAG_ARRM);
- adc_value = HAL_ADC_WaitAndGetValue(&hadc); // забираем данные от предыдущего преобразования
- ANALOG_REG->ADC_SINGLE = 1; // запускаем новое преобразование и уходим и не ждем окончания
- }
- /* Сброс прерываний */
- HAL_EPIC_Clear(0xFFFFFFFF);
- }
Advertisement
Add Comment
Please, Sign In to add comment