Сохраняемые переменные в UltraLogik |
Ответить |
Автор | |
Новичок Присоединился: 04 Ноябрь 2005 Категория: Kazakhstan Online Status: Offline Публикации: 16 |
Опубликовано: 23 Июнь 2006 08:14 |
В программе на UltraLgik (v. 1.04.26) по внешним сигналам (нажатие кнопок в определенных положениях механизма) вычисляются значения переменных - производится настройка регулятора. Значения этих переменных необходимо сохранить по внешнему сигналу (нажатие кнопки) во Flash память (DiskOnChip).
При каждом запуске контроллера эти переменные используются в работе программы. Как это сделать в UltraLgik? |
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Действительный член Присоединился: 25 Апрель 2006 Категория: Russian Federation Online Status: Offline Публикации: 116 |
|
Используй мой obj для сохранение в память под батарейкой (во Flash писать не обязательно и не рекомендуется) |
|
Vel
|
|
Новичок Присоединился: 04 Ноябрь 2005 Категория: Kazakhstan Online Status: Offline Публикации: 16 |
|
Увы, но в контроллере нет памяти под батарейкой! Писать можно только во Flash... Запись производится очень редко - по нажатию кнопки. Подскажите, как сохранять переменные в DiscOnChip (Flash память). В контроллере DiskOnChip видится как диск c: (на нем установлена DOS и исполняемая программа UltraLogik). Для этого в BIOS используется GPCS Function с параметрами: GPCS0 Command ....... MEMR/W GPCS0 Start Address .....0C8000 HEX GPCS0 Size ..................8 KBYTE
|
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Действительный член Присоединился: 25 Апрель 2006 Категория: Russian Federation Online Status: Offline Публикации: 116 |
|
Если необходимо писать во Flash то просто измени в программе адресс с начального mov ax, 3000h ; в ах адресс начала области с питанием от батарейки на свой адресс 0C8000h, а запись производи вызовом SAVEMEM по команде! А какой контроллер используете (просто необходимо точно знать базовый адресс свободной области во Flash и ее размер). |
|
Vel
|
|
Новичок Присоединился: 04 Ноябрь 2005 Категория: Kazakhstan Online Status: Offline Публикации: 16 |
|
Контроллер 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г |
|
Профили участников
Послать частное письмо
Поиск публикаций участников
Посетить домашнюю страницу участника
Добавить в список приятелей
Действительный член Присоединился: 25 Апрель 2006 Категория: Russian Federation Online Status: Offline Публикации: 116 |
|
Увы, с TrueFFS и DiskOnChip не работал. Здесь видимо необходимо использовать их специфичные функции. |
|
Vel
|
|
Новичок Присоединился: 04 Ноябрь 2005 Категория: Kazakhstan Online Status: Offline Публикации: 16 |
|
Похоже использовать функции TrueFFS будет слишком затруднительно. Нельзя ли просто сохранять и восстанавливать область памяти между метками STOREDMEM и STOREDEND в файл на диске c: (DiskOnChip) средствами MS DOS? (Восстановление при загрузке, сохранение по команде - нажатию кнопки) |
|
Ответить |
Переход на форум | Права доступа на форуме Вы не можете публиковать новые темы в этом форуме Вы не можете отвечать на сообщения в этом форуме Вы не можете удалять Ваши сообщения на этом форуме Вы не можете редактировать Ваши сообщения на этом форуме Вы не можете создавать голосования на этом форуме Вы не можете выражать своё мнение в голосованиях на этом форуме |