Segnetics

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

Вопросы о Pixel Раздел специально по темам работы и применения контроллеров Pixel - 12xx и Pixel - 25xx

Ответ
 
Опции темы Поиск в этой теме
Старый 05.03.2012, 17:39   #1
Gbx
Member
 
Регистрация: Sep 2011
Сообщения: 47
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Защита EEPROM

Подскажите, пожалуйста, как можно разрешить заказчику копирование программы через МП, но при этом защитить от копирования EEPROM?
Gbx вне форума   Ответить с цитированием
Старый 05.03.2012, 18:03   #2
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 112
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Защита EEPROM

Цитата:
Сообщение от Gbx
Подскажите, пожалуйста, как можно разрешить заказчику копирование программы через МП, но при этом защитить от копирования EEPROM?
Если это не описано в Руководстве Пользователя, то значит и сделать нельзя.


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 05.03.2012, 18:12   #3
Gbx
Member
 
Регистрация: Sep 2011
Сообщения: 47
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Защита EEPROM

Тогда подскажите, как подключить внешний программатор для ATMEGA256 в контроллере Pixel-2514.
Gbx вне форума   Ответить с цитированием
Старый 06.03.2012, 13:33   #4
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 112
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Защита EEPROM

Цитата:
Сообщение от Gbx
Тогда подскажите, как подключить внешний программатор для ATMEGA256 в контроллере Pixel-2514.
LBx не помогут вам защитится от чтения EEPROM, т.к. они не ограничивают уровень "Application". А BLBx ограничивают работу исключительно с boot-секцией, которая конечно же не используется для хранения FBD-программы.


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Старый 12.03.2012, 23:59   #5
Gbx
Member
 
Регистрация: Sep 2011
Сообщения: 47
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Защита EEPROM

Как из программы можно записать ячейку памяти в МП.
При использовании Array-long 64-ая ячейки памяти дублирует 0-ую, хотя по идее это уже 256 адресная ячейка, которая должна в МП прописаться?
Gbx вне форума   Ответить с цитированием
Старый 13.03.2012, 09:55   #6
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 112
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Защита EEPROM

Цитата:
Сообщение от Gbx
Как из программы можно записать ячейку памяти в МП.
Это предложение у вас вопросительное или вы просто его недописали?


Цитата:
Сообщение от Gbx
При использовании Array-long 64-ая ячейки памяти дублирует 0-ую, хотя по идее это уже 256 адресная ячейка, которая должна в МП прописаться?
У меня всё работает нормально.

К тому же, если говорить именно об "ячейках" и их количестве, то 64-я ячейка ARRAY(long) это 253/254/255/256 байты. Как вы видите, все они меньше, чем число 257 - ведь именно 257-ой и далее байты массива памяти находятся на внешнем модуле.

Если же говорить об адресах ячеек, то числа будут несколько иными.

Поясните пожалуйста, под словосочетанием "адресная ячейка" вы имеете ввиду саму ячейку памяти или всё же её адрес?


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

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

Последний раз редактировалось Arsie, 13.03.2012 в 10:07
Arsie вне форума   Ответить с цитированием
Старый 13.03.2012, 12:50   #7
Gbx
Member
 
Регистрация: Sep 2011
Сообщения: 47
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Защита EEPROM

Как из программы можно записать ячейку памяти в МП. - это предложение предполагалось вопросительным. Необходимо записать данные именно в МП, желательно по фиксированному адресу.

Как я понял из ответа в ARRAY(long) адресация идет от 1 и тогда 64-я ячейка ARRAY(long) это 253/254/255/256 байты. Я считал что нумерация идет от 0, вечером проэкспериментирую по-другому.

Под словосочетанием "адресная ячейка" я подразумевал адрес.
Gbx вне форума   Ответить с цитированием
Старый 13.03.2012, 13:34   #8
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 112
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Защита EEPROM

Цитата:
Сообщение от Gbx
Как из программы можно записать ячейку памяти в МП. - это предложение предполагалось вопросительным. Необходимо записать данные именно в МП, желательно по фиксированному адресу.
Математическим расчётом вы обеспечите себе идеальное попадание в нужную ячейку.



Цитата:
Сообщение от Gbx
Как я понял из ответа в ARRAY(long) адресация идет от 1 и тогда 64-я ячейка ARRAY(long) это 253/254/255/256 байты. Я считал что нумерация идет от 0, вечером проэкспериментирую по-другому.
Лучше справку на блок прочтите. 64-я ячейка памяти имеет адрес 63. Слова "нумерация" и "адресация" не являются тождественными.


Цитата:
Сообщение от Gbx
Под словосочетанием "адресная ячейка" я подразумевал адрес.
Понятно... Нужно приводить терминологию в порядок, это позволит вам много лучше ориентироваться в массивах памяти.

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

1) Установить в левом-верхнем углу программы блок Array(bool) глубиной 256 ячеек, он полностью займёт внутренний EEPROM контроллера. Все остальные блоки памяти разместятся на внешнем EEPROM. Это правильный способ.

2) Не использовать первые ячейки памяти (64 штуки для long/real, 128 для int и 256 для bool). Причём нужно понимать (вспоминаем школу!), что первая ячейка имеет адрес 0, вторая ячейка имеет адрес 1 и т.д. Т.е. 64 ячейка имеет адрес 63, а не 64, как вы похоже думаете. Соответственно, начиная с адреса 64 для real/long вы попадаете на внешний EEPROM.


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

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

Последний раз редактировалось Arsie, 21.06.2012 в 17:03
Arsie вне форума   Ответить с цитированием
Старый 14.03.2012, 22:52   #9
Gbx
Member
 
Регистрация: Sep 2011
Сообщения: 47
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
По умолчанию Ответ: Защита EEPROM

Спасибо.
В справке написано, что для Device (Kernel) FirstTime - Выставляется 1 на первые два тика работы FBD программы , затем сбрасывается в 0 до следующей загрузки FBD программы.

Это справедливо как при загрузки с компьютера, так и с МП?
Gbx вне форума   Ответить с цитированием
Старый 15.03.2012, 10:35   #10
Arsie
Сотрудник Segnetics
 
Аватара для Arsie
 
Регистрация: Jan 2006
Адрес: Russia, SPb
Сообщения: 18 112
Благодарил(а): 15 раз(а)
Поблагодарили: 660 раз(а) в 604 сообщениях
По умолчанию Ответ: Защита EEPROM

Цитата:
Сообщение от Gbx
Спасибо.
В справке написано, что для Device (Kernel) FirstTime - Выставляется 1 на первые два тика работы FBD программы , затем сбрасывается в 0 до следующей загрузки FBD программы.

Это справедливо как при загрузки с компьютера, так и с МП?
http://forum.segnetics.com/showthrea...ight=FirstTime

Заодно похоже там есть ответ на ваш следующий вопрос


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

Добро всегда побеждает зло. Кто победил - тот и добрый.
Arsie вне форума   Ответить с цитированием
Ответ


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

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



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


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