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

Программа для com порта

Уму не постижимо, зачем на достаточно высокоуровневые, продуманные и документированные вдоль и поперек API (хоть у Lin, хоть у Win) навешивают какие-то приблуды :( да еще с напильниками....

Ну когда переходишь от чисто эмбеддерского программирования - то да, любая уже реализованная API функция воспринимается как полная халява.

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

Хотят как правило компонент, чтобы Create(), Send(), Recv(), Destroy() и ComPort.Baud = 9600;

 

Любой исходник на чистом API в части работы компортами портируется за полчаса ( максимум час с непривычки ) с Lin на Win и наоборот. Вот и вся "проблема".

Заодно нет зависимости от всяких "библиотек", мировоззрения их авторов и превнесенных багофичей.

Абсолютно согласен. Но и вышесказанное мной всё равно имеет место быть:)

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


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

А избалованные готовыми компонентами программеры не хотят...

К счастью остались еще избалованные работоспособными программами пользователи которые НЕ хотят слушать обильные рассуждения таких баловней-"программеров" о "глюках" Компьютеров, Windows, Компиляторов, Библиотек,... :)

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


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

Старички что ли, на абаке еще программировали? Они имеют обыкновение брюзжать по поводу "молодежи", им простительно.

 

Любой исходник на чистом API в части работы компортами портируется за полчаса ( максимум час с непривычки ) с Lin на Win и наоборот. Вот и вся "проблема".
Браво! Выпендрёж засчитан.

Я о кроссплатформенности говорил, а вы о чем? Вы ведете параллельно поддержку N раздельных исходников (пусть некоторых модулей) под каждую платформу, под каждую редакцию платформы, под каждую системную библиотечку подстраиваетесь?

 

По-моему, господа старички, надо отвечать за свои слова и точнее формулировать мысли. Особенно когда внушаете "молодежи".

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


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

"Оооой, чё щас начнееетсяяя"

 

Если говорить о портировании кода отвечающего за com-порт с линуха на вынь - то никакого выпендрежа не было.

 

И вообще, что за тон, товарищ SysRq? Знаем мы про QT :) не знаем только к чему так много пыли?

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


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

Я о кроссплатформенности говорил, а вы о чем? Вы ведете параллельно поддержку N раздельных исходников (пусть некоторых модулей)

Да, именно так. Своими собственными руками. И способен это сделать для любой платформы, а не только для тех, для которых кто-то сделал "QSuperExtraHiperSerial" обертку. При этом использование всяких "Extra" оберток совершенно не отменяет "параллельно поддержку" этих разнообразных оберток, ибо на сколь-нибудь реальную многоплатфоменность и гибкость применения они не тянут - так котлетный фарш для нерадивых домохозяек - неразборчивый пипл хавает. Всякие разные "старички" продумывали, обкатывали и применяли API операционок многие годы в самых разнообразных применениях с самыми разными ресурсами. Ну а те, у кого в голове задачи сложнее "два байта переслать" в голове не укладываются, те, конечно не способны понять почему API такие яко-бы "непонятные" ну и крайне нуждаются в готовых обертках dvabaitapereslat(). Тут им на "помощь" приходят многочисленные мнящие себя "системщиками" слегка продвинутые эникейщики :(. Энтропия программного обеспечения растет и растет :( :( :(.

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


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

...котлетный фарш для нерадивых домохозяек
Сильное заявляение. Аргументировать просить не буду: вполне представимо, что в рамках решения неких базовых (некоторых системных даже) задач это утверждение при наличии необходимого опыта и навыков у разработчика, наличии определенных экономических и временнЫх факторов, справедливо.

 

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

 

Да, чертовски обидно что "пипл хавает" (еще и за $). Раздражает, что всё чаще не пытаются даже понять как оно устроено изнутри. (Ну и прочее.) Но это же общая тенденция в технической области вцелом: доступность и упрощение до уровня, понятного обывателю, которого не интересует ничего кроме того чтобы ему стало хорошо. Не стоит раздражаться по этому поводу даже. Решить надо: пытаться вразумить их, или уйти уровнем выше и писать для них же алгоритмы. И то и другое в конечном счете делает продукт, но где вклад сильнее?..

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


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

честно говоря я так и не понял что мне освоить,

Берите Дельфи, не ошибетесь. За номером 7. Не старше. Но и не младше.

Для компорта ищите исходник comm32.pas.

Без особого выпендрежа сделанный компонент. Как раз тот самый чистый АПИ. Но уже завернутый в нужное число потоков.

 

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

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


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

Я о кроссплатформенности говорил, а вы о чем? Вы ведете параллельно поддержку N раздельных исходников (пусть некоторых модулей) под каждую платформу, <...>

 

Кроссплатформенные программы - это путь к деградации.

В любой платформе, как Win так и Lin, есть фичи, отсутствующие в другой платформе. Если же кто-то разрабатывает "кроссплатформенную библиотеку", то он вынужден использовать только то, что имеется в них обоих. А это значит, что он отказывается использовать новые фичи, которые появляются в них. Поэтому, если вы делаете кроссплатформенную программу и хотите чтобы она была современной, то это должны быть две независимые программы, написанные с учетом возможностей каждой системы.

 

Берите Дельфи, не ошибетесь.

Россия странная страна. Программисты в ней пишут программы на паскале, хотя весь мир пишет на С. Интернет просматривают Оперой, хотя (судя по логам моих сайтов) за рубежом ей пользуются не более 1%, в то же время FF там занимает от 10 до 20% - у нас же его полностью игнорируют. А файлы у нас все поголовно архивируют RAR'ом, в то время как буржуи даже не догадываются о существовании этого формата.

 

<...> неудобство с лихвой компенсируется дичайшей простотой и надежностью дельфей.

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

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


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

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

 

Компилятор там вполне работоспособный. А вот те самые компоненты, которые и дают то самое обманчивое чувство простоты - просто редкий кал.

 

Я вообще в последнее время делаю софт на большом брате более интересным способом - сам код пишется на C в виде консольного кроссплатформенного приложения, а весь красивый фронт-энд обеспечивается вебстраничками в браузере. В результате в самом приложении нативный код использует потоки, сокеты и пайпы, что портируется на любую систему без лишних проблем.

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


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

Но это же общая тенденция в технической области вцелом.....

Совершенно естественная тенденция - "продукта" требуется ( большей частью совершенно субъективно, но требуется) все больше и больше. Только вот вопрос с чего начинать освоение этой "кухни"? С попытки разбить яйцо и пожарить яичницу с беконом или с засовывывания в микроволновку банки с "завтрак туриста".

 

 

Кроссплатформенные программы - это путь к деградации.

Верное замечание. Причем использование минимума фич это еще и бич нынешнего Линукса - львиная длоля драйверов написана с использованием минимума фич :( железа. Когда-то давно, когда ядро было простым и относительно шустрым это компенсировалось. Сегодня, когда ядро Линукса стало в погоне за Win и "красотой" неповоротливым и радутым сочетание с минималистичными драйверами стало жутким тормозом.

 

 

 

А вот те самые компоненты, которые и дают то самое обманчивое чувство простоты - просто редкий кал.

Именно так - толпа "программистов" в стремлении быстро "написать" программу и, самое страшное поделиться "результатом" через интернет есть страшная сила. Но к сожалению способная массово производить только "кал" :(.

Cам код пишется ....

В общем практически так-же. Web интерфейсы и наличие Web-программистов со вкусом это огромное подспорье.

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


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

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

Это как раз анекдоты от тех самых "программеров" . Просто надо понимать, какие буковки и когда нажимать.

В моей бывшей конторе крутые программеры писали на Сях. Исключительно. Но фронтэнд - на Дельфях. Исключительно.

Либо когда надо что-то очень быстро сделать.

 

Я пользуюсь дельфями для отладки контроллеров. Пишу всякие сопроводительные прграммы, типа вот шрифты грабил надысь для своей платки. Много чего. И ГЛЮЧНОСТИ - не отметил. Это из серии мифов про глючность виндов.

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


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

Воможно, Вам не нужен компилируемый язык, достаточно интерпретируемого? Тогда Python Вам в помощь - и кросплатформенный, и документированный, и, главное, сам по себе грамотно написанный.

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


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

Проги очень много DELPHI, C# ...

Но который из них самая удобная и простая?

MS Visual Studio и C# (или любой дотнетовский язык) - если хочется писать легко, быстро и красиво. Если этого не нужно, выбирайте любой другой - большой разницы нет, обслуживание COM порта далеко не та задача, чтобы выбирать под нее среду разработки.

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


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

Кроссплатформенные программы - это путь к деградации.
Очень хочется процитировать из соседней ветки:

Вы уважаемый в форуме участник. Ваши необоснованные утверждения могут быть восприняты "неокрепшими" умами как истина.

 

использовать новые фичи
Детский подход какой-то. "Новые фичи" должны давать такой конечный результат, чтобы стоило их использовать.

 

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

 

..написанные с учетом возможностей каждой системы.
Авторы кроссплатформенных библиотек это и делают, сливая интерфейс взаимодействия на верхнем уровне всех программ в один. Причем, это команда специалистов. Вы в одиночку умнее их всех?..

 

..за рубежом
Ах вот она где костность-то! Знаете, переставайте ориентироваться на них. Они думать разучились, особенно те что потребители.

 

Россия странная страна.
Какая разница на чем реализовать алгоритм? Паскаль проще, полагаю что согласитесь. У нас всегда важна была идея! А реализацию стоящей идеи должен поддержать тот, кто в этом смыслит.

(Вы видите баннеры Оперы по всему инету и в масс-медиа, чтобы юзер заинтересовался что это такое? Однако, опера-мини стоит у всех на мобиле - здесь пропиарено...)

 

красивый фронт-энд обеспечивается вебстраничками в браузере.
Ни один самый раскроссплатформенный тупой и толстый код не будет жрать столько ресурсов, сколько браузер (да и вообще браузера может не быть) + связь (которой тоже может не быть, даже loopback). Оперативность управления и возможности интерфейса вообще не стоит обсуждать даже.

Опять же, это частное решение. Оно не может быть принято как общий подход.

 

С попытки разбить яйцо и пожарить яичницу с беконом или с засовывывания в микроволновку банки с "завтрак туриста".
Начинать надо с алгоритма. Инструмент реализации должен быть выбран исходя из. Ультимативность суждений недопустима.

Кроме того, экспериментировать лучше там, где максимум получится сломать микроволновку и остаться голодным (C#, ref), а не спалить весь дом от непонимания физики процесса (C\C++, &).

 

Именно так - толпа "программистов" в стремлении быстро "написать" программу и, самое страшное поделиться "результатом" через интернет есть страшная сила.
Программирование чуть ли не визаульным стало (сиди себе, складывай кубики - они оживут)! Оно доступно, оно зверски интересно. Что здесь нетипичного, асоциального? Брюзжать не надо.

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


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

Ууууу, целое искусство раздувать безобидный вопрос, да таких масштабов.

Драка программных сект, получается…….. не пора ли в офтоп господа – товарищи?

 

Теперь по делу.

Если надо быстро, а программированием раньше не занимались то Visual Basic .NET Microsoft. Результат получите быстро.

 

Если есть время и желание. То лучше (на мой взгляд), изучение продолжить в следующей последовательности:

1. С (основы)

2. С++ (основы)

3. Стандартную библиотеку шаблонов STL (основы)

 

Вы получите в результате фундамент, который можно будет использовать:

1. В ARM или других архитектурах (8-битники доживают последние годы).

2. В драйверах.

3. В консольных приложениях.

 

Затем С# довольно мощный и универсальный инструмент.

 

По поводу продуктов от Borland, да было время, сам плотно программировал, да и сейчас не брезгую в старых проектах, но время Borland прошло. Да сама Borland от них отказалась. Кому надо тот намек понял.

 

По поводу Qt довольно мощный инструмент но начинать с него без основ в С++ особого смысла не вижу.

 

 

Статьи

http://www.pcports.ru/Articles.php

 

Программирование COM порта. С чего начать?

http://www.pcports.ru/articles/com_1.php

 

Библиотека

http://www.pcports.ru/Library.php

 

 

Дальше гугли с ключевыми словами:

CreateFile("COM1",

WriteFile

………………………

 

 

какую программу надо изучать(visual C++, Visual basic или др.), чтобы можно было написать несложные программы для windows?

Хочу AVR присоеденить к ПК com порту.

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


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

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

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

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

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

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

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

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

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

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