Segnetics

Вернуться   Segnetics > Форум Segnetics > Вопросы о SMH2010

Вопросы о SMH2010 Работа и применение контроллеров SMH2010A, SMH2010B и SMH2010C.

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
Старый 09.03.2006, 13:39   #1
zem21
Новичок
 
Регистрация: Feb 2006
Адрес: ул.Калибровая 8а, Запорожье, Украина, 69008
Сообщения: 6
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Программирование на языке С++?

На сайте есть раздел посвященный программированию на языке С++ (http://dl.segnetics.com/PRODUCTS/SMH2010/C/), но пока он несколько пустоват.
Вопросы:
1. Написание ПО на языке С++ это вместо ядра SMLogix или как расширение его возможностей (SMLogix )?
2. Это уже рализовано или только планируется?
3. Возможности и ограничения?

Последний раз редактировалось Arsie, 05.08.2013 в 18:11
zem21 вне форума   Ответить с цитированием
Старый 09.03.2006, 14:53   #2
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 016
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Программирование на языке С++?

Верно подмечено, слегка пустоват

1) вместо ядра SMLogix
2) есть некоторая базовая система ввода-вывода (BIOS), формализующая работу конкретных устройств контроллера и работу протокола modbus (только slave). Поставляется на диске поддержки с каждым контроллером. Можно спросить и по адресу support@segnetics.com
3) обычное низкоуровневое программирование стандартными средствами C++ для Atmel AVR. Ограничение одно: наша фирма не развивает данное направление, даже биос существует только потому, что его использует ядро smlogix.

Последний раз редактировалось Arsie, 24.01.2008 в 11:01
Arsie сейчас на форуме   Ответить с цитированием
Старый 24.04.2006, 11:36   #3
Shaman
Новичок
 
Регистрация: Apr 2006
Сообщения: 6
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Unhappy В дисплее WinStar черные квадратики

Добрый день!
На недавно купленном новом контроллере C2010C-1112-001-5
(серийный номер 107410) стоит дисплей WinStar WH2004A-YGH-CT.
На старых - такой же дисплей, но в конце стоит -CP.
При этом на новом дисплее после команды C++ clrscr(); выдает черные квадратики (код 0xFF), что не хорошо, а на старом - пробелы (0x20), нормально. Какая кодировка подразумевается под -CT?
Я старый дисплей поставил.
Алексей Соломеин, программист.
Shaman вне форума   Ответить с цитированием
Старый 24.04.2006, 16:49   #4
Overheat
Guest
 
Сообщения: n/a
По умолчанию Ответ: В дисплее WinStar черные квадратики

Дело в том, что WinStart сменили контроллер в ЖКИ. А в новом контроллере изменились временные характеристики. В частности Enable cycle time стал 1200нс вместо 400нс. Но на деле оказалось, что сигнал Enable необходимо держать более 5мкс, на всякий случай мы теперь ставим 20мкс.

Интересно, что величина данной задержки влияет только на команду clrscr(), остальные команды выполняются нормально. Так что исходный текст подпрограммы, которая отправляет команду на ЖКИ выглядит следующим образом.

__monitor void DisplayCtrlWrite(unsigned char byte) {

ResetBitsPort(CTRL2_PORT,MASK_DRS); // Установить состояние линии DRS - 0
WritePort(IODATA_DIR,0xFF); // Направление на выдачу
WritePort(IODATA_PORT,byte); // Данные на выдачу
ResetBitsPort(CTRL2_PORT,MASK_DEN); // Установить состояние линии DEN - 0
if(byte == 1) _delay_mks(20);
SetBitsPort(CTRL2_PORT,MASK_DEN |MASK_DRS); // Установить DRS - 1 DEN - 1
SetBitsPort(CTRL2_PORT,MASK_DRS); // Установить состояние линии DRS - 1
WritePort(IODATA_DIR,0x00); // Направление на прием
return;
}
  Ответить с цитированием
Старый 25.04.2006, 08:23   #5
Shaman
Новичок
 
Регистрация: Apr 2006
Сообщения: 6
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: В дисплее WinStar черные квадратики

Большое спасибо!
Shaman вне форума   Ответить с цитированием
Старый 27.04.2006, 13:05   #6
Shaman
Новичок
 
Регистрация: Apr 2006
Сообщения: 6
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: В дисплее WinStar черные квадратики

У меня с новым дисплеем это работает
inline void DisplayCtrlWrite(unsigned char byte) {
unsigned char sreg;

sreg = SREG; __disable_interrupt();
ResetBitsPort(CTRL2_PORT,MASK_DRS); // Установить состояние линии DRS - 0
WritePort(IODATA_DIR,0xFF); // Направление на выдачу
WritePort(IODATA_PORT,byte); // Данные на выдачу
ResetBitsPort(CTRL2_PORT,MASK_DEN); // Установить состояние линии DEN - 0
if(byte == 1) _delay_mks(50);

SetBitsPort(CTRL2_PORT,MASK_DEN |MASK_DRS); // Установить DRS - 1 DEN - 1
WritePort(IODATA_DIR,0x00); // Направление на прием
SREG = sreg;
return;
}
То есть я
1) убрал строку SetBitsPort(CTRL2_PORT,MASK_DRS); // Установить состояние линии DRS - 1
2) поставил 50 мкс (с 20 не работает - иногда на пустых позициях загораются случайные одинаковые символы после очистки экрана)
3) добавил запрет прерываний (как это было написано в исходной функции)
Shaman вне форума   Ответить с цитированием
Старый 30.04.2006, 19:49   #7
AlexG
Senior Member
 
Регистрация: Jan 2006
Сообщения: 172
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Программирование на языке С++?

Когда-то мы взяли ваш bios за основу, Modbus master там был. bios пришлось довольно долго доводить до ума, коммуникационная часть была наиболее проблемной из-за динамического выделения памяти.
AlexG вне форума   Ответить с цитированием
Старый 06.07.2007, 17:34   #8
skiner81
Новичок
 
Регистрация: Jul 2007
Сообщения: 1
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Програмирование на С++

На сайте Сегнетикса видел ссылочку про возможность их програмирования на С++. Но ссылочка не работает.... обломс. Так имел с ними дело кто через С++ и как это делаицца. Заранее спасибо всем
skiner81 вне форума   Ответить с цитированием
Старый 07.07.2007, 09:51   #9
AlexG
Senior Member
 
Регистрация: Jan 2006
Сообщения: 172
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Програмирование на С++

Программирование на C++ делается как обычно для AVR. Берете подходящий компилятор, программатор и программируете. Компилятор использовать лучше IAR EWAVR, но можно и какую-нибудь разновидность GCC. У Сегнетикса были примеры библиотек, их описание и описание аппаратной части. Но на сайте я этого не видел.
AlexG вне форума   Ответить с цитированием
Старый 18.05.2009, 09:06   #10
dima
Senior Member
 
Регистрация: Jun 2008
Адрес: солнечный Алтай
Сообщения: 161
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Программирование на языке С++?

Может, кто-нибудь подскажет, какая функция в С++ извлекает квадратный корень. Еще нужны sin и cos
dima вне форума   Ответить с цитированием
Старый 18.05.2009, 10:16   #11
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 016
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Программирование на языке С++?

Цитата
Сообщение от dima
Может, кто-нибудь подскажет, какая функция в С++ извлекает квадратный корень. Еще нужны sin и cos
Найти в Рэмблере


Остальное по аналогии.



.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie сейчас на форуме   Ответить с цитированием
Старый 29.06.2009, 17:41   #12
smersh
Новичок
 
Регистрация: Jun 2009
Сообщения: 13
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Программирование на языке С++?

Всем добрый день.
Хочу использовать SMH2010 для управления небольшим станком.
Нужно будет управлять шаговым двигателем (через специальный модуль), посредством передачи импульсов. Частота до 10 КГц.
Реально ли реализовать подобное на SMH, используя C?
Какова максимальная выходная частота с дискретных выходов, и скорость измерения АЦП?
smersh вне форума   Ответить с цитированием
Старый 29.06.2009, 20:21   #13
AlexG
Senior Member
 
Регистрация: Jan 2006
Сообщения: 172
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Программирование на языке С++?

Вполне реально. Подробности смотрите в документации на ATmega128 и схеме SMH, которая выложена где-то тут на форуме.
AlexG вне форума   Ответить с цитированием
Старый 29.06.2009, 22:32   #14
smersh
Новичок
 
Регистрация: Jun 2009
Сообщения: 13
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Программирование на языке С++?

Спасибо за ответ, но хотелось бы еще услышать ответ от официальных представителей.

И еще вопросы. Для загрузки программы в контроллер, я так понимаю нужно еще приобретать ваш программатор?
И какой лучше использовать компилятор? Видел что IAR Embedden, но довольно много его версий, можно получить ссылочку на нужный?
smersh вне форума   Ответить с цитированием
Старый 30.06.2009, 06:39   #15
AlexG
Senior Member
 
Регистрация: Jan 2006
Сообщения: 172
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Программирование на языке С++?

1. Можно использовать любой ISP (внутрисхемный) программатор для AVR, только спаять переходник на нестандартный разъем. Программатор легко изготовить самостоятельно.
2. Подойдет практически любая версия IAR для AVR, новые версии как правило лучше. Примеры исходников были рассчитаны на IAR EWAVR 2.28 и при переносе на свежую версию компилятора потребуют некоторой правки. Можно найти еще десяток других компиляторов C, но из всего это смысл связываться есть только с IAR или GCC (WINAVR). С++ есть только в IAR и GCC.
AlexG вне форума   Ответить с цитированием
Старый 30.06.2009, 15:14   #16
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 016
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Программирование на языке С++?

Цитата
Сообщение от smersh
Спасибо за ответ, но хотелось бы еще услышать ответ от официальных представителей.
Предельное быстродействие выходных схем SMH2010 не проверялось, но точно известно, что эта величина более 45 кгц.



Цитата
Сообщение от smersh
И еще вопросы. Для загрузки программы в контроллер, я так понимаю нужно еще приобретать ваш программатор?
Можно приобрести, можно собрать любой программатор, умеющий последовательный ISP для семейства AtmelAVR. Схем в интернете много.



Цитата
Сообщение от smersh
И какой лучше использовать компилятор? Видел что IAR Embedden, но довольно много его версий, можно получить ссылочку на нужный
Ссылку дать не могу, т.к. IAR - коммерческий продукт со стоимостью лицензии несколько тысяч долларов.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie сейчас на форуме   Ответить с цитированием
Старый 01.07.2009, 08:35   #17
AlexG
Senior Member
 
Регистрация: Jan 2006
Сообщения: 172
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Программирование на языке С++?

Цитата:
Сообщение от Arsie
Ссылку дать не могу, т.к. IAR - коммерческий продукт со стоимостью лицензии несколько тысяч долларов.
У IAR есть ограниченные версии, которые можно использовать бесплатно ничего не нарушая: KickStart с ограничением в 4 килобайта кода и 30-ти дневная Evalution.
AlexG вне форума   Ответить с цитированием
Старый 01.07.2009, 10:08   #18
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 016
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Программирование на языке С++?

Цитата
Сообщение от AlexG
У IAR есть ограниченные версии, которые можно использовать бесплатно ничего не нарушая: KickStart с ограничением в 4 килобайта кода и 30-ти дневная Evalution.
Вы прекрасно понимаете, что кикстартом биос не скомпилировать, а на эвалуэйшене программу не написать.

Тем более эти ссылки искать не нужно - они есть на сайте производителя и легко находятся по запросу "iar" в любом поисковике.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie сейчас на форуме   Ответить с цитированием
Старый 01.07.2009, 13:57   #19
smersh
Новичок
 
Регистрация: Jun 2009
Сообщения: 13
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Программирование на языке С++?

Да все нормально.
Нашел я новую версию IAR
smersh вне форума   Ответить с цитированием
Старый 01.07.2009, 15:39   #20
AlexG
Senior Member
 
Регистрация: Jan 2006
Сообщения: 172
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Программирование на языке С++?

Биос и остальные примеры программных модулей излишне тяжеловесны, если отказаться от них то и на кикстарте можно сделать немало. Эвалюшн практически ничем не отличается от полной версии. Вопросы начнутся если проект не завершить за месяц но там возможны варианты..
AlexG вне форума   Ответить с цитированием
Старый 03.04.2013, 18:08   #21
Radix
Новичок
 
Регистрация: Apr 2013
Сообщения: 1
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Thumbs up Ответ: Программирование на языке С++?

Цитата:
Сообщение от Arsie Посмотреть сообщение
Вы изначально написали в неправильной теме и неправильном разделе. Тему придётся чистить.

Какие у вас проблемы с запуском примера?
Продолжим здесь... пытался реализовать функционал на SMLogix, теперь уперся в ограниченность реализации сетевых входов-выходов. Но реализацию продолжаю делать, пока выхожу на разработчика ПО мастер-устройства, попрошу временно сбрасывать взводимые COILS через пары секунд после записи лог.1

Теперь попутно пробую собрать тестовый пример MASTER в IAR 6.3.3.1990 EWAVR

25 ошибок:

[...]

ранее на IAR не писал, работал только с HEW4. В этой попытке проект новый не создавал, открыл из среды IAR файл проекта, удалил файлы из проекта и внес их снова, т.к. ссылки на файлы были абсолютными

Последний раз редактировалось Arsie, 04.04.2013 в 11:47
Radix вне форума   Ответить с цитированием
Старый 04.04.2013, 11:38   #22
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 016
Благодарил(а): 15 раз(а)
Поблагодарили: 655 раз(а) в 599 сообщениях
По умолчанию Ответ: Программирование на языке С++?

Цитата
Сообщение от Radix Посмотреть сообщение
Продолжим здесь... пытался реализовать функционал на SMLogix, теперь уперся в ограниченность реализации сетевых входов-выходов. Но реализацию продолжаю делать, пока выхожу на разработчика ПО мастер-устройства, попрошу временно сбрасывать взводимые COILS через пары секунд после записи лог.1

Теперь попутно пробую собрать тестовый пример MASTER в IAR 6.3.3.1990 EWAVR
Несколькими сообщениями выше: http://forum.segnetics.com/showpost....5&postcount=15

Мы не используем IAR 6.3.3.1990 EWAVR. Я вообще удивлён вашим вопросам, т.к. проблема миграции проектов между версиями есть абсолютно в любых средах разработки абсолютно на всех платформах. И тем более при перескоке аж со 2 на 6 версию, которые разделены во времени более чем десятком лет...

Ваши сообщения подредактировал.


__________________
Программа делает то что написал программист, а не то что он хотел.

Добро всегда побеждает зло. Кто победил - тот и добрый.

Последний раз редактировалось Arsie, 04.04.2013 в 11:49
Arsie сейчас на форуме   Ответить с цитированием
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать свои сообщения

BB code is Вкл.
[IMG] код Вкл.
HTML код Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Программирование Trim 5 АЗЫ white.army Вопросы о Trim5 48 16.07.2020 23:05
Удалённое программирование и отладка 2Gi LordN SMLogix 9 11.03.2019 09:25
Программирование Trim5 и SMH4 на С++ без использования toolchain Arsie Библиотека 2 19.11.2018 23:18
Программирование через интернет canada Вопросы о SMH-2G(i) 13 11.04.2014 18:56
Программирование структуры дисплея Бен Ган SMLogix 15 17.06.2010 15:44


Часовой пояс GMT +4, время: 13:03.


Версия vBulletin: 3.8.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Segnetics 2005 - 2023