Jump to content
dim21841

STM32 2 serial

Recommended Posts

Добрый день.

Прошу помощи в выборе контроллера 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.

Зарание благодарен за помощь.

Share this post


Link to post
Share on other sites
26 минут назад, Yuriy.pv сказал:

Ну так и смотрите стм с 3 и более портами, а вообще и мега справится с этим.

http://www.mymcu.ru/

Mega 2560 вроде как и дороже и уйма выводов останется. STM я так понял подешевле, да и не уверен если jlcpcb mega2560 распаивают на плату. А доставать их отдельно и самому паять не уверен что получится.

Надеялся что подскажите наиболее подходящий камень с 3 uart и 1 i2c. 

Искал по параметрам, вышло много вариантов. Но, как выбрать подходящий не зная всех "подводных камней"!?

Edited by dim21841
Опечатка

Share this post


Link to post
Share on other sites

Вебинар «Новинки и решения Traco для промышленных и отраслевых приложений» (28.10.2021)

Компэл 28 октября приглашает всех желающих принять участие в вебинаре, где будет рассмотрена новая и перспективная продукция компании Traco. Мы подробно рассмотрим сильные стороны и преимущества продукции Traco, а также коснемся практических вопросов, связанных с измерением уровня шумов, промывкой изделий после пайки и отдельно разберем, как отличить поддельный ИП Traco от оригинала.
Подробнее

29 минут назад, dim21841 сказал:

Надеялся что подскажите

Возьмите STM32F103C8T6, блюпилл. Его с головой.

Share this post


Link to post
Share on other sites

Вебинар «Новинки и решения Traco для промышленных и отраслевых приложений» (28.10.2021)

Компэл 28 октября приглашает всех желающих принять участие в вебинаре, где будет рассмотрена новая и перспективная продукция компании Traco. Мы подробно рассмотрим сильные стороны и преимущества продукции Traco, а также коснемся практических вопросов, связанных с измерением уровня шумов, промывкой изделий после пайки и отдельно разберем, как отличить поддельный ИП Traco от оригинала.

Подробнее

11 минут назад, Yuriy.pv сказал:

Возьмите STM32F103C8T6, блюпилл. Его с головой.

Огромное спасибо.

Начинаю копать в эту сторону.

Share this post


Link to post
Share on other sites

Bourns – надежное решение для защиты блоков питания базовых станций

Телекоммуникационные базовые станции часто подвергаются ударам молний и выходят из строя из-за короткого замыкания. Компания Bourns предлагает решение, позволяющее обеспечить надежную защиту от перенапряжения и перегрузки по току с помощью гибридного компонента GMOV™, PTVS-диодов PTVS1-380C-TH и плавких предохранителей SF-3812F-T. Рассмотрим это решение
Подробнее

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...

  • Сообщения

    • пожалуй перепутал , бегу в резонансы 
    • Аатстань,праативный!!!Темы не перепутал?
    • и ТТ не решит твою проблему запуска - убрав шунт на транзисторе - увеличишь кпд - но - *пустой* трансформатор и нагруженный на не расчетную индуктивность прямохода - все равно токи при запуске будут большими с шим софстартом - в этом плане выиграет чим, да и проше - не заморачиваясь собирать резонанс.
    • Кремль сейчас частично копирует политику Александра третьего. Запрет на учебу "кухаркиных" детей в неё входил! Детям низкого сословия учиться не нужно.    
    • На сегодняшний день "доктор" должен знать: 0x1E, 0x90, 0x01 - AT90S1200; 0x1E, 0x90, 0x04 - ATtiny11; 0x1E, 0x90, 0x05 - ATtiny12; 0x1E, 0x90, 0x06 - ATtiny15(не лечит); 0x1E, 0x90, 0x07 - ATtiny13; 0x1E, 0x91, 0x01 - AT90S2313; 0x1E, 0x91, 0x02 - AT90S2323; 0x1E, 0x91, 0x03 - AT90S2343; 0x1E, 0x91, 0x06 - ATtiny22; 0x1E, 0x91, 0x07 - ATtiny28; 0x1E, 0x91, 0x08 - ATtiny25; 0x1E, 0x91, 0x09 - ATtiny26; 0x1E, 0x91, 0x0A - ATtiny2313; 0x1E, 0x91, 0x0B - ATtiny24; 0x1E, 0x91, 0x0C - ATtiny261; 0x1E, 0x92, 0x01 - ATtiny4414; 0x1E, 0x92, 0x03 - ATtiny4433; 0x1E, 0x92, 0x05 - ATmega48; 0x1E, 0x92, 0x06 - ATtiny45; 0x1E, 0x92, 0x07 - ATtiny44; 0x1E, 0x92, 0x08 - ATtiny461; 0x1E, 0x92, 0x09 - ATtiny48; 0x1E, 0x92, 0x0A - ATmega48PA; 0x1E, 0x92, 0x0C - ATtiny43U; 0x1E, 0x92, 0x10 - ATmega48PB; 0x1E, 0x93, 0x01 - AT90S8515; 0x1E, 0x93, 0x03 - AT90S8535; 0x1E, 0x93, 0x06 - ATmega8515; 0x1E, 0x93, 0x07 - ATmega8; 0x1E, 0x93, 0x08 - ATmega8535; 0x1E, 0x93, 0x0A - ATmega88; 0x1E, 0x93, 0x0B - ATtiny85; 0x1E, 0x93, 0x0C - ATtiny84; 0x1E, 0x93, 0x0D - ATtiny861; 0x1E, 0x93, 0x0F - ATmega88PA; 0x1E, 0x93, 0x11 - ATtiny88; 0x1E, 0x93, 0x16 - ATmega88PB; 0x1E, 0x93, 0x80 - AT90PWM2; 0x1E, 0x93, 0x81 - AT90USB82; 0x1E, 0x93, 0x82 - AT90PWM2B/3B; 0x1E, 0x93, 0x86 - ATtiny87; 0x1E, 0x93, 0x87 - AT90PWM81; 0x1E, 0x93, 0x88 - ATmega8U2; 0x1E, 0x94, 0x01 - ATmega161; 0x1E, 0x94, 0x02 - ATmega163; 0x1E, 0x94, 0x03 - ATmega16; 0x1E, 0x94, 0x04 - ATmega162; 0x1E, 0x94, 0x05 - ATmega165P; 0x1E, 0x94, 0x06 - ATmega168; 0x1E, 0x94, 0x0A - ATmega164P; 0x1E, 0x94, 0x0B - ATmega168PA; 0x1E, 0x94, 0x15 - ATmega168PB; 0x1E, 0x94, 0x82 - AT90USB82/162; 0x1E, 0x94, 0x83 - AT90PWM216; 0x1E, 0x94, 0x84 - ATmega16M1; 0x1E, 0x94, 0x87 - ATtiny167; 0x1E, 0x94, 0x88 - ATmega16U4; 0x1E, 0x94, 0x89 - ATmega16U2; 0x1E, 0x94, 0x8B - AT90PWM161; 0x1E, 0x95, 0x01 - ATmega323; 0x1E, 0x95, 0x02 - ATmega32; 0x1E, 0x95, 0x03 - ATmega325; 0x1E, 0x95, 0x04 - ATmega3250; 0x1E, 0x95, 0x08 - ATmega324P; 0x1E, 0x95, 0x0D - ATmega325P; 0x1E, 0x95, 0x0E - ATmega3250P; 0x1E, 0x95, 0x0F - ATmega328P; 0x1E, 0x95, 0x10 - ATmega328PB; 0x1E, 0x95, 0x11 - ATmega324PA; 0x1E, 0x95, 0x81 - AT90CAN32; 0x1E, 0x95, 0x84 - ATmega32M1; 0x1E, 0x95, 0x86 - ATmega32C1; 0x1E, 0x95, 0x87 - ATmega32U4; 0x1E, 0x95, 0x88 - ATmega32U6; 0x1E, 0x95, 0x8A - ATmega32U2; 0x1E, 0x96, 0x02 - ATmega64; 0x1E, 0x96, 0x03 - ATmega645; 0x1E, 0x96, 0x04 - ATmega6450; 0x1E, 0x96, 0x08 - ATmega640; 0x1E, 0x96, 0x09 - ATmega644A; 0x1E, 0x96, 0x0A - ATmega644PA; 0x1E, 0x96, 0x81 - AT90CAN64; 0x1E, 0x96, 0x82 - AT90USB646; 0x1E, 0x96, 0x84 - ATmega64M1; 0x1E, 0x96, 0x86 - ATmega64C1; 0x1E, 0x97, 0x01 - ATmega103; 0x1E, 0x97, 0x02 - ATmega128; 0x1E, 0x97, 0x03 - ATmega1280; 0x1E, 0x97, 0x04 - ATmega1281; 0x1E, 0x97, 0x05 - ATmega1284P; 0x1E, 0x97, 0x81 - AT90CAN128; 0x1E, 0x97, 0x82 - AT90USB1286; 0x1E, 0x98, 0x01 - ATmega2560; 0x1E, 0x98, 0x02 - ATmega2561; На большее мне запала не хватило. Возможно есть ошибки в значениях сигнатур МК. Это не удивительно, т.к. пришлось встречаться с ошибками и в ДШ. Если вместе поправим, будет хорошо.
    • Это ты поспешил!!!Шунт оставь!!!Он нужен там,хоть и тт используется.
    • Всегда можно нанять студентов первого и второго курса, другие давно на такие зарплаты не пойдут. Те кто знают IT и английский, всё равно в целом получают зарплату ближе к медианной по cтране и выше, в зависимости от уровня знаний, навыков.   В стране такая сумм 32 422 рублей, она же по сути реальный прожиточный минимум и желанная зарплата для старта карьеры после ВУЗа. (Естественно речь идёт о регионах не о Москве, там запросы выше). А зачем учёные государству устремлённому построенному на традиционных ценностях и консерватизме ?   

  • Гусеничное шасси TP100 с двигателем 12В 350 об/мин

  • Similar Content

    • By Fordli
      Я написал программу последовательного порта с stm32, OP отправляет число, а затем возвращает число, но возвращаемое число - это какой-то неизвестный символ, скорость передачи синхронизирована 9608, стоп-биты данных и т.д. одинаковы, от tx до rx, все еще грязный код.
      Я поменял 3 помощника для отладки последовательного интерфейса, но они все одинаковые, кто-нибудь знает? Спасибо за ваш ответ.
    • By Solver
      Вопрос такой: как запросить содержимое корневого каталога при использовании библиотеки lfs.h. При этом я имею дело с чужим кодом и там файловая система уже отформатирована (когда-то) и смонтирована (при запуске устройства). Оперировать с каталогами и файлами имена которых я заведомо знаю (или сам создаю) у меня получатся, но для текущей задачи это мне никак не помогает.
      Вероятно мой вопрос очень простой и для многих очевидный, но я тем не менее не смог с наскока найти на него ответ ни в гугле, ни в lfs.h. Очень извиняюсь за невежество, я новичек
    • By hwmaker
      Добрый день.
      На проект требуется программист микроконтроллеров STM32 с пониманием Ethernet.
      Проект:
      плата работает под управлением STM32F413VGT6, представляет собой SIP-приставку для домофона.
      Для связи с Ethernet используется микросхема ENC424J600-I/P - мост SPI <-> Ethernet.
      Ниже приведено краткое описание функционала:
      Устройство должно обеспечивать:
          1.    Прием голоса из домофоной линии и оцифровка с помощью встроенного в контроллер АЦП.
          2.    Передача голоса по сети Ethernet по протоколу RTP. В качестве транспорта использовать UDP.
          3.    Прием голосовых сообщений по Ethernet по протоколу RTP и передачу их на встроенный ЦАП.
          4.    Микроконтроллер должен обеспечивать связь с внешним миром с помощью интерфейса Ethernet через микросхему ENC424J600-PT. 
          5.    Для установления соединения с сервером голосовых сообщений используется протокол SIP 2.0. с поддержкой методов, описанных в RFC 3261. 
          6.  Прием и отработку команд, приходящих по MQTT: открыть входную дверь, открыть шлагбаум и т.п.
          7.  WEB-интерфейс для удаленных настроект и мониторинга рабочих параметров устройства.
          8. Для работу через VPN-роутер контроллер должен поддерживать STUN.
          
      Есть проект для микроконтроллера для аналогичного устройства. Там используется STM32L475RET6.
      Для связи с Ethernet используется так же ENC424J600-I/P.
      Устройство успешно звонить по SIP на сервер. Выполняет приходящие MQTT-команды по открыванию дверей.
      Требуется: 
          поправить ПО под STM32F413VGT6, 
          добавить WEB-интерфейс, 
          добавить возможность удаленного обновления ПО через WEB-интерфейс,
          добавить возможность перезагрузки устройства через WEB-интерфейс,
          добавить возможность хранения данных абонентов во FLASH микроконтроллера и возможность синрохизации этих данных с сервером,
          добавить STUN, 
          исправить метод определения квартиры в которую звонят.
      Есть ТЗ на ПО.
    • By Uhbif
      Хочу сделать вольтамперметр на базе STM32L151, есть ли какие нибудь особенности при разводке платы? Свой вариант прикрепляю ниже. Буду благодарен за дельные комментарии. 
      ВА-30.dch
    • 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(); } }  
×
×
  • Create New...