Гость MagicianT

UART библиотеки, нужен совет.

5 сообщений в этой теме

Гость MagicianT   
Гость MagicianT

Програмировал на ардуино достаточно долго, пока  'ардуина-фобы' не убегайте, обьясню как в нём сериал линк удобно использовать. Допустим для отладки нужен командный интерфейс, регистов парочку поменять 'на лету'. Я там использовал типа такой кострукции;

  if( end_input) {
    char cmd = in_String[0];
    in_String[0] = '+';

    if( cmd == 'd' ) {
      debug_osm = 1 - debug_osm;
      if(debug_osm) Serial.print(F("\nDebug aktiv."));
      else          Serial.print(F("\nDebug de-aktiv."));
      }
    
    if( cmd == 'a' ) {
      adres_reg = strtol( in_String.c_str(), &pEnd, 16);
        Serial.print(F("\n\tReg: "));
        Serial.print(adres_reg, HEX);
      }
    if( cmd == 'w' ) {
        Serial.print(F("\n\tReg: "));
        Serial.print(adres_reg, HEX);
      value_reg = strtol( in_String.c_str(), &pEnd, 2);      
      i2c_w( adres_reg, value_reg );
        Serial.print(F("\tnew  value: "));
        Serial.print( value_reg, BIN);      
      if( error_i2c ) Serial.print(F("\t!ERROR"));
      else            Serial.print(F("\t!O'K"));
        error_i2c = 0;
      }

т.е. по серийнику с компа я отсылаю строку с буквами и цифрами, ардуина 'парсит' и в зависимости от буквы меняет адресс регистра, производит запись/считывание и т.д. Любую периферию или внутренние потроха в лёт поменять. Обратно там есть сериал.принт, понимает как слать на комп бин, октал, хекс и децимал, в интераптах.

Теперь вопрос - два дня ищу что-то подобное на стм32ф3/4 и не могу найти. Библиотеки есть готовые? Примеры я нашёл, на интераптах, убогие примерчики - там чтобы до ума довести надо кольцевые буфферы дописывать, данные форматировать и т.д.

Как сделать кли - команд лайн интерфейс на стм-э?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Быстрый заказ печатных плат

Полный цикл производства PCB по низким ценам!

  • x
    мм
Заказать Получить купон на $5.00
mail_robot    1 221

ну я когда баловался с MP3 плейером (модулем), то использовал такой механизм. Но конкретных либ под это дело не использовал. Просто написал парсер и командный процессор и все работало. Могу дать код. Кольцевых буферов там нет, есть односимвольный буфер. Он цепляется на DMA и обрабатывается по мере поступления символов как строка с окончанием на \n. То есть из консоли можно слать что угодно и потом обрабатывать на свой вкус. Можете вычленить код и оформить в библиотеку.

До мегабита работает отлично, потом может пропускать символы. На 115200 вообще железобетон.

Надо?

Изменено пользователем mail_robot

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Гость MagicianT   
Гость MagicianT

Спасибо, нет. На дма тоже в примерах с эстиэма нашёл.

Хотелось бы,  в 5 разных файлов куда-то строки куда то функции каждый раз не вставлять. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ваша публикация должна быть проверена модератором

Гость
Вы не авторизованы. Если у вас есть аккаунт, пожалуйста, войдите.
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Восстановить форматирование

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

Загрузка...

  • Сообщения

    • Бронь на остатки 6П45С. Написал в лс.
    • Подскажите чайнику, что это (может стабилизатор напряжения) и как его проверить? Центральная нога - выход "+" из блока питания  
    • Бывает хуже. Мне, что бы что нибудь "пайнуть",  приходится ставить складной стол, из углов вытаскивать заныканные приборы. 
    • Для этого осциллограф нужен -  посмотреть наличие , форму и амплитуду напряжения импульсов на затворах силовых ключей. Например:
    • Sergej. я просто давно отошел от темы , года два ничего не делал... лампочку подсоединил на 60 вт на пару вольт упало в одном  плече если две подцепить еще больше падает .... трансформатор использовал от блока питания ПК перемотанный ) но мотал я его давно очень? расчеты 50 кHz 2 х 50 V., Но меня смутила то что вторичная обмотка у меня одним проводом намотана была , заметил только потом .... Напряжение получилось 47..48 V. Грузил лампами , потом спираль ( что и закончилось выгоранием sg3525 с ir2110 и ключами irf740 Емкость два электролита по 200V 680мкф... вот для примера : расчеты под сердечник ETD 49/25/16 harvester извините... UVV на счет мощности Вт 800.... 1 кВт, зеленых колец нету к сожалению(( комповские желтые и пару ферритовых неизвестного происхождения 
    • поставил другой декатрон и о чудо огонечек забегал что может быть с другим декатроном??????
    • @bam-buk  конструктивно оно все на столе навалено. усилитель пересадил на нормальный радиатор, а то в процессе запуска на маленьком сидел, иип отодвинул подальше в сторону, а соеденительные провода по питанию намотал на кольца для создания хоть какого синфазного дросселя, кстати хорошо помогло. Но у меня чуть другие цели, чем годная фильтрация коммутационный помех. Резонансник в режиме переключений zvs и одновременно zcs, вообще не шумит и не наводит, что позволяет засунуть его хоть на одну плату с усилком. Но у меня еще по высокой части стоит бустер, который фильтрует пульсации 100гц, и стабилизирует сеть, и в нем от жестких переключений пока хз как избавиться, в общем-то вч гармоника больше от него идет, а не от резонансера... справа иип, от него силовые на ВК и отдельно ун намотанные на кольца, слева усилитель, дальше нагрузка...