PDA

Просмотр полной версии : Ячейка памяти



Project M
24.05.2017, 09:32
Господа инженеры, программисты, и просто залётные!

Есть задача с которой сам не справляюсь! :confused: :(

Постановка:
Необходим макрос - ячейка памяти на 30 адресов (значений), для сохранения идентичных параметров разных режимов работы программы пользователя.
Загвоздка в том, что параметры должны редактироваться через меню ПР200, а в программу данные поступать в соответствии с режимом, т.е. с определённого адреса.

Итого: Макрос должен сохранять отредактированные значения через меню ПР200, а в программу выдавать сохранённые значения в соответствии с адресом обращения.

PS Создавать свой экран редактирования для каждого параметра - не предлагать! ( Кол-во групп 30 по 16 параметров в каждом.= 30 ~ 480 экранов )

Ревака Юрий
24.05.2017, 10:27
Господа инженеры, программисты, и просто залётные!

Есть задача с которой сам не справляюсь! :confused: :(

Постановка:
Необходим макрос - ячейка памяти на 30 адресов (значений), для сохранения идентичных параметров разных режимов работы программы пользователя.
Загвоздка в том, что параметры должны редактироваться через меню ПР200, а в программу данные поступать в соответствии с режимом, т.е. с определённого адреса.

Итого: Макрос должен сохранять отредактированные значения через меню ПР200, а в программу выдавать сохранённые значения в соответствии с адресом обращения.

PS Создавать свой экран редактирования для каждого параметра - не предлагать! ( Кол-во групп 30 по 16 параметров в каждом.= 30 ~ 480 экранов )

Добрый день, если только ПР, то посмотрите в сторону макросов EEPROM или ROM, а вообще для такого количества может лучше панель присоединить к проекту. Да, если все переменные энергонезависимые, места не хватит в ПР200.

Алексей Геннадьевич
24.05.2017, 11:01
Добрый день, если только ПР, то посмотрите в сторону макросов EEPROM или ROM,
http://www.owen.ru/forum/showthread.php?t=23201&page=5&p=211086#post211086

Да, если все переменные энергонезависимые, места не хватит в ПР200.
Больше 1000 не делать в формате INT, тогда хватит. Насчёт ROM - не скажу... Много, в общем.

AI!
24.05.2017, 11:39
макрос, RAM - 31 ячейка по 5 бит, т.е. в каждой можно хранить числа от 0 до 31

PS если вход с выходом каждого PUTBIT соеденить через энергонезависимую ячейку, будет не RAM, ППЗУ

Project M
24.05.2017, 11:59
Юрий, Александр Генадьевич, моё почтение и благодарности!

Скажите связка MUL и ADD более предпочтительна чем SEL? почему?

Алексей Геннадьевич
24.05.2017, 12:38
Юрий, Александр Генадьевич, моё почтение и благодарности!

Скажите связка MUL и ADD более предпочтительна чем SEL? почему?
Мне удобнее.
А так- без разницы.

Сергей0308
25.05.2017, 06:47
Мой вариант:

31357

31359

Вообще то стек делал для целочисленных значений, но само-собой получилась матрица памяти на 32 ячейки по 32 бита, всего 1024 бита! Нет команды записи, при смене адреса ячейки в преведущей сохраняется значение на момент смены ячейки, короче добавил энергонезависимости, изначально не было(создавалась для целей где была не нужна) и стала пригодна для ваших целей! Можно добавить специальную команду записи, если кому так проще, но боюсь такой сложной как у Алексея Геннадиевича всё равно не получится(не в обиду ему сказано), просто не хватит способностей так усложнить! Да сдвиг вправо-влево на ячейку можно не использовать за ненадобностью или убрать, ну , как-то так!

Project M
25.05.2017, 09:21
Сергей, благодарю.
Ваши макросы натолкнули меня на интересную идею.

Алексей Геннадьевич
25.05.2017, 13:10
Можно добавить специальную команду записи, если кому так проще, но боюсь такой сложной как у Алексея Геннадиевича всё равно не получится(не в обиду ему сказано), просто не хватит способностей так усложнить!
Для вас асинхронный режим чтения/записи слишком сложно?

Сергей, благодарю.
Ваши макросы натолкнули меня на интересную идею.
Вы там со стеком поосторожнее...
При сбоях программы использующей стек найти причину затруднительно.

AI!
25.05.2017, 16:12
макрос RAM - на этот раз 32 ячейки по 5 бит

PS сразу сделал энергонезависимые ячейки, т.е. фактически получилось ППЗУ

rovki
25.05.2017, 16:28
Это не ППЗУ ,в нем содержимое никогда не меняется во время работы ,как задал в свойствах,а это еером -пока включено меняем ,выключился сохраняем .

AI!
25.05.2017, 19:37
Это не ППЗУ ,в нем содержимое никогда не меняется во время работы ,как задал в свойствах,а это еером -пока включено меняем ,выключился сохраняем .EEPROM (https://ru.wikipedia.org/wiki/EEPROM) — (англ. electrically erasable programmable read-only memory, электрически стираемое перепрограммируемое ПЗУ)
т.е. ничто иное, как ППЗУ.

PS русскоязычные аббревиатуры, из книг которые я читал до 95г:
ОЗУ - память которая стирается при выключении питания
ПЗУ - память которая записывается только 1 раз, и сохраняется после выключения
ППЗУ - память которую можно менять многократно, и которая сохраняется после выключения.

EEPROM - это частный случай ППЗУ

rovki
25.05.2017, 21:49
Нет .ППЗУ электрически не стирается ,а ультрофиолетом.
В ПЗУ выжигаются связи и они не восстанавливаются .В ППЗУ связи (значения в ячейках стираются ультрофиолетом) -это Перепрограммируемое ПЗУ.

AI!
26.05.2017, 13:19
Нет .ППЗУ электрически не стирается ,а ультрофиолетом.
В ПЗУ выжигаются связи и они не восстанавливаются .В ППЗУ связи (значения в ячейках стираются ультрофиолетом) -это Перепрограммируемое ПЗУ.ППЗУ - Полупостоянное запоминающее устройство (http://www.ngpedia.ru/id554836p1.html)
именно так было в конце 80, начале 90х

(для примера, почитайте инструкцию к МК-52, в котором можно было сохранять программы в энергонезависимую память, там используется термин именно ППЗУ, во вложении это середина второй части)

а Перепрограммируемое Постоянное ЗУ - этот термин начал встречаться значительно позже...

Eugene.A
26.05.2017, 13:46
ППЗУ - Полупостоянное запоминающее устройство (http://www.ngpedia.ru/id554836p1.html)
именно так было в конце 80, начале 90х

(для примера, почитайте инструкцию к МК-52, в котором можно было сохранять программы в энергонезависимую память, там используется термин именно ППЗУ, во вложении это середина второй части)

а Перепрограммируемое Постоянное ЗУ - этот термин начал встречаться значительно позже...
Не знаю, как там в нефти и газе, да и в калькуляторах тоже, но я такую интерпретацию вижу первый раз. Полупостоянное, недопеременное, колхозная какая-то терминология.
Если что - собственноручно спаял РК-86, ZX-Spectrum, контроллер дисковода к «Специалист» из журнал «Моделист-Конструктор». Все ППЗУ прошивал самопальным программатором, стирал кварцевой трубкой от ДРЛ-250.
Кстати, о калькуляторах - вы полагаете, кто-то будет это читать? Ради чего?

rovki
26.05.2017, 14:44
Сначала появились ПЗУ-постоянное запоминающее устройство .Потом ППЗУ ...с ультрафиолетом .
ROM(ПЗУ) - только чтение (рид онли мемори),PROM=ППЗУ -только чтение ,но с возможностью специальным образом перепрограммировать (программировать -П)не большое число раз.
Полупостоянного -такого термина не существует ,поверьте старому электронщику ,который использовал ППЗУ коробками .

AI!
26.05.2017, 15:15
Господа, предлагаю закрыть полемику. В любом случае каждый останется при своём мнении.
Для себя я выяснил, что та терминология, которой учили меня книги и учебники (для ВУЗов начал 90х) из моей домашней библиотеки, может не совпадать с терминологией принятой сейчас.

И придётся использовать чуждую мне терминологию, просто что бы меня правильно понимали....


PPS и всё таки она вертится!

rovki
26.05.2017, 15:48
Полупостоянному не учили ни тогда не сейчас :p

AI!
26.05.2017, 20:01
загугли, что-ль

rovki
26.05.2017, 20:34
загугли, что-ль
Трудности перевода ,не более(вульгарный перевод) .Существовала в некоторых вузах (школах),но к практической жизни не имела отношение,ну может за некоторым исключением.Мы же знаем как пишут инструкции ,там и не такое можно найти .
вот тут подробно классификация и перевод.https://ru.wikipedia.org/wiki/%D0%9F%D0%BE%D1%81%D1%82%D0%BE%D1%8F%D0%BD%D0%BD%D 0%BE%D0%B5_%D0%B7%D0%B0%D0%BF%D0%BE%D0%BC%D0%B8%D0 %BD%D0%B0%D1%8E%D1%89%D0%B5%D0%B5_%D1%83%D1%81%D1% 82%D1%80%D0%BE%D0%B9%D1%81%D1%82%D0%B2%D0%BE
http://studopedia.org/8-38877.html

Сергей0308
21.06.2017, 02:00
Сергей, благодарю.
Ваши макросы натолкнули меня на интересную идею.

Вот чисто матрица памяти, 32 ячейки(0-31) по 32 бита(0-31) с достаточно широкими возможностями, имеется 2 независимых выхода, что может быть удобно, например один используется непосредственно в алгоритме работы программы, а другой для просмотра значений на экране, или можно найти разницу показаний за сутки(какой-то интервал времени) без промежуточных переменных, непосредственно с первого и второго выходов, добавил специальный вход записи, чтобы как у людей было, имею ввиду Алексея Геннадьевича! В принципе не трудно сделать и стек, добавив функцию сдвига(подобно, как в преведущей конструкции) или сброс значений:

31751

Netmas
10.07.2017, 08:59
Это точно! Согласен с Rovki! ПЗУ -прожег перемычки в микросхеме и всё , под одну задачу и работает, для других берем другую ПЗУ и заново прожигаем перемычки! ППЗУ- так же через программатор программируем, но если нужно другую программу то стираем её ультрафиолетом, сейчас у меня такое есть на контроллерах S5-110A, ну а ЭППЗУ это то что сейчас EEPROM изменяется по электрическому сигналу и рулится из ПО, ставиться на компьютерных материнских платах и в тех же овенских регуляторах,програмирующих релюшках, ПЛК и т.д.