Перейти к содержанию
    

Поиск

Показаны результаты для тегов 'rcc'.

  • Поиск по тегам

    Введите теги через запятую.
  • Поиск по автору

Тип контента


Форумы

  • Сайт и форум
    • Новости и обсуждения сайта и форума
    • Другие известные форумы и сайты по электронике
    • В помощь начинающему
    • International Forum
    • Образование в области электроники
    • Обучающие видео-материалы и обмен опытом
  • Cистемный уровень проектирования
    • Вопросы системного уровня проектирования
    • Математика и Физика
    • Операционные системы
    • Документация
    • Системы CAD/CAM/CAE/PLM
    • Разработка цифровых, аналоговых, аналого-цифровых ИС
    • Электробезопасность и ЭМС
    • Управление проектами
    • Нейронные сети и машинное обучение (NN/ML)
  • Программируемая логика ПЛИС (FPGA,CPLD, PLD)
    • Среды разработки - обсуждаем САПРы
    • Работаем с ПЛИС, области применения, выбор
    • Языки проектирования на ПЛИС (FPGA)
    • Системы на ПЛИС - System on a Programmable Chip (SoPC)
    • Методы и средства верификации ПЛИС/ASIC
  • Цифровая обработка сигналов - ЦОС (DSP)
    • Сигнальные процессоры и их программирование - DSP
    • Алгоритмы ЦОС (DSP)
  • Микроконтроллеры (MCU)
    • Cредства разработки для МК
    • ARM
    • RISC-V
    • AVR
    • MSP430
    • Все остальные микроконтроллеры
    • Отладочные платы
  • Печатные платы (PCB)
    • Разрабатываем ПП в САПР - PCB development
    • Работаем с трассировкой
    • Изготовление ПП - PCB manufacturing
  • Сборка РЭУ
    • Пайка и монтаж
    • Корпуса
    • Вопросы надежности и испытаний
  • Аналоговая и цифровая техника, прикладная электроника
    • Вопросы аналоговой техники
    • Цифровые схемы, высокоскоростные ЦС
    • RF & Microwave Design
    • Метрология, датчики, измерительная техника
    • АВТО электроника
    • Умный дом
    • 3D печать
    • Робототехника
    • Ремонт и отладка
  • Силовая электроника - Power Electronics
    • Силовая Преобразовательная Техника
    • Обратная Связь, Стабилизация, Регулирование, Компенсация
    • Первичные и Вторичные Химические Источники Питания
    • Высоковольтные Устройства - High-Voltage
    • Электрические машины, Электропривод и Управление
    • Индукционный Нагрев - Induction Heating
    • Системы Охлаждения, Тепловой Расчет – Cooling Systems
    • Моделирование и Анализ Силовых Устройств – Power Supply Simulation
    • Компоненты Силовой Электроники - Parts for Power Supply Design
  • Интерфейсы
    • Форумы по интерфейсам
  • Поставщики компонентов для электроники
    • Поставщики всего остального
    • Компоненты
  • Майнеры криптовалют и их разработка, BitCoin, LightCoin, Dash, Zcash, Эфир
    • Обсуждение Майнеров, их поставки и производства
  • Дополнительные разделы - Additional sections
    • Встречи и поздравления
    • Ищу работу
    • Предлагаю работу
    • Куплю
    • Продам
    • Объявления пользователей
    • Общение заказчиков и потребителей электронных разработок

Поиск результатов в...

Поиск контента, содержащего...


Дата создания

  • Начало

    Конец


Дата обновления

  • Начало

    Конец


Фильтр по количеству...

Регистрация

  • Начало

    Конец


Группа


AIM


MSN


Сайт


ICQ


Yahoo


Jabber


Skype


Город


Код проверки


skype


Facebook


Vkontakte


LinkedIn


Twitter


G+


Одноклассники


Звание

Найдено: 0 результатов

  1. Тактирование HAL-Cube STM32H7

    Есть проект (код) для STM32H7, стало интересно разобраться с настройками тактирования шин и CPU на примере настройки тактирования в CubeMX- то есть сопоставить код настройки тактовой частоты МК со схемой настройки тактирования в Кубе. Контроллер тактируется от внешнего источника 50 МГц. Причина- по коду не понятно с какой частотой тактируются шины и ЦПУ. Очевидным решением моего вопроса было бы открыть reference manual на контроллер и сопоставлять схему тактирования с функцией инициализации из HAL-библиотеки и схемой в CubeMX. Но вот тут у меня проблема: я не могу найти соответствие между ними. Более конкретно о написанном выше. Код инициализации, сгенерированный CubeMX (но проекта, из которого генерили, нет): Схема тактирования из Куба (дефолтный проект, обвел то, частоту чего мне интересно узнать): Схема тактирования из мануала на контроллер: Со строчками RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE; RCC_OscInitStruct.HSEState = RCC_HSE_BYPASS; все понятно. Но вот что за синтезаторы в коде PLLM, PLLN ... PLLR, что за делители уже есть вопросы. Такое название фигурирует только в коде. Тоже и про куб можно сказать: D1CPRE prescaler, HPRE prescaler встречаются только в схеме куба. Посоветуйте, пожалуйста, как в этом разобраться? Мануал может какой-нибудь или апнота
  2. STM32F030K6 RCC PLL

    Не могу разобраться. МК не хочет работать на скорости более 12 МГц (PLL множитель 3 и HSE 4 МГц). Даташит и референс вроде бы просмотрел и основные моменты проверил. К тому же для F030 примеры в RM имеются. Для проверки подключил олед и вывел на него RCC_CR. ( до 12 МГц PLL out) Сначала подаю питание без кварца - установлены биты 1:0, втыкаю на ходу кварц - устанавливаются 17:16 и 25:24. То есть при 12 МГц переключение на PLL происходит. Далее упростил конфигурацию до светодида. Включаю питание без кварца - мигает медленно (HSI), втыкаю кварц - мигание ускоряется (PLL). После вытаскивания кварца скорость снова уменьшается и далее уже не меняется после манипуляций с кварцем (CSS отработал и вырубил HSE с PLL). Это чтобы установить, что сам механизм переключения в принципе работает. Далее прошиваю с множителем PLL на единичку больше, и светодиод перестает мигать (а заодно и подключаться stlink). Дёргание кварца восстанавливает работу светодиода и обмен с stlink-ом. Думаю, если бы влетал в эксепшен по умолчанию, то вряд ли диод мигал после вытаскивания кварца. Прошу совета. На что здесь следует обратить внимание? /* * * STM32F030K6T6 (TQFP32) * LED - PB1 (15) * Crystal 4 MHz * */ static void delay (unsigned int time) { for (unsigned int i = 0; i < time; i++) for (volatile unsigned int j = 0; j < 500; j++); } void led_on(void){ RCC->AHBENR |= RCC_AHBENR_GPIOBEN; GPIOB->MODER |= GPIO_MODER_MODER1_0; GPIOB->BSRR = GPIO_BSRR_BS_1; while(1); } void Switch_to_PLL(void){ if ((RCC->CFGR & RCC_CFGR_SWS) == RCC_CFGR_SWS_PLL){ // Test if PLL is used as System clock RCC->CFGR &= (uint32_t) (~RCC_CFGR_SW); // Select HSI as system clock while ((RCC->CFGR & RCC_CFGR_SWS) != RCC_CFGR_SWS_HSI); // Wait for HSI switched } RCC->CR &= (uint32_t)(~RCC_CR_PLLON); // Disable the PLL RCC->CFGR |= RCC_PLLSOURCE_HSE; // select HSE as PLL input while((RCC->CR & RCC_CR_PLLRDY) != 0); // Wait until PLLRDY is cleared RCC->CFGR = (RCC->CFGR & (~RCC_CFGR_PLLMUL)) | (RCC_CFGR_PLLMUL12); // Set the PLL multiplier RCC->CR |= RCC_CR_PLLON; // Enable the PLL while((RCC->CR & RCC_CR_PLLRDY) == 0); // Wait until PLLRDY is set RCC->CFGR |= (uint32_t) (RCC_CFGR_SW_PLL); // Select PLL as system clock while ((RCC->CFGR & RCC_CFGR_SWS) != RCC_CFGR_SWS_PLL); // Wait until the PLL is switched on } void RCC_IRQHandler(void) // HSE running { if ((RCC->CIR & RCC_CIR_HSERDYF) != 0) // Check the flag HSE ready { RCC->CIR |= RCC_CIR_HSERDYC; // Clear the flag HSE ready FLASH->ACR |= FLASH_ACR_LATENCY; // 24 < if systemclock < 48 Mhz FLASH->ACR |= FLASH_ACR_PRFTBE; // Pref //RCC->CFGR = ((RCC->CFGR & (~RCC_CFGR_SW)) | RCC_CFGR_SW_0); // Switch the system clock to HSE Switch_to_PLL(); // Switch the system clock to PLL } else { // error led PB1 led_on(); } } void HAL_RCC_CSSCallback(void){ // reset clock sec flag RCC->CIR |= RCC_CIR_CSSC; // clear CSSF } int main( void ){ HAL_Init(); NVIC_EnableIRQ(RCC_CRS_IRQn); // interrupt NVIC_SetPriority(RCC_CRS_IRQn,0); // priority RCC->CIR |= RCC_CIR_HSERDYIE; // isr when HSE redy RCC->CR |= RCC_CR_CSSON | RCC_CR_HSEON; // enable HSE and CSS // blinking led RCC->AHBENR |= RCC_AHBENR_GPIOBEN; GPIOB->MODER |= GPIO_MODER_MODER1_0; while (1) { GPIOB->BSRR = GPIO_BSRR_BR_1; delay(500); GPIOB->BSRR = GPIO_BSRR_BS_1; delay(500); } return 0; }
×
×
  • Создать...