реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> DELPHI
ASV
сообщение Dec 20 2005, 21:28
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 43
Регистрация: 28-01-05
Пользователь №: 2 279



Может это не по теме, но другого места я тут не нашол.
Такая ситуация: Написал я програмку на DELPHI которая общается по RS-232 с МК. Использовал стандартные API функции. В чем проблема? На моем компьюторе все нормально работает, но при переносе на другой компьютер ниче не работате - обмена нет.
Я думаю, что это связано с опциями копиляции или с самим COM-портом. Если у кого была такая ситуация подскажите.
Есть ли разница в уровнях в COM-портах на разных компьютерах?
Go to the top of the page
 
+Quote Post
Dr.NoA
сообщение Dec 20 2005, 22:37
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 316
Регистрация: 22-10-05
Пользователь №: 9 976



Во-первых, хотелось бы узнать разные операционки на этих компах или нет.

По поводу опций компиляции. Прогу можно компилировать с включением библиотек и без. Выбирается это в опциях проекта, закладка "Packages", галочка "Build with runtime packages". Проверьте ее.
Go to the top of the page
 
+Quote Post
iosifk
сообщение Dec 21 2005, 06:26
Сообщение #3


Гуру
******

Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(ASV @ Dec 21 2005, 00:28) *
На моем компьюторе все нормально работает, но при переносе на другой компьютер ниче не работате - обмена нет.
Я думаю, что это связано с опциями копиляции или с самим COM-портом. Если у кого была такая ситуация подскажите.
Есть ли разница в уровнях в COM-портах на разных компьютерах?


Есть программка DEPENDS.EXE. Запускаете ее и ей "скармливаете" Ваше приложение. Она покажет, какие DLL, BPL и пр. используются для этой программы. Если на другой машине чего-то не хватит - то сразу увидете.

Методика примерно такая:
1. Делаете заглушку Tx-Rx. Одеваете ее на порт, открываете штатную программу Монитор и передаете символы. Если есть прием - значит порт нормально работает.
2. В Вашей программе реализуете аналогичную функцию. Заодно тут выяснятся подробности с программной или аппаратной синхронизацией приема-передачи, те куда девать DTR-DSR. Добиваетесь, чтобы был прием.
3. На Вашем микроконтроллере делаете программную заглушку, которая выполняет то, что было описано в п.1. Передаете символы в мк, он должен отвечать ими-же.
4. Только после этих шагов переходите к проверке "родной" программы. А шаги 1-3 оставляете для проверки оборудования.
Удачи!

Сообщение отредактировал iosifk - Dec 21 2005, 06:32


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
Виктория
сообщение Dec 21 2005, 07:37
Сообщение #4


инженер
****

Группа: Свой
Сообщений: 520
Регистрация: 19-09-05
Из: Самара
Пользователь №: 8 701



Цитата(ASV @ Dec 21 2005, 01:28) *
Может это не по теме, но другого места я тут не нашол.
Такая ситуация: Написал я програмку на DELPHI которая общается по RS-232 с МК. Использовал стандартные API функции. В чем проблема? На моем компьюторе все нормально работает, но при переносе на другой компьютер ниче не работате - обмена нет.
Я думаю, что это связано с опциями копиляции или с самим COM-портом. Если у кого была такая ситуация подскажите.
Есть ли разница в уровнях в COM-портах на разных компьютерах?


Было такое давно, но до конца не победили blush.gif (не нашли все причины, шаманством обходились).

excl.gif Проверьте свойства COM-портов в драйвере Windows (лучше не использовать автоматическую настройку), Ваша программа должна сама инициализировать порты. И вообще советую еще раз сравнить компьютеры по этой вкладке и найти отличия. Результаты сообщите, пожалуйста blush.gif .
Go to the top of the page
 
+Quote Post
Old1
сообщение Dec 21 2005, 09:09
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 697
Регистрация: 26-07-05
Из: Могилев
Пользователь №: 7 095



Цитата(ASV @ Dec 21 2005, 01:28) *
Может это не по теме, но другого места я тут не нашол.
Такая ситуация: Написал я програмку на DELPHI которая общается по RS-232 с МК. Использовал стандартные API функции. В чем проблема? На моем компьюторе все нормально работает, но при переносе на другой компьютер ниче не работате - обмена нет.
Я думаю, что это связано с опциями копиляции или с самим COM-портом. Если у кого была такая ситуация подскажите.
Есть ли разница в уровнях в COM-портах на разных компьютерах?

При разработке и отладке своего компонента
KlientServComConnect пришел к выводу, что работа с COM-портом не особо зависит от системы (когда корректно все сделано) и конкректного компьютера. Больше вопросов было с модемами - разные модемы по разному работают. В вашем случае, предполагаю, вы не инициализируете порт, а используете настройки порта по умолчанию. Параметры, от которых в первую очередь зависит работа порта - скорость порта, таймауты порта (которые кстати в настройках системы не предусмотрены), причем они взаимосвязаны.
Уровни логических сигналов на выходах портов разных машин естественно могут быть разными, но если они будут находиться в диапазоне -5...-12 В (для лог. единицы) и +5...+12 В(для лог. нуля) то все должно быть нормально, входы портов должны без проблем воспринимать сигналы -3...-12 В(лог.1) и +3..+12 В (лог.0), если есть сомнения, измерьте уровни осциллографом (или вольтметром)...
Go to the top of the page
 
+Quote Post
ASV
сообщение Dec 21 2005, 22:43
Сообщение #6


Участник
*

Группа: Новичок
Сообщений: 43
Регистрация: 28-01-05
Пользователь №: 2 279



Фух разобрался. Я просто не включил в проект юнит с классом для работы с ком портом. Все заработало покрайней мере на 15-ти машинах. Ужас как часто причины отказов кроются в мелочах.
Go to the top of the page
 
+Quote Post
upc2
сообщение Dec 22 2005, 05:41
Сообщение #7


Знающий
****

Группа: Свой
Сообщений: 506
Регистрация: 29-09-05
Из: Донецк
Пользователь №: 9 063



<<Фух разобрался. Я просто не включил в проект юнит с классом для работы с ком портом. Все заработало покрайней мере на 15-ти машинах. Ужас как часто причины отказов кроются в мелочах.>>

Тогда расскажите, как все это работало на вашей машине? Что - то я начинаю разочаровываться в
DELPHI
Go to the top of the page
 
+Quote Post
Old1
сообщение Dec 22 2005, 08:35
Сообщение #8


Знающий
****

Группа: Свой
Сообщений: 697
Регистрация: 26-07-05
Из: Могилев
Пользователь №: 7 095



Цитата(ASV @ Dec 22 2005, 02:43) *
Я просто не включил в проект юнит с классом для работы с ком портом. Все заработало ...

Так вы к порту обращались непосредственно через API, или использовали какой-то класс (или компонент)? Если через класс, то непонятно как проект удалось скомпилировать, когда юнит с классом не включен в проект sad.gif ...
Go to the top of the page
 
+Quote Post
shans
сообщение Jan 25 2006, 09:46
Сообщение #9


Участник
*

Группа: Свой
Сообщений: 26
Регистрация: 21-12-05
Пользователь №: 12 486



Цитата(upc2 @ Dec 22 2005, 08:41) *
<<Фух разобрался. Я просто не включил в проект юнит с классом для работы с ком портом. Все заработало покрайней мере на 15-ти машинах. Ужас как часто причины отказов кроются в мелочах.>>

Тогда расскажите, как все это работало на вашей машине? Что - то я начинаю разочаровываться в
DELPHI


Не совсем понятно, в чем именно разочарование smile.gif Если касательно работы с COM-портами под win32, то лучшее, что нашел в инете - статья Олега Титова (http://www.megalib.com/books/461/mastering/ports5.htm). Изложено толково и достаточно подробно, недостающую информацию по используемым API-функциям и структурам можно посмотреть в родном хелпе delphi.
Go to the top of the page
 
+Quote Post
BVU
сообщение Jan 25 2006, 10:31
Сообщение #10


Профессионал
*****

Группа: Свой
Сообщений: 1 301
Регистрация: 30-11-04
Из: Россия, Н.Новгород
Пользователь №: 1 264



В DELPHI, как и в Borland Builder и VC для генерации исполнительного кода есть настройки, что бы проект собирался и содержал в одном файле все необходимые библиотеки которые используются, если конечно они не системные. Exe-шник правда становиться большим, но будет работать на всех компах имеющих требуемую Windows среду.


--------------------
Не корысти ради, не в целях наживы, а во исполнение велений души!
Go to the top of the page
 
+Quote Post
michael34
сообщение Jan 25 2006, 11:09
Сообщение #11


Участник
*

Группа: Свой
Сообщений: 61
Регистрация: 24-01-06
Пользователь №: 13 541



Возможно, что вместе с дэлфой идут какие-то драйверы. попробуй на том компе установить дэлфу, и если всё заработает, то причина именно в этом
Go to the top of the page
 
+Quote Post
DSIoffe
сообщение Jan 26 2006, 07:54
Сообщение #12


Дима
*****

Группа: Свой
Сообщений: 1 683
Регистрация: 15-12-04
Из: Санкт-Петербург
Пользователь №: 1 486



Цитата
Возможно, что вместе с дэлфой идут какие-то драйверы

Драйверы для общения с периферией - не идут.


--------------------
© CОПЫРИГХТ: Дмитрий Иоффе, Советский Союз.
Приглашаю посмотреть: http://muradowa.spb.ru/ и http://www.drtata.narod.ru/index.html
Go to the top of the page
 
+Quote Post
shans
сообщение Jan 27 2006, 13:14
Сообщение #13


Участник
*

Группа: Свой
Сообщений: 26
Регистрация: 21-12-05
Пользователь №: 12 486



Цитата(michael34 @ Jan 25 2006, 14:09) *
Возможно, что вместе с дэлфой идут какие-то драйверы. попробуй на том компе установить дэлфу, и если всё заработает, то причина именно в этом


При работе с портами идет обращение к стандартному драйверу порта посредством вызова соответствующих функций API. Только в случае использования собственных нестандартных драйверов их придется переносить на каждую машину. Кстати, если кого интересует работа с LPT из delphi, могу найти ссылку на ресурс ( сейчас не вспомню). Там предлагается готовый шаблон и набор функций типа "если хотите установить эту ножку, сделайте то-то". Все на русском и с примерами использования.
Go to the top of the page
 
+Quote Post
upc2
сообщение Feb 1 2006, 08:30
Сообщение #14


Знающий
****

Группа: Свой
Сообщений: 506
Регистрация: 29-09-05
Из: Донецк
Пользователь №: 9 063



Подняли старую тему.Вероятно у меня плохая копия Delphi.Без подключенных компонентов или
юнитов у меня не получается управлять СОМ-портами.
Go to the top of the page
 
+Quote Post
Old1
сообщение Feb 1 2006, 08:51
Сообщение #15


Знающий
****

Группа: Свой
Сообщений: 697
Регистрация: 26-07-05
Из: Могилев
Пользователь №: 7 095



Цитата(shans @ Jan 27 2006, 17:14) *
Кстати, если кого интересует работа с LPT из delphi, могу найти ссылку на ресурс ( сейчас не вспомню). Там предлагается готовый шаблон и набор функций типа "если хотите установить эту ножку, сделайте то-то". Все на русском и с примерами использования.

Интересно было бы взглянуть...
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st June 2025 - 05:54
Рейтинг@Mail.ru


Страница сгенерированна за 0.01491 секунд с 7
ELECTRONIX ©2004-2016