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

Сохраняемые переменные в UltraLogik

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


Присоединился: 04 Ноябрь 2005
Категория: Kazakhstan
Online Status: Offline
Публикации: 16
Свойства публикации Свойства публикации   Ответить, цитируя автора - Vladimir_V Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Тема сообщения: Сохраняемые переменные в UltraLogik
    Опубликовано: 23 Июнь 2006 08:14
В программе на UltraLgik (v. 1.04.26) по внешним сигналам (нажатие кнопок в определенных положениях механизма) вычисляются значения переменных - производится настройка регулятора. Значения этих переменных необходимо сохранить по внешнему сигналу (нажатие кнопки) во Flash память (DiskOnChip).
При каждом запуске контроллера эти переменные используются в работе программы.
Как это сделать в UltraLgik?
Наверх
Vel_ Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 25 Апрель 2006
Категория: Russian Federation
Online Status: Offline
Публикации: 116
Свойства публикации Свойства публикации   Ответить, цитируя автора - Vel_ Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 23 Июнь 2006 09:46

Используй мой obj для сохранение в память под батарейкой (во Flash писать не обязательно и не рекомендуется)

http://forum.cta.ru/forum_posts.asp?TID=1743&PN=2

Vel
Наверх
Vladimir_V Смотреть выпадающим
Новичок
Новичок


Присоединился: 04 Ноябрь 2005
Категория: Kazakhstan
Online Status: Offline
Публикации: 16
Свойства публикации Свойства публикации   Ответить, цитируя автора - Vladimir_V Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 26 Июнь 2006 16:14

Увы, но в контроллере нет памяти под батарейкой! Писать можно только во Flash... Запись производится очень редко - по нажатию кнопки.

Подскажите, как сохранять переменные в DiscOnChip (Flash память).

В контроллере DiskOnChip видится как диск c: (на нем установлена DOS и исполняемая программа UltraLogik). Для этого в BIOS используется GPCS Function с параметрами:

GPCS0 Command ....... MEMR/W

GPCS0 Start Address .....0C8000  HEX

GPCS0 Size ..................8 KBYTE

 

Наверх
Vel_ Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 25 Апрель 2006
Категория: Russian Federation
Online Status: Offline
Публикации: 116
Свойства публикации Свойства публикации   Ответить, цитируя автора - Vel_ Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 27 Июнь 2006 05:06

Если необходимо писать во Flash то просто измени в программе адресс с начального

mov     ax, 3000h    ; в ах адресс начала области с питанием от батарейки

на свой адресс 0C8000h, а запись производи вызовом SAVEMEM по команде!

А какой контроллер используете (просто необходимо точно знать базовый адресс свободной области во Flash и ее размер).

Vel
Наверх
Vladimir_V Смотреть выпадающим
Новичок
Новичок


Присоединился: 04 Ноябрь 2005
Категория: Kazakhstan
Online Status: Offline
Публикации: 16
Свойства публикации Свойства публикации   Ответить, цитируя автора - Vladimir_V Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 27 Июнь 2006 09:04

Контроллер ICOP-6021 (M6117D System-on-Chip CPU 386SX-40MHz, System Memory Onboard 4 MB EDO RAM, Flash Disk Support: PQI DiskOnModule (16MB and above), M-System DiskOnChip 2000 (16 MB and above) и др.) http://f.ipc2u.ru/add/doc/476/ICOP-6021V11.PDF

Извините, я неверно назвал DiskOnChip Flash памятью. DiskOnChip (или DiskOnModule - устанавливается в IDE разъем) это не часть системной памяти, а Flash аналог накопителя на жестких магнитных дисках (на нем установлена и с него загружается  DOS 6.22 и записана исполняемая программа). Размер DiskOnChip 32 MB. Т.е. у DiskOnChip есть файловая система FAT, и с ним невозможно работать без операционной системы. Доступ к DiskOnChip осуществляется через окно размером 8кбайт в адресном пространстве BIOS с начальным адресом 0C8000H

Возможно для сохранения переменных (тип Float) DiskOnChip нужно рассматривать как жесткий диск с:

Подробнее о DiscOnChip можно прочитать в статье журнала СТА №1 за 99г

Наверх
Vel_ Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 25 Апрель 2006
Категория: Russian Federation
Online Status: Offline
Публикации: 116
Свойства публикации Свойства публикации   Ответить, цитируя автора - Vel_ Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 27 Июнь 2006 10:06

Увы, с TrueFFS и DiskOnChip не работал. Здесь видимо необходимо использовать их специфичные функции.

Vel
Наверх
Vladimir_V Смотреть выпадающим
Новичок
Новичок


Присоединился: 04 Ноябрь 2005
Категория: Kazakhstan
Online Status: Offline
Публикации: 16
Свойства публикации Свойства публикации   Ответить, цитируя автора - Vladimir_V Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 28 Июнь 2006 08:33

Похоже использовать функции TrueFFS будет слишком затруднительно.

Нельзя ли просто сохранять и восстанавливать область памяти между метками STOREDMEM и STOREDEND в файл на диске c: (DiskOnChip) средствами MS DOS? (Восстановление при загрузке, сохранение по команде - нажатию кнопки)

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

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

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