Перейти к содержанию
    

11 hours ago, AlekErm said:

я хочу спокойной работы в нужном направлении, не отвлекаясь как бы не свалиться в очередную С яму или не выстрелить себе в ногу.

Если это стоны всего-лишь  по поводу сборщика мусора, то не вижу проблем. 
Сделайте отдельный пул памяти для своего програмного модуля и удаляйте его в конце.  

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


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

6 минут назад, AlexandrY сказал:

Просто поражает , когда ничинают умничать,

Это верно, я бы даже добавил, что слегка начинает раздражать.

6 минут назад, AlexandrY сказал:

Профессионал не работает дешевым инструментом. 

Поэтому, покажите, пожалуйста, обратный пример, и, не умничая, назовите тот инструмент, который подойдёт вопрошающему. Заодно и я чему-то научусь.

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


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

Ну хорошо, раз все так прекрасно открестились от изначальной темы, то не будем затягивать эту агонию, а подскажите тогда, какой инструментарий будет самым удобным и понятным для прикладника на PC, но новичка в данной теме (в глубоком языке С), знакомым только с адруино. Пока минимальная основная задача - работа с USART, собираюсь использовать M4 для разгребания потока данных поступающих на порт со скоростью 3Мбит (точная скорость порта черного ящика, посылающего этот поток данных, неизвестна).

 

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


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

11 минут назад, AlekErm сказал:

какой инструментарий будет самым удобным и понятным для прикладника на PC

Самым удобным будет только тот, который вы напишете или закажите или к которому со скрипом в зубах приспособитесь. Поймите, вы задаёте слишком общие вопросы.

12 минут назад, AlekErm сказал:

для разгребания потока данных поступающих на порт со скоростью 3Мбит

Это довольно большая скорость. Чтобы такой поток принимать нужно написать грамотно драйвер последовательного порта, скорее всего необходимо использовать ПДП (модуль прямого доступа к памяти) в связке с УСАПП (модуль USART). ПДП пишет в кольцевой буфер в памяти, а ваша программа "неспешно" вычитывает его и "разгребает".

Ещё раз: превлеките для работы толкового программиста встраиваемых систем. Просто так на просторах интернета вы вряд ли что-то найдёт. Это довольно специфичные задачи, и вряд ли есть типовые решения.

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


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

12 minutes ago, AlekErm said:

Ну хорошо, раз все так прекрасно открестились от изначальной темы, то не будем затягивать эту агонию, а подскажите тогда, какой инструментарий будет самым удобным и понятным для прикладника на PC, но новичка в данной теме (в глубоком языке С), знакомым только с адруино. Пока минимальная основная задача - работа с USART, собираюсь использовать M4 для разгребания потока данных поступающих на порт со скоростью 3Мбит (точная скорость порта черного ящика, посылающего этот поток данных, неизвестна).

 

У меня в свое время на такой скорости по USART-у валил протокол с цепочкой инкапсуляций во такой: PPP->IP->GRE->PPP->MPPE->IP->TCP->HTTP
Это VPN PPTP через модем. Чтоб такое распарсить я использовал многомегайтный стек Nucleus Plus. 
Такие вещи не разгребаются походя, волшебным языком.
Секрет только в либах, огромных функционально заточенных либах.   
 

 

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


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

9 минут назад, AlexandrY сказал:

У меня в свое время на такой скорости по USART-у валил протокол с цепочкой инкапсуляций во такой: PPP->IP->GRE->PPP->MPPE->IP->TCP->HTTP
Это VPN PPTP через модем. Чтоб такое распарсить я использовал многомегайтный стек Nucleus Plus. 
Такие вещи не разгребаются походя, волшебным языком.
Секрет только в либах, огромных функционально заточенных либах.   
 

 

Что то я совсем погрустнел, товарищи.... Настолько все непросто, либо вы меня пугаете. Вы мне подскажите, коллеги, хотя бы нормальный IDE где я смогу поковыряться, с адекватной отладкой и т.д., так сказать въехать в тему, а не в стену, с наименьшими потерями времени.

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


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

Это ниша, где все и сразу, то бишь с наскоку, взять не получится. И чем дальше в лес, тем страшнее волки.
Эта не та ниша, где "гуру-спикеры" вещают на тему "какой язык программирования выбрать в 2021"... Здесь все несколько стабильно.
Для упрощения каких-то задач итак простейшего уровня STM-щики придумали STM32CubeMx, чтобы типа "снизить" порог вхождения.
Мое мнение - если не готов вкладывать все силы на изучение "плинтусов" (архитектур, особенностей периферии и т.д.) - не трать время зря.
Ну или, раз хочется Java, присмотрись к Linux-платформам. Там все зачастую готово из коробки. Или под Android разрабатывать (в целом, одной и то же).

Если уж хотите программировать под МК - забудьте о каких-то абстрактных вещах, кои любят прикладники. Тут задачи вполне однозначные.
IDE разные есть на выбор - кому что нравится. В основном из платных сейчас это IAR/Keil, из бесплатных - любой Open Source, например, Eclipse.

Вас никто не пугает. Это протоптанная дорожка. И либо Вы идете по ней, либо топчите свою, собирая все кактусы по пути.
Как по мне - люди, которые ищут халяву здесь (в МК), в 99% случаев понимают, что ловить им тут нечего, поэтому стоит подумать еще раз, надо оно Вам.
Если надо - учите C/C++, учитесь разбираться в документации (а ее придется изучать тоннами и всю сразу), в чужом коде, в инструментах отладки и т.д. Успехов!

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


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

24 minutes ago, AlekErm said:

Вы мне подскажите, коллеги, хотя бы нормальный IDE где я смогу поковыряться, с адекватной отладкой и т.д., так сказать въехать в тему, а не в стену, с наименьшими потерями времени.

IDE выбирается после того как найдены либы. Не раньше.  
Поэтому либо вы нечего не говорите из какой отрасли ваш черный ящик и сами молча ищите решение. 
Либо говорите что ваш черный ящик делает и может быть кто-то знает где для него лежат либы.  
 

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


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

14 минут назад, Arlleex сказал:

Если надо - учите C/C++, учитесь разбираться в документации (а ее придется изучать тоннами и всю сразу), в чужом коде, в инструментах отладки и т.д. Успехов!

Я бы ещё добавил и ассемблер. Ибо - малейшая проблема с отладкой может привести к долгим блужданиям там, где просмотрев ассемблерный листинг дело решается за 5 минут.

И да - без прилежного чтения документации здесь никуда.  :unknw:

6 минут назад, AlexandrY сказал:

IDE выбирается после того как найдены либы. Не раньше.

Безногий первым делом ищет костыли. Чтобы просто до сортира добраться.  :biggrin:

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


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

14 минут назад, AlexandrY сказал:

IDE выбирается после того как найдены либы. Не раньше.  
Поэтому либо вы нечего не говорите из какой отрасли ваш черный ящик и сами молча ищите решение. 
Либо говорите что ваш черный ящик делает и может быть кто-то знает где для него лежат либы.  
 

Ничего секретного в ящике нет, из него торчат 4 провода, 2 питание 3.6В и еще 2 это RX TX USARTа, который по предварительному анализу на осциллографе гонит непрерывный 3Мбитный поток данных от нескольких датчиков и энкодеров. Мне всего лишь нужно распарсить этот поток данных по регистрам (каждому датчику свой регистр), а далее, с помощью другого стандартного 115200 UARTa будут поступать от другой системы запросы на получение содержимого определенного регистра. В роли другой системы будет пока обычный компьютер.

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

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


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

54 минуты назад, AlekErm сказал:

Настолько все непросто, либо вы меня пугаете

А вы попробуйте сами. Возьмите микроконтроллер и напишите мигалку светодиодом. Это классический "Хеллоу Ворлд".

54 минуты назад, AlekErm сказал:

хотя бы нормальный IDE где я смогу поковыряться, с адекватной отладкой и т.д

Я использую для отладки IAR. Собственно и компилятор тот же самый. IDE у меня Slick Edit.

 

7 минут назад, AlekErm сказал:

Мне всего лишь нужно распарсить этот поток данных по регистрам

На первый взгляд задача не очень сложная для специалиста и вполне может быть решена на том же LPC4337. Если сделать нужно только то, что вы написали: принять поток, распарсить, и отдавать по запросу. Но без опыта "помигать светодиодом" её вам не решить. Т.к. периферии нужны драйвера, правильным драйверам нужна документация, а её много. Плюс необходимо учитывать все нюансы самого ядра Cortex-M4, чтобы в случае вылета в тот же Hard Fault суметь расшифровать причину вылета. А тут уже даже не Си нужно понимать, а ассемблер, и разбираться с процессором на уровне его регистров. В общем прикладному программисту здесь делать нечего. Не его поле)

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

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


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

5 минут назад, MrBearManul сказал:

А вы попробуйте сами. Возьмите микроконтроллер и напишите мигалку светодиодом. Это классический "Хеллоу Ворлд".

Я использую для отладки IAR. Собственно и компилятор тот же самый. IDE у меня Slick Edit.

 

На первый взгляд задача не очень сложная для специалиста и вполне может быть решена на том же LPC4337. Если сделать нужно только то, что вы написали: принять поток, распарсить, и отдавать по запросу. Но без опыта "помигать светодиодом" её вам не решить. Т.к. периферии нужны драйвера, правильным драйверам нужна документация, а её много. Плюс необходимо учитывать все нюансы самого ядра Cortex-M4, чтобы в случае вылета в тот же Hard Fault суметь расшифровать причину вылета. А тут уже даже не Си нужно понимать, а ассемблер, и разбираться с процессором на уровне его регистров. В общем прикладному программисту здесь делать нечего. Не его поле)

Ну опыт мигания светодиодом у меня имеется. В свое время делал умный дом с подключением ко внешнему веб серверу, так же реализовывал связь по RS485. Но это все на AVR Ардуино.

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


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

7 минут назад, MrBearManul сказал:

На Яве???

Да нет, ну какая ява на простой ATMEGe ардуино ))))

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


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

15 minutes ago, AlekErm said:

Ничего секретного в ящике нет, из него торчат 4 провода, 2 питание 3.6В и еще 2 это RX TX USARTа, который по предварительному анализу на осциллографе гонит непрерывный 3Мбитный поток данных от нескольких датчиков и энкодеров. Мне всего лишь нужно распарсить этот поток данных по регистрам (каждому датчику свой регистр), а далее, с помощью другого стандартного 115200 UARTa будут поступать от другой системы запросы на получение содержимого определенного регистра. В роли другой системы будет пока обычный компьютер.

Эт чесно говоря не прикладная задача. Тут вы явно попутали понятия. 
Прикладная была бы если вы сказали что собираетесь делать кухонного робота с заданным меню. 
А у вас чисто низкоуровневая,  я бы  даже сказал не задача, а процедура.    
Самая  сложная часть этой процедуры будет на строне связи с компьютером. 
На это дело есть разных либ.  Больше всего их кстати под Arduino.
И тогда начать надо с того почему не устраивает ардуина? Их же есть и на Cortex-ах

 

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


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

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

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

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

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

×
×
  • Создать...