Jump to content
Kirill_Alehin

Проверка работоспособности частотомера на stm32

Recommended Posts

Друзья, привет. Есть код и схема для сборки частотомера на STM32, но нет сейчас возможности проверить работоспособность данного устройства. Если у кого-нибудь есть свободные 5 минут, не могли бы вы хотя бы без запуска, беглым взглядом посмотрев код, подсказать будет ли оно работать или нет и подсказать ошибки. В лучшем случае протестировать работает ли устройство или нет. Если кто поможет, буду чрезвычайно благодарен.

Рисунок1.png

Рисунок2.jpg

Share this post


Link to post
Share on other sites
Только что, serg123 сказал:

Proteus в помощь.

Протеус  интерфейс криво определяет.Только в железе

Share this post


Link to post
Share on other sites

Приглашаем на вебинар «Экономичные решения МЕAN WELL для надежных разработок» (30.09.2021)

Компания Компэл приглашает 30 сентября на вебинар посвященный экономичным решениям МЕAN WELL. На вебинаре мы рассмотрим, как решения MEAN WELL позволяют сэкономить при выборе недорогого источника питания. Будут представлены основные группы источников питания по конструктивным признакам и по областям применения в контексте их стоимости или их особенностей, позволяющих снизить затраты на электропитание конечного устройства.
Подробнее

:D:D:D, в протеусе не работает только кривонаписанный код.

Share this post


Link to post
Share on other sites

Модульные RJ-соединители KLS — масштабное пополнение склада Компэл

Продуктовая линейка компании KLS на складе Компэл пополнилась модульными соединителями типа RJ. Ассортимент представлен неэкранированными соединителями RJ11, RJ12 и RJ45 для построения базовых информационных сетей, а также экранированными RJ45 с трансформатором для реализации систем передачи данных между узлами ЛВС.

Подробнее

в том то дело , что в протеусе может работать и кривой код , проверка железом обязательна .

Share this post


Link to post
Share on other sites

Вебинар «Microchip и современный подход к искусственному интеллекту. Разворачиваем нейронную сеть на 32-битном микроконтроллере» (13.10.2021)

Приглашаем всех желающих 13 октября 2021 г. посетить вебинар, посвященный искусственному интеллекту, машинному обучению и решениям для их реализации от Microchip. Современные среды для глубинного обучения нейронных сетей позволяют без детального изучения предмета развернуть искусственную нейронную сеть (ANN) не только на производительных микропроцессорах и ПЛИС, но и на 32-битных микроконтроллерах. А благодаря широкому портфолио Microchip, включающему в себя диапазон компонентов от микроконтроллеров и датчиков до ПЛИС, средств скоростной передачи и хранения информации, возможно решить весь спектр задач, возникающий при обучении, верификации и развёртывании модели ANN.
Подробнее

А в железе кривой код исполнятся не будет? 

Share this post


Link to post
Share on other sites

STMicroelectronics: электростатический разряд больше не проблема

Защита от статического электричества необходима каждому современному устройству. Компания STMicroelectronics представляет решения, соответствующие стандарту IEC61000-4-2, а также специальное приложение PROTECTION FINDER, которое поможет легкого и эффективно подобрать необходимые компоненты. Рассмотрим практические примеры защиты от ESD, отраслевые стандарты и ряд ключевых параметров важных при проектировании электростатической защиты устройств.
Подробнее

протеус худо бедно годится только для авр. С стм такие шутки не катят


Нужно делать то, что нужно. А то, что не нужно, делать не нужно. (С) Винни Пух

Share this post


Link to post
Share on other sites

Ну почему, если не протеус с нормальной лицензией то вполне работает

Share this post


Link to post
Share on other sites
Posted (edited)

Это что - абдурина на STM32?

Жесть, куда катится мир?..

P.S. Если что, частотомер (да еще и с замером скважности) делается на одном таймере в режиме ШИМ-захвата... А если надо только частоту считать но более точно, то таймер в счетном режиме.

Edited by Eddy_Em

Share this post


Link to post
Share on other sites
24.06.2021 в 09:46, Eddy_Em сказал:

Это что - абдурина на STM32?

Жесть, куда катится мир?..

P.S. Если что, частотомер (да еще и с замером скважности) делается на одном таймере в режиме ШИМ-захвата... А если надо только частоту считать но более точно, то таймер в счетном режиме.

Правильно , но точность хреновая.ШИМ на одном периоде только низкие частоты. Тема про частотомер хорошо распилина на Коте. Там есть  грамотные ребята, ники не буду называть. Да они и здесь сидят под другими никами, наверно.У меня прямой счёт на 10 секундах время измерения считает отлично. Код элементарный. НО это прямой счёт со всеми недостатками.(Низкие частоты нужно мерить секунд 50 )

Share this post


Link to post
Share on other sites

читал ту темку на котах. Хороша


Нужно делать то, что нужно. А то, что не нужно, делать не нужно. (С) Винни Пух

Share this post


Link to post
Share on other sites

А я так обратный счёт и не могу распилить.Тормоз наверно я.(60 лет однако, а я в stm32 полез:D)

Share this post


Link to post
Share on other sites

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Сообщения

    • Здравствуйте, уважаемые форумчане. В одном из своих проектов столкнулся со следующей проблемой. Необходимо реализовать эффект заполнения светодиодной полосы (как полоса загрузки). В ходе поиска в интернете чего-то подобного нашёл схему плавного розжига светодиодов на n-канальном мосфете и rc цепочке и решил, что если последовательно включить такую схему, то для моих целей это идеальный вариант. Но, столкнулся с рядом проблем (схема на фото во вложении).  1) Собирая данную схему на макетной плате, я уже был готов к тому, что загорится только 1й светодиод. Но, почему-то, загораются все разом (без задержек и плавного розжига)  2) Перед тем как покупать мосфеты, проверил эту схему в крупном масштабе на реле (но щелкание десятка реле это совсем не камильфо в моём устройстве), всё работало как нужно с 2мя "Но". Первое - не было плавного розжига (само собой, это понятно). Второе - вместо керамических конденсаторов я использовал электролитические. (Может ли выбор конденсаторов влиять на rc цепь?) 3) оставил полоску светодиодов гореть на некоторе время и заметил, что часть диодов периодически то погаснет, то начинает гореть тусклее. Никакой системы не проглядывается, при этом, светодиоды не перегарают. При выключении/включении снова загораются все и горят нормально.  Направьте, пожалуйста, в нужном направлении. Как победить данную проблему, чтобы всё работало так, как нужно?   P.S. Крайне желательно, чтобы диоды остались так же независимы друг от друга. Каждый из них со своей схемой должен будет размещаться на отдельной плате 17х25мм(максимум) с возможностью увеличить/уменьшить количество этих плат на конечном устройстве (рекламный стенд).    Upd.: PPS. У первого мосфета забыл дорисовать конденсатор, но он там должен быть.   
    • Повторю ответ... Думаю, вы всё поняли теперь..
    • значит земля уже отключена. Развязывающий трансформатор нужен чтоб уйти от потенциала фазы, щуп у осциллографа заземлена, если ткнете на горячую шину то бахнет все. Если нет земли то не должно коротить Если ослик советского производства то он уже развязан, питается то он от простого трансформатора, щуп не связан с землей. Точно не уверен, не было советского ослика. 
    • А если дом "Хрущевка" Где нет земли вообще?  У меня есть заземление, но для ослика отключил его в розетке
    • ткни щупом массы ослика Иа на Исток силового ключа и ослик закричит ИИаааа...))) если нет развязывающего транса то заземление на осциллографе нужно отключать. Но это нарушение техники безопасности 
    • Доброго времени суток! В университете дали задание на курсовую работу. нужно через UART управлять сервоприводом. Частота  50 Гц. Скважность 700 до 200 мкс. Задача такая, что типа на МК у нас все порты заняты и мы не можем использовать таймеры МК. Для управления нужно использовать последовательный интерфейс. Преподаватель сказал использовать UART. Немного не понимаю, можно ли получить ШИМ с такой частотой если использовать UART. И можно ли управлять скважность этого сигнала. Примерная схема (как я представляю): Какие данные хочу передать по UART чтобы получить ШИМ: К сервоприводу идет сигнал указанный на графиках справа. Буду благодарен если поможете с расчетом частоты и скважности (если это возможно реализовать). Спасибо)
    • латр или регулируемый 0...+300в нужен, а накойразвязывающий трансформатор? от чего развязываца?
  • Similar Content

    • By Uhbif
      Хочу сделать вольтамперметр на базе STM32L151, есть ли какие нибудь особенности при разводке платы? Свой вариант прикрепляю ниже. Буду благодарен за дельные комментарии. 
      ВА-30.dch
    • By dim21841
      Добрый день.
      Прошу помощи в выборе контроллера stm32 под следующую задачу:
      Bluetooth HC-05 (1 uart) необходимо связывать по uart с:
      1) MAX232 (2 uart) по 9600, иногда 115200,
      2) с Atmega328 (3 uart) по 115200.
      Задача stm32 выставлять скорость на hc-05 и соединять между собой нужные uart в соответствии с выбором (4 switch в dip-8 корпусе).
      Кто может что-то посоветовать?
      В stm32 пока совсем начинающий.
      STM32 выбрал потому что в перспективе хочу добавить возможность параллельно  выводить данные и на lcd.
      Зарание благодарен за помощь.
    • By Serhii Serheiev
      Помогите пожалуйста советом. Бьюсь несколько дней с опцией ADC.
      Я использую двухканальный АЦП IN0 и IN1 на микроконтроллере STM32L010RB через библиотеку HAL.
      Если проверять по отдельности, все в порядке, но когда я проверяю вместе, у меня все время одна и та же проблема: первый канал перезаписывает данные на втором канале, и у меня одинаковые данные на IN0 и IN1 в терминале
      Функция для выбора IN0.
      void ADC_Select_CH0(void) { ADC_ChannelConfTypeDef sConfig_0 = {0}; sConfig_0.Channel = ADC_CHANNEL_0; sConfig_0.Rank = 0; if (HAL_ADC_ConfigChannel(&hadc, &sConfig_0) != HAL_OK) { Error_Handler(); } } Функция для выбора IN1
      void ADC_Select_CH1(void) { ADC_ChannelConfTypeDef sConfig_1 = {0}; sConfig_1.Channel = ADC_CHANNEL_1; sConfig_1.Rank = 0; if (HAL_ADC_ConfigChannel(&hadc, &sConfig_1) != HAL_OK) { Error_Handler(); } } основной цикл
      while(1) { ADC_Select_CH0(); HAL_ADC_Start(&hadc); HAL_ADC_PollForConversion(&hadc, 100); Axis[0] = HAL_ADC_GetValue(&hadc); HAL_ADC_Stop(&hadc); ADC_Select_CH1(); HAL_ADC_Start(&hadc); HAL_ADC_PollForConversion(&hadc, 100); Axis[1] = HAL_ADC_GetValue(&hadc); HAL_ADC_Stop(&hadc); sprintf(Tx_Data, "Axis X: %d;\r\nAxis Y: %d;\r\n\n\n", Axis[0], Axis[1]); HAL_UART_Transmit(&huart2, (uint8_t*)Tx_Data, strlen(Tx_Data), 1000); } ADC конфигурация:
      static void MX_ADC_Init(void) { hadc.Instance = ADC1; hadc.Init.OversamplingMode = DISABLE; hadc.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV2; hadc.Init.Resolution = ADC_RESOLUTION_12B; hadc.Init.SamplingTime = ADC_SAMPLETIME_160CYCLES_5; hadc.Init.ScanConvMode = ADC_SCAN_DIRECTION_FORWARD; hadc.Init.DataAlign = ADC_DATAALIGN_RIGHT; hadc.Init.ContinuousConvMode = ENABLE; hadc.Init.DiscontinuousConvMode = DISABLE; hadc.Init.ExternalTrigConvEdge = ADC_EXTERNALTRIGCONVEDGE_NONE; hadc.Init.ExternalTrigConv = ADC_SOFTWARE_START; hadc.Init.DMAContinuousRequests = DISABLE; hadc.Init.EOCSelection = ADC_EOC_SINGLE_CONV; hadc.Init.Overrun = ADC_OVR_DATA_PRESERVED; hadc.Init.LowPowerAutoWait = DISABLE; hadc.Init.LowPowerFrequencyMode = DISABLE; hadc.Init.LowPowerAutoPowerOff = DISABLE; if (HAL_ADC_Init(&hadc) != HAL_OK) { Error_Handler(); } }  
    • By Родион Евченко
      Здравствуйте! Не могу понять, почему на дисплей выводятся только черные квадраты, если смотреть прямо, а если под углом, то видно строку, которую я вывожу. Как убрать эти квадраты, а строку сделать видимой?
    • By SWAP
      Доброго времени суток, форумчане. Вопрос хотел задать на робофоруме, однако, похоже там сон-час (последние лет 5).
      На моих роботах стоят raspberryPi с помощью которых я в эклипсе удаленно дебажу и прогаю находящиеся на борту STMки через "openocd": https://www.instructables.com/Wireless-Programming-and-Debugging-With-STM32-and-/
      Однако, есть серьезное неудобство. При включении робота, требуется вручную подключаться к пишке по ssh и запускать команду: "sudo openocd", после чего все работает.
      Пробовал различные варианты автозапуска команды "sudo openocd" при старте пишки, выпавшие в первых страницах гугла, но результата не получил.
      Быть может, кто-нибудь из местных имеет опыт запуска "openocd" при старте системы?
      (p.s.: мои распбианы без десктопа)
       
       
       
       
×
×
  • Create New...