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

Собственная библиотека для ADAM 5510

 Ответить Ответить Страница  <1234>
Автор
Сообщение
kuzulis Смотреть выпадающим
Участник
Участник


Присоединился: 04 Декабрь 2008
Категория: Russian Federation
Online Status: Offline
Публикации: 81
Свойства публикации Свойства публикации   Ответить, цитируя автора - kuzulis Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Тема сообщения: Собственная библиотека для ADAM 5510
    Опубликовано: 19 Декабрь 2011 15:44
На Google Code выложили наработки, которые могли.

См эту тему (в конец).

Конечно, нужно еще привести в порядок, разбить отдельные модули по директориям и т.п. и т.д.

Теперь ваша очередь делиться. :)
Наверх
Semelenov Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 15 Октябрь 2003
Категория: Belarus
Online Status: Offline
Публикации: 141
Свойства публикации Свойства публикации   Ответить, цитируя автора - Semelenov Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 19 Декабрь 2011 20:26
Для Poison'a:
На этот код я уже забил болт.
Я работаю с Вашим, переведённым на Pascal.

Если ориентироваться на Ваш код:
http://code.google.com/p/lib-adam-5000/source/detail?r=2
строки 656-663
то, выше Вы все данные закидываете в буфер, а затем ещё 1 байт принудительно передаёте, хотя по идее нужно выставить флаг передачи, чтобы ИСР начал работать.
Наверх
kuzulis Смотреть выпадающим
Участник
Участник


Присоединился: 04 Декабрь 2008
Категория: Russian Federation
Online Status: Offline
Публикации: 81
Свойства публикации Свойства публикации   Ответить, цитируя автора - kuzulis Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 19 Декабрь 2011 21:37
2 Semelenov,

а в каком режиме открывал порт? в блокирующем?

В блокирующем работа не тестировалась,
тестировалась только с флагом UNBLOCK_MODE (если не изменяет память).
И все работало как часы. Хотя, надо проверять.

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

Присоединился: 02 Декабрь 2010
Online Status: Offline
Публикации: 68
Свойства публикации Свойства публикации   Ответить, цитируя автора - poison Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 20 Декабрь 2011 08:44
Первоначально опубликовано Semelenov


Вы все данные закидываете в буфер, а затем ещё 1 байт принудительно передаёте, хотя по идее нужно выставить флаг передачи, чтобы ИСР начал работать.


когда я разберал библиотеку Advantech то там было сделано именно так, только + был баг в этой части кода
Наверх
Воробьев Владим Смотреть выпадающим
Новичок
Новичок


Присоединился: 03 Июль 2003
Online Status: Offline
Публикации: 7
Свойства публикации Свойства публикации   Ответить, цитируя автора - Воробьев Владим Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 20 Декабрь 2011 08:48
Первоначально опубликовано Semelenov


Я работаю с Вашим, переведённым на Pascal.
Вы обещали выложить перевод на Pascal.
Актуально.

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

Присоединился: 02 Декабрь 2010
Online Status: Offline
Публикации: 68
Свойства публикации Свойства публикации   Ответить, цитируя автора - poison Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 20 Декабрь 2011 09:00
Первоначально опубликовано kuzulis



В блокирующем работа не тестировалась,
тестировалась только с флагом UNBLOCK_MODE (если не изменяет память).
И все работало как часы. Хотя, надо проверять.



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

вспомни какую ты преследовал идею когда перенес режим в структуру порта? зачем блокирующей режим при передачи?
Наверх
Semelenov Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 15 Октябрь 2003
Категория: Belarus
Online Status: Offline
Публикации: 141
Свойства публикации Свойства публикации   Ответить, цитируя автора - Semelenov Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 20 Декабрь 2011 09:04
к Воробьев Владим
Перевожу и тестирую - выложу, как только будет всё ПОЛНОСТЬЮ проверено.
Наверх
kuzulis Смотреть выпадающим
Участник
Участник


Присоединился: 04 Декабрь 2008
Категория: Russian Federation
Online Status: Offline
Публикации: 81
Свойства публикации Свойства публикации   Ответить, цитируя автора - kuzulis Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 20 Декабрь 2011 10:55
>>вспомни какую ты преследовал идею когда перенес режим в структуру порта? зачем блокирующей режим при передачи?

ХЗ. Типа для тех кто захочет дождаться окончания посылки этот режим в самый раз.
Хотя да - он в принципе не нужен.

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


Присоединился: 04 Декабрь 2008
Категория: Russian Federation
Online Status: Offline
Публикации: 81
Свойства публикации Свойства публикации   Ответить, цитируя автора - kuzulis Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 20 Декабрь 2011 13:57
Кстати. Я изменил структуру проекта и "облагородил" его.

Можете развивать дальше.
Наверх
Semelenov Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 15 Октябрь 2003
Категория: Belarus
Online Status: Offline
Публикации: 141
Свойства публикации Свойства публикации   Ответить, цитируя автора - Semelenov Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 20 Декабрь 2011 14:44
При включении Watchdog'a - рестарт Адама...
Вероятно что-то не то с обработчиками прерываний...
Рою дальше.

Наверх
 Ответить Ответить Страница  <1234>

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

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