void epa_On() { GPIO_SetBits(GPIOC, GPIO_Pin_2); //вкл епа { //инициализируем порты управления аналоговыми ключами выбора канала GPIO_InitTypeDef port; GPIO_StructInit(&port); port.GPIO_Pin = GPIO_Pin_12; port.GPIO_Mode = GPIO_Mode_OUT; port.GPIO_OType = GPIO_OType_PP; port.GPIO_PuPd = GPIO_PuPd_UP; port.GPIO_Speed = GPIO_Speed_2MHz; GPIO_Init(GPIOC, &port); port.GPIO_Pin = GPIO_Pin_5 | GPIO_Pin_7; GPIO_Init(GPIOB, &port); RCC_AHB1PeriphClockCmd(RCC_AHB1ENR_GPIODEN, ENABLE); port.GPIO_Pin = GPIO_Pin_7; GPIO_Init(GPIOD, &port); } switchOn(100); //выключаем все ключи initSpi1(); vTaskDelay(2); initAdc(); }
bool spiInit(SPI_TypeDef *instance) { #if (!(defined(USE_SPI_DEVICE_1) && defined(USE_SPI_DEVICE_2))) UNUSED(instance); #endif #ifdef USE_SPI_DEVICE_1 if (instance == SPI1) { initSpi1(); return true; } #endif #ifdef USE_SPI_DEVICE_2 if (instance == SPI2) { initSpi2(); return true; } #endif return false; }