Кто любит RISC в жизни, заходим, не стесняемся.
Ответить

Re: какую частоту выдаст STMF407

Ср янв 02, 2019 18:28:20

Спасибо. Именно в этом и меняю на 8. Выставляю в system_stm32f4xx.c такие данные:
#define PLL_M 8
#define PLL_N 169

/* SYSCLK = PLL_VCO / PLL_P */
#define PLL_P 4
вручную ставлю в main.c:

RCC_HCLKConfig(RCC_HCLK_Div2);
RCC_PCLK2Config(RCC_HCLK_Div16);

делю прескалером на 999
меряю, правда осцилом ОМЛ-2м учитывая его, параметры, всё равно, что то не так.
Вернее подобрать то можно, но по всем делителям там прескалер не 999 должен быть. Сейчас начну кодить частотомер на этом же камне, чтобы мерять таки , что я там генерю. Мне надо 264 герца.Это частота импульсов ,которые выдаёт головка в сварочном агрегате. Частотомер у меня на работе есть на к176 и генератор на 555, но это куча проводов. Хочу всё компактно сделать на STMf0.Пока пробую
на F4. Головку сварщики редко дают. Без неё сложно налаживать сварку. Вот имитируем головку с помощью генератора. Лишней головки нет .
Спойлер#include <stm32f4xx.h>
#include <stm32f4xx_rcc.h>
#include <stm32f4xx_gpio.h>
#include <stm32f4xx_tim.h>
int main(){

RCC_HCLKConfig(RCC_HCLK_Div2);
RCC_PCLK2Config(RCC_HCLK_Div16);


RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOE, ENABLE);
GPIO_InitTypeDef gpio;// структура
GPIO_StructInit(&gpio); // заполняем стандартными значениями
gpio.GPIO_OType = GPIO_PuPd_NOPULL ; // подтяжка резисторами
gpio.GPIO_Mode = GPIO_Mode_AF ; // работаем как выход
gpio.GPIO_Pin = GPIO_Pin_9;
GPIO_Init(GPIOE, &gpio);

RCC_APB2PeriphClockCmd(RCC_APB2Periph_TIM1, ENABLE);
TIM_TimeBaseInitTypeDef base_timer;
TIM_TimeBaseStructInit (&base_timer);
base_timer.TIM_Prescaler = 999; //
base_timer.TIM_Period = 5; //
TIM_TimeBaseInit(TIM1, &base_timer);
GPIO_PinAFConfig(GPIOE,GPIO_PinSource9,GPIO_AF_TIM1);

TIM_OCInitTypeDef timer_oc;
TIM_OCStructInit(&timer_oc);
timer_oc.TIM_Pulse =1;
timer_oc.TIM_OCMode = TIM_OCMode_Toggle;
/* Включаем основной и комплементарный выводы */
timer_oc.TIM_OutputState = TIM_OutputState_Enable;
timer_oc.TIM_OutputNState = TIM_OutputNState_Enable;
/* Активируем каналы */
TIM_OC1Init(TIM1, &timer_oc);


TIM_BDTRInitTypeDef timer_bdtr;
TIM_BDTRStructInit(&timer_bdtr);
timer_bdtr.TIM_AutomaticOutput = TIM_AutomaticOutput_Enable;
TIM_BDTRConfig(TIM1, &timer_bdtr);


// RCC_PCLK2Config(RCC_HCLK_Div2);/*поигрался здесь с разным Div, всё на максимуме*/

TIM_Cmd(TIM1, ENABLE);


{
while(1);
}
}
Последний раз редактировалось shalfey Ср янв 02, 2019 19:15:46, всего редактировалось 2 раз(а).

Re: какую частоту выдаст STMF407

Ср янв 02, 2019 18:35:26

Какая частота сейчас и какая должна быть?

Re: какую частоту выдаст STMF407

Ср янв 02, 2019 19:21:30

А хрен его знает. ОМЛ-2м меряю. Примерно что то герц 300.По моему нашёл. У меня в этой функции единицы чего то нет, откуда она заскочила, правильно наверно вот так
RCC_PCLK1Config(uint32_t RCC_HCLK); Нет не туда полез......
Частота должна быть чётко 264. НУ у некоторых сварочных 265. Поэтому нужен генератор и частотомер.Всё в одном флаконе. Тащить в цех частотомер и генератор это :)))

Добавлено after 22 minutes 26 seconds:
Открыл Ваш текстовый проект. В Кокосе он не такой. Там нет выбора камня и раскоментирования камней. Это проект Студии. Кокос попроще.
Вот поставил 8
Спойлер#if !defined (HSE_VALUE)
#define HSE_VALUE ((uint32_t)8000000) /*!< Value of the External oscillator in Hz */
#endif /* HSE_VALUE */


Добавлено after 16 minutes 55 seconds:
Вся эта возня, от того,что на работе не дают поставить Кокос, или Студию, или Иар, или Кеил. Дебилы. Программное обеспечение должно быть лицензионное говорят. Начальники советского разлива, но про слово лицензионное слышали. Кокос говорю бесплатный, ну вообщем что дебилам говорить. "Кодю" дома для работы.

Re: какую частоту выдаст STMF407

Ср янв 02, 2019 19:42:00

shalfey писал(а):Примерно что то герц 300.
В архиве 300 Гц.
Вложения
STM32F407_300Hz.7z
(358.1 KiB) Скачиваний: 148

Re: какую частоту выдаст STMF407

Ср янв 02, 2019 19:47:24

Спасибо!

Re: какую частоту выдаст STMF407

Чт янв 03, 2019 14:17:13

RCC_PCLK1Config(uint32_t RCC_HCLK); Вот в этой функции у меня неправильные параметры.
Правильно SYSCLK. Частоту регулирую прескалером и делителями в широких пределах. Всё таки нужен частотомер.

Re: какую частоту выдаст STMF407

Чт янв 03, 2019 14:38:20

Осциллографа или логического анализатора нет? https://ru.aliexpress.com/item/CF-1sets ... 98223.html

Re: какую частоту выдаст STMF407

Чт янв 03, 2019 16:34:47

shalfey писал(а):Вся эта возня, от того,что на работе не дают поставить Кокос, или Студию, или Иар, или Кеил. Дебилы. Программное обеспечение должно быть лицензионное говорят.
Кокос же свободный. Цитата из About: CooCox CoIDE is a free software product.

Re: какую частоту выдаст STMF407

Пн янв 07, 2019 14:49:31

/************************* PLL Parameters *************************************/
/* PLL_VCO = (HSE_VALUE or HSI_VALUE / PLL_M) * PLL_N */
#define PLL_M 8
#define PLL_N 128

/* SYSCLK = PLL_VCO / PLL_P */
#define PLL_P 8
Изменял вот эти параметры(базовые настройки на внешний кварц и ФАПЧ) в разные стороны, проверял по КУбу, чтобы не выйти за пределы частоты.
Они не влияют на выходную частоту.

Вот эти влияют:
RCC_HCLKConfig(RCC_SYSCLK_Div2);
RCC_PCLK2Config(RCC_HCLK_Div2);

Наверно у меня по умолчанию (базовые - PLL_M=25, PLL_N=336,PLL_P=2 )стоят и мои изменения их не волнуют.
Надо наверно читать регистры RCC, там время установления и т, д, в функциях .

Кто что думает?

Re: какую частоту выдаст STMF407

Ср янв 09, 2019 04:04:27

Если интересует "закат Солнца вручную", наш коллега dosikus написал большую статью, как раз, про тактирование F407.

Re: какую частоту выдаст STMF407

Сб янв 12, 2019 17:25:53

Спасибо. (С миру- по строчке кода, "чайнику" -проект получится на шару)Да всё это я читал. Но system_stm32f4xx.c не переписывал, гляну в него. Попробую.

Re: какую частоту выдаст STMF407

Вс янв 13, 2019 12:58:55

Выставлено всё,как я хочу. В CooCox system_stm32f4xx.c просмотрел весь файл. Надо с ним глубже разобраться, хотя он и не такой сложный. Есть пару функций которые я не понял, пока. Вот в связке КУба с ИАром, всё можно менять. Но мне не охота вообще работать с Кубом. У меня с КУбом всё получилось с первого дня покупки дискавери. Ну и что? Что я понимал STM. Мне КУб нужен посмотреть схему тактирования, красиво...В Кокосе надо уже руками начинаешь понимать.

Re: какую частоту выдаст STMF407

Вс янв 13, 2019 16:41:39

Красиво все начинаешь понимать, когда осознаешь картинку из RM. Все остальное филькина грамота и костыли...

Re: какую частоту выдаст STMF407

Пн янв 14, 2019 20:19:24

Есть хороший сайт с картинками о таймерах , на русском. После прочтения сразу понятна работа таймеров.Автор хорошо разжевал таймеры STM. Вот так бы файл system_stm32f4xx.c кто нибудь разжевал. Есть в нём, особенно в Кокосе, непонятные моменты. Потом выложу эти не понятные мне функции.
Ответить