Современные технологии автоматизации» («СТА») —  журнал для квалифицированных специалистов по промышленной автоматизации Форум СТА — современные технологии автоматизации Домашняя страница
Домашняя страница форума CTA Домашняя страница форума CTA > II. АСУТП и SCADA > ПЛК и микроконтроллеры
  Активные темы Активные темы
  FAQ FAQ  Искать в форуме   Зарегистрироваться Зарегистрироваться  Вход в систему Вход в систему

Настройки COMпорта в ADAM-5510

 Ответить Ответить
Автор
Сообщение
QWERT Смотреть выпадающим
Участник
Участник


Присоединился: 10 Апрель 2009
Категория: Afghanistan
Online Status: Offline
Публикации: 55
Свойства публикации Свойства публикации   Ответить, цитируя автора - QWERT Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Тема сообщения: Настройки COMпорта в ADAM-5510
    Опубликовано: 09 Июнь 2010 09:14

Такая проблема: есть ADAM 5510 TCP контроллер, нужно по rs-232 интерфейсу общаться с другим устройством. Для этого по протоколу того оборудования нужно выставлять 8 бит данных с  четность пробел (space parity ). Пользуюсь библиотеками на Си под ДОС, там есть функции com_set_parity для одного только из компортов, но и в ней (этой функции)нельзя выставить space parity.  Забыли добавить разработчики Confused???

Как можно другим способом, минуя библиотеки, но так чтоб, не спалить етот PLC?? Кто знает подскажите плизBig smile

Наверх
KozlovKS Смотреть выпадающим
Prosoft.ru
Prosoft.ru


Присоединился: 21 Июнь 2003
Online Status: Offline
Публикации: 432
Свойства публикации Свойства публикации   Ответить, цитируя автора - KozlovKS Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 09 Июнь 2010 10:08
Если мучаете порты COM1 или COM2, то это стандартные порты PC с адресами 0x3F8/0x2F8. Можете сконфигурировать их непосредственно через регистры. Описание на м/с порта 16C550 можно найти "везде угодно".
Если мучаете порты COM3/COM4, то ищите описание на процессор Am186,
например ftp://ftp.prosoft.ru\pub\Hardware\Fastwel\CPx\CPU188\CPU188-5v3\Support\TechInfo,
который имеет встроенные последовательные порты, привязанные к COM3/COM4 по совсем другим адресам.
Наверх
QWERT Смотреть выпадающим
Участник
Участник


Присоединился: 10 Апрель 2009
Категория: Afghanistan
Online Status: Offline
Публикации: 55
Свойства публикации Свойства публикации   Ответить, цитируя автора - QWERT Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 09 Июнь 2010 10:16

  Все спасибо, разобралсяBig smile

Наверх
kuzulis Смотреть выпадающим
Участник
Участник


Присоединился: 04 Декабрь 2008
Категория: Russian Federation
Online Status: Offline
Публикации: 81
Свойства публикации Свойства публикации   Ответить, цитируя автора - kuzulis Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 09 Июнь 2010 15:21
Вообще то все паритеты есть, вы просто невнимательно читаете:

5510DRV.H


...
#define NO_PARITY   0x00    /* No parity */
#define ODD_PARITY  0x08    /* Odd parity */
#define EVEN_PARITY 0x18    /* Even parity */
#define ONE_PARITY  0x28    /* Parity bit = 1 */
#define ZERO_PARITY 0x38    /* Parity bit = 0 */
...

Наверх
QWERT Смотреть выпадающим
Участник
Участник


Присоединился: 10 Апрель 2009
Категория: Afghanistan
Online Status: Offline
Публикации: 55
Свойства публикации Свойства публикации   Ответить, цитируя автора - QWERT Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 14 Июнь 2010 09:42
Первоначально опубликовано kuzulis

Вообще то все паритеты есть, вы просто невнимательно читаете:

5510DRV.H


...
#define NO_PARITY   0x00    /* No parity */
#define ODD_PARITY  0x08    /* Odd parity */
#define EVEN_PARITY 0x18    /* Even parity */
#define ONE_PARITY  0x28    /* Parity bit = 1 */
#define ZERO_PARITY 0x38    /* Parity bit = 0 */
...

все правда,но цэ ж для MODBUS функции

 Modbus_COM_Init?Sleepy


Наверх
kuzulis Смотреть выпадающим
Участник
Участник


Присоединился: 04 Декабрь 2008
Категория: Russian Federation
Online Status: Offline
Публикации: 81
Свойства публикации Свойства публикации   Ответить, цитируя автора - kuzulis Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 15 Июнь 2010 08:44
Ну, если судить из хейдера: 5510DRV.H

CHAR SIO_SetState(UCHAR i_ucPort, ULONG i_ulBaudRate, UCHAR i_ucParity, UCHAR i_ucDataBits, UCHAR i_ucStopBits);
//Argument:
//      i_ulBaudRate    COM baudrate setting                           
//      i_ucParity      NO_PARITY(0x00), ODD_PARITY(0x08), EVEN_PARITY(0x18)                                   
//      i_ucDataBits    COM format setting                            
//                      Items: DATA5(0x00), DATA6(0x01), DATA7(0x02), DATA8(0x03)             
//      i_ucStopBits    COM stop bits setting                         
//                      Items: STOP1(0x00), STOP2(0x04)                           
//Return Value:
//      On success, return 0
//      On error, return -1

то создается впечатление что они просто забыли дописать для i_ucParity и другие типы паритета. А может им было лень. Ща проверю.
Наверх
kuzulis Смотреть выпадающим
Участник
Участник


Присоединился: 04 Декабрь 2008
Категория: Russian Federation
Online Status: Offline
Публикации: 81
Свойства публикации Свойства публикации   Ответить, цитируя автора - kuzulis Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 15 Июнь 2010 08:49
Упс.. нет, не проверю, т.к. в Modsim32 нету выбора паритетов Mark/Space. Проверьте сами и отпишитесь о результате!
Наверх
QWERT Смотреть выпадающим
Участник
Участник


Присоединился: 10 Апрель 2009
Категория: Afghanistan
Online Status: Offline
Публикации: 55
Свойства публикации Свойства публикации   Ответить, цитируя автора - QWERT Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 16 Июнь 2010 10:52
Первоначально опубликовано kuzulis

Ну, если судить из хейдера: 5510DRV.H

CHAR SIO_SetState(UCHAR i_ucPort, ULONG i_ulBaudRate, UCHAR i_ucParity, UCHAR i_ucDataBits, UCHAR i_ucStopBits);
//Argument:
//      i_ulBaudRate    COM baudrate setting                           
//      i_ucParity      NO_PARITY(0x00), ODD_PARITY(0x08), EVEN_PARITY(0x18)                                   
//      i_ucDataBits    COM format setting                            
//                      Items: DATA5(0x00), DATA6(0x01), DATA7(0x02), DATA8(0x03)             
//      i_ucStopBits    COM stop bits setting                         
//                      Items: STOP1(0x00), STOP2(0x04)                           
//Return Value:
//      On success, return 0
//      On error, return -1
 

эээ 

в моем 5510drv.H нет такой функции( SIO_SetState) наверное старый хедерEmbarrassed




Наверх
 Ответить Ответить

Переход на форум Права доступа на форуме Смотреть выпадающим

Bulletin Board Software by Web Wiz Forums® version 9.64
Powered by Web Wiz Forums Free Express Edition
Copyright ©2001-2009 Web Wiz