ДОМО насИнформация об отрасли Инициализация модуля LORA

Инициализация модуля LoRa

Автор: SDGA:NiceRF Wireless Technology Co., Ltd

Для лучшего взаимодействия с пользователем NiceRF предоставляет вам код инициализации модуля LoRa LoRa1278, надеясь помочь большинству пользователей.

 

/** Конфигурация системных часов

*/

Недействительный SystemClock_Config (недействительный)

{

  RCC_OscInitTypeDef RCC_OscInitStruct;

 

  RCC_ClkInitTypeDef RCC_ClkInitStruct;

 

  RCC_PeriphCLKInitTypeDef PeriphClkInit;

 

/**Настройте выходное напряжение основного внутреннего регулятора.

*/

__HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1);

 

/**Инициализирует тактовую частоту процессора, шин AHB и APB.

*/

 

  RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI|RCC_OSCILLATORTYPE_LSI; //Выбираем часы HSI и LSI

 

  RCC_OscInitStruct.HSIState = RCC_HSI_ON; //Открываем HSI

 

  RCC_OscInitStruct.HSICalibrationValue = 16; //Частота HSI

 

  RCC_OscInitStruct.LSIState = RCC_LSI_ON; //Открываем LSI

 

  RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;

 

  RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSI; //Источником синхронизации является HSI

 

  RCC_OscInitStruct.PLL.PLLMUL = RCC_PLLMUL_4; //множитель PLL

 

  RCC_OscInitStruct.PLL.PLLDIV = RCC_PLLDIV_2;

 

  If (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) //Инициализация, мониторинг ошибок

 

  {

 

    Ошибка_Обработчик();

 

  }

 

 /**Инициализирует тактовую частоту процессора, шин AHB и APB.

 

    */

 

  RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK

 

                              |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;

 

  RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLLCLK; // Устанавливаем источник системных часов на HSI

 

  RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; //коэффициент деления AHB равен 1

 

  RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV1; //коэффициент деления APB1 равен 1

 

  RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1; //коэффициент деления APB2 равен 1

 

  If (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_1) != HAL_OK)//Настройте часы и одновременно установите период задержки FLASH

 

  {

 

    Ошибка_Обработчик();

 

  }

 

  PeriphClkInit.PeriphClockSelection = RCC_PERIPHCLK_USART2; // включение периферийных часов

 

  PeriphClkInit.Usart2ClockSelection = RCC_USART2CLKSOURCE_PCLK1;

 

  Если (HAL_RCCEx_PeriphCLKConfig(&PeriphClkInit) != HAL_OK)

 

  {

 

    Ошибка_Обработчик();

 

  }

 

  /**Настроить время системного прерывания

 

    */

 

  HAL_SYSTICK_Config(HAL_RCC_GetHCLKFreq()/1000);

 

 /**Настроить системный стик

 

    */

 

  HAL_SYSTICK_CLKSourceConfig (SYSTICK_CLKSOURCE_HCLK);

 

  /* Конфигурация прерывания SysTick_IRQn */

 

  HAL_NVIC_SetPriority (SysTick_IRQn, 0, 0);

 

}

Связаться с нами

 +86-755-23080616

 sales@nicerf.com

Сайт: https://www.nicerf.com/ .

Адрес: 309-314, 3/F, корпус A, деловое здание Хунду, зона 43, район Баоань, Шэньчжэнь, Китай

Связаться с нами
политика конфиденциальности

политика конфиденциальности

· Политика конфиденциальности

В настоящее время нет доступного контента


           

Электронная почта: sales@nicerf.com

Тел:+86-755-23080616

Адрес: 309-314, 3/F, корпус A, деловое здание Хунду, зона 43, район Баоань, Шэньчжэнь, Китай


×