Jump to content

    

Vittok007

Участник
  • Content Count

    11
  • Joined

  • Last visited

Community Reputation

0 Обычный
  1. Цитата(kolobok0 @ Jun 6 2015, 18:20) угадал? Не угадали.
  2. Здравствуйте! Помогите найти рабочую библиотеку для подключения индикатора 16х2(на HD44780) к микроконтроллеру stm32f407. Пробовал подключать разные библиотеки но они толком не работают, либо иероглифы выводят, либо вообще ничего на экране не отображается. Может у кого-нибудь есть готовая, рабочая библиотека? Если есть скиньте, пожалуйста!
  3. Привет всем. Подскажите как с помощью таймера в stm32 менять состояние вывода микроконтроллера на противоположное с достаточно высокой частотой(порядка 10 МГц)??? Делал вот так: CODE #define TIM8_OUT_FREQ 1000000 //Настраивем таймер void TIM8_Config(void) { uint16_t PrescalerValue; RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC, ENABLE); RCC_APB2PeriphClockCmd(RCC_APB2Periph_TIM8, ENABLE); NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0); //Enable the TIM8 gloabal Interrupt NVIC_InitStructure.NVIC_IRQChannel = TIM8_UP_TIM13_IRQn; NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0; NVIC_InitStructure.NVIC_IRQChannelSubPriority = 0; NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; NVIC_Init(&NVIC_InitStructure); //Вычисляем значение предделителя PrescalerValue = (uint16_t)((SystemCoreClock / TIM8_OUT_FREQ) - 1); //Настраиваем таймер TIM_TimeBaseStructInit(&TIM_TimeBaseStructure); TIM_TimeBaseStructure.TIM_Period = 1; TIM_TimeBaseStructure.TIM_Prescaler = PrescalerValue; TIM_TimeBaseStructure.TIM_ClockDivision = 0; TIM_TimeBaseStructure.TIM_CounterMode = TIM_CounterMode_Up; TIM_TimeBaseInit(TIM8, &TIM_TimeBaseStructure); //Prescaler configuration // TIM_PrescalerConfig(TIM8, PrescalerValue, TIM_PSCReloadMode_Immediate); //Разрешаем прерывание по обновлению TIM_ITConfig(TIM8, TIM_IT_Update, ENABLE); //Врубаем таймер TIM_Cmd(TIM8, ENABLE); //Разрешаем обработку прерывания по переполнению счетчика TIM8 NVIC_EnableIRQ(TIM8_UP_TIM13_IRQn); } //Обработчик прерывания void TIM8_UP_TIM13_IRQHandler() { if (TIM_GetITStatus(TIM8, TIM_IT_Update) != RESET) { //Очищаем бит обрабатываемого прерывания TIM_ClearITPendingBit(TIM8, TIM_IT_Update); //Инвертируем сомтояние порта GPIO_Write(GPIOC, GPIO_ReadOutputData(GPIOC) ^ (GPIO_Pin_6)); } } Работает, но выходная частота не поднимается выше 428,5кГц(???), даже если задаю 1мегагерц, например. А если задаю более низкую частоту(например, 200кГц), то частота на выходе в 4 раза меньше(50кГц). В чем причина?
  4. Цитата(Прохожий @ May 23 2012, 20:21) Поверьте, все, что я Вам тут рассказал - не от желания как-то унизить, а предостережение. Просто Вы выглядите достаточно смешно. С одной стороны - МК, а с другой - полное незнание основ электротехники. Я думал вы подсказать че хотите...
  5. Цитата(Прохожий @ May 23 2012, 20:21) Только пользователи AVR могут позволить себе применить бутстрепное питание драйвера полевика, не прочитав при этом ни строчки про принцип его действия. Только пользователи AVR не производят анализ схемотехники, надерганной из различных DS и сваленных в кучу, как попало. Только пользователи AVR считают, что понимают в электронике практически все, поскольку освоили самое сложное - программирование. Это далеко не так. Про бутстрепное питание читал достаточно
  6. незнаю, почему? причем тут тип МК?
  7. схема собрана уже. Хотелось бы этот драйвер завести.
  8. Цитата(Plain @ May 23 2012, 14:48) Зачем плавающий драйвер, если плавающее питание уже в наличии? Надо было поставить обычный драйвер. Обычны драйвер это какой, например?
  9. Здраствуйте. Нужно управлять мощной нагрузкой(электродвигателем) с помощью МК.Идея такая: микроконтроллер формирует ШИМ сигнал(частота 62.5 кГц) далее эти импульсы поступают на оптопару с ее выхода на драйвер(см. схему). На выходе оптопары и входе драйвера присутствуют импульсы заданной частоты и скважности. А вот на выводе HO - все глухо. Напряжение между выводами HO и VS при подключенной нагрузке составляет ~3В, без нагрузки 0. Напряжение между VS и VB - примерно напряжение питания драйвера. При этом транзистор греется как печка если нагрузка подключена, а на выходе порядка 15В(т.е напр. пит. драйвера), причем вне зависимости от того подключен бутстрепный кондер или нет. В качестве бутстрепного конденсатора стоит электролит 1мкФ 400В, диод ultrafast(45нс, 600В). В чем может быть причина, почему на выходе драйвера нет импульсов? Вроде бы все как надо сделал.
  10. Здравствуйте. Есть опорный генератор частотой 20МГц, форма сигнала - синус, амплитуда - 0,3В. Нужно поделить этот сигнал так, чтобы получить сетку стабильных частот: 10МГц, 5МГц, 1МГц и 100кГц. Подскажите пожалуйста микросхемы-делители с коэффициентом деления 2 и 10 на эту частоту.