NUCLEO-144 и ПростоКОТ

Обсуждаем цифровые устройства...
Ответить
Друг Кота
Аватара пользователя
Сообщения: 12364
Зарегистрирован: Пт дек 17, 2010 15:07:50
Откуда: Крымский Федеральный Округ

Сообщение просто КОТ »

Добрейший вечер, усатые! Кажется мне нужна ваша помощь. Я тут мельком задавал в разных частях форума уже вопросы. И теперь пришла пока зафиксироваться нам в одной теме. Приступим:

Разрабатывается устройство. Проект большой, причём очень. На мне его часть, но и она очень интересна. Единственный минус, что я больше по аналоговым схемкам, а тут сразу пересаживаюсь на МК. Причём не тинька мелкая, а сразу многоногий и могучий STM32F746ZGT6U. Топовая отладочная плата от ST-Electronics с огромным вычислительным потенциалом.

В ближайшие две недели сделать потребуется достаточно много. Опросить жменю датчиков. Поднять сервер и связаться с ноутом по Ethernet. И ещё всякого рода обработка сигналов... В принципе, написание большей части из этого я себе представляю. Но очень мало времени копаться в мелочах, и искренне надеюсь на поддержку спецов.

Сегодня получил все компоненты, но не могу даже заставить её помигать светодиодом. Что я делаю не так?
Спойлер

Код: Выделить всё

#include "stm32f7xx_hal.h"
void SystemClock_Config(void);
static void MX_GPIO_Init(void);
int main(void)
{  HAL_Init();
  SystemClock_Config();
  MX_GPIO_Init();
  while (1)
  {
    HAL_GPIO_TogglePin(GPIOB, GPIO_PIN_14);
    HAL_Delay(600);
  }
}

void SystemClock_Config(void)
{

  RCC_OscInitTypeDef RCC_OscInitStruct;
  RCC_ClkInitTypeDef RCC_ClkInitStruct;

  __HAL_RCC_PWR_CLK_ENABLE();

  __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE3);

  RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI;
  RCC_OscInitStruct.HSIState = RCC_HSI_ON;
  RCC_OscInitStruct.HSICalibrationValue = 16;
  RCC_OscInitStruct.PLL.PLLState = RCC_PLL_NONE;
  HAL_RCC_OscConfig(&RCC_OscInitStruct);

  RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
                              |RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
  RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_HSI;
  RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV256;
  RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV16;
  RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1;
  HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_0);

  HAL_SYSTICK_Config(HAL_RCC_GetHCLKFreq()/1000);

  HAL_SYSTICK_CLKSourceConfig(SYSTICK_CLKSOURCE_HCLK);

  /* SysTick_IRQn interrupt configuration */
  HAL_NVIC_SetPriority(SysTick_IRQn, 0, 0);
}
void MX_GPIO_Init(void)
{

  GPIO_InitTypeDef GPIO_InitStruct;
  __HAL_RCC_GPIOB_CLK_ENABLE();
  HAL_GPIO_WritePin(GPIOB, GPIO_PIN_14, GPIO_PIN_RESET);
  GPIO_InitStruct.Pin = GPIO_PIN_14;
  GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
  GPIO_InitStruct.Pull = GPIO_NOPULL;
  GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
  HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);

}
Вложения
main.c
Исходник. Сгенерирован STM32Cube
(5.68 КБ) 197 скачиваний
Изображение
И ты врёшь!!! © Vladisman
Изображение
Контактная информация:
Реклама
Ответить

Вернуться в «Цифровая техника»