Форум Микро-Чип
Поиск и заказ электронных компонентов
 

Вернуться   Форум Микро-Чип > Продукция MICROCHIP

Продукция MICROCHIP Технические вопросы по всей продукции Microchip

Ответ
 
Опции темы Опции просмотра
Старый 14.06.2017, 17:48   #1
Марк
Senior Member
 
Аватар для Марк
 
Регистрация: 18.08.2007
Адрес: M.O.
Возраст: 58
Сообщений: 2,092
Вес репутации: 2636/84
Марк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond repute
По умолчанию OTP user memory

В PIC24/dsPIC33 новых инкарнаций есть нестираемый участок флеша в конфигурационной секции. Вопрос заключается в том, как прошить этот участок?
Собственно мне нужно сериализовать изделия номерами подряд. Фича сериализации есть в IPE, но она не желает работать с секцией конфигов флеша.
Можно конечно писать просто во флеш, но тогда при всяких ремонтах и перепрошивках придется заново сериализовать прежним номером, что неудобно.
Марк вне форума   Ответить с цитированием
Старый 14.06.2017, 18:40   #2
Илья
Senior Member
 
Регистрация: 26.02.2007
Адрес: SPb
Сообщений: 1,127
Вес репутации: 1699/66
Илья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant future
По умолчанию Re: OTP user memory

Компилятор понимает конструкцию типа
const uint16_t aa[2] __attribute__((address(0x801710))) = {0x34, 0x12};
и кладет данные в OTP, MPLAB X в своем окне User OTP Memory по крайней мере эти данные там отображает.

Если нужно, могу запрограммировать образец под это дело и проверить... из IDE или IPE
Илья вне форума   Ответить с цитированием
Старый 14.06.2017, 18:43   #3
Илья
Senior Member
 
Регистрация: 26.02.2007
Адрес: SPb
Сообщений: 1,127
Вес репутации: 1699/66
Илья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant future
По умолчанию Re: OTP user memory

Да, если пишете в эту область из кода, то проверяйте что там чисто. Иначе (как об этом пишут мануалы) возможно появление ошибки ECC.
Видимо, чтобы не погубить МК, нужно иметь правильный обработчик исключений, дабы МК не остался в "зависоне"
Илья вне форума   Ответить с цитированием
Старый 14.06.2017, 19:11   #4
Марк
Senior Member
 
Аватар для Марк
 
Регистрация: 18.08.2007
Адрес: M.O.
Возраст: 58
Сообщений: 2,092
Вес репутации: 2636/84
Марк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond repute
По умолчанию Re: OTP user memory

Спасибо.
Но это из кода.
То есть нужно будет каждый раз менять хекс.
Пока суть да дело, я увидел галку включения доступа к ОТР в IPE и прошил из IPE, но просто вручную модифицируя данные в окне памяти.
Попытка сгенерировать num-файл с адресом из области ОТР дает ошибку.
ЗЫ. Про обработчик исключений я не понял. Писать в OTP методами самопрограммирования нельзя.
Цитата:
OTP memory cannot be written by program execution
(i.e., TBLWT instructions); it can only be written during
device programming.

Последний раз редактировалось Марк; 14.06.2017 в 19:16.
Марк вне форума   Ответить с цитированием
Старый 14.06.2017, 19:31   #5
Илья
Senior Member
 
Регистрация: 26.02.2007
Адрес: SPb
Сообщений: 1,127
Вес репутации: 1699/66
Илья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant future
По умолчанию Re: OTP user memory

Customer OTP memory may be programmed in any
mode, including user RTSP mode

Run-Time Self-Programming (RTSP)
т.е. вроде как из кода можно писать.

num-файл из IPE сформировался без ошибки.
Но пока проверить не могу, мк со склада нужно взять
Илья вне форума   Ответить с цитированием
Старый 14.06.2017, 19:50   #6
Марк
Senior Member
 
Аватар для Марк
 
Регистрация: 18.08.2007
Адрес: M.O.
Возраст: 58
Сообщений: 2,092
Вес репутации: 2636/84
Марк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond repute
По умолчанию Re: OTP user memory

Тогда уточню диспозицию.
PIC24FJ256GA702
Цитата о невозможности самопрограммирования из его даташита.
А ошибка с нум-файлом вылазит при загрузке его в оболочку. И в самом хексе нум файла адрес искажен.
Марк вне форума   Ответить с цитированием
Старый 15.06.2017, 08:33   #7
masterok999
Senior Member
 
Регистрация: 28.07.2015
Адрес: NA
Возраст: 53
Сообщений: 114
Вес репутации: 472/14
masterok999 is a glorious beacon of lightmasterok999 is a glorious beacon of lightmasterok999 is a glorious beacon of lightmasterok999 is a glorious beacon of lightmasterok999 is a glorious beacon of light
По умолчанию Re: OTP user memory

Может не в тему, но если пользоваться правильным программатором (Forte Programmer) то все вопросы снимаются. Можно сериализовать все и в любой извращенной форме.
До этого пользовался четырьмя профессиональными девайсами, но остановился в итоге на этом - самый удобный и емкий по списку (если не нужно шить в параллельном режиме).
Если нужна доп. инфа могу ответить.
Миниатюры
2017-06-15_080700.jpg  
masterok999 вне форума   Ответить с цитированием
Старый 15.06.2017, 09:08   #8
Pridnya
Senior Member
 
Регистрация: 21.01.2009
Возраст: 38
Сообщений: 4,422
Вес репутации: 4370/119
Pridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond repute
По умолчанию Re: OTP user memory

Цитата:
Сообщение от Марк Посмотреть сообщение
Тогда уточню диспозицию.
PIC24FJ256GA702
Цитата о невозможности самопрограммирования из его даташита.
Есть такое:
Цитата:
OTP memory cannot be written by program execution
(i.e., TBLWT instructions); it can only be written during
device programming.
Т.е. запрограммировать OTP можно только при программировании программатором.
Цитата:
Сообщение от Марк Посмотреть сообщение
Спасибо.
Но это из кода.
То есть нужно будет каждый раз менять хекс.
А разве так сложно добавить в HEX несколько строк для области памяти OTP. У этого микроконтроллера FLASH с основной прошивкой располагается в диапазоне адресов 0-7FFFFF, а OTP в 801700-8017FE. Добавление в конец HEX-файла нескольких строк никак не затрагивает основную прошивку и этот процесс можно автоматизировать (могу помочь с кодом на C# для Windows, т.е. EXE-шник написать, который будет добавлять в существующий HEX-файл дополнительную информацию (скриптовыми языками не владею)). Не пойму, в чем сложности? Или опять хочется использовать свою авторскую методику (программатором я не хочу...HEX менять не хочу...хочу, как никто еще не делал и не сделает...)
__________________
Прогресс неизбежен.

Последний раз редактировалось Pridnya; 15.06.2017 в 09:13.
Pridnya вне форума   Ответить с цитированием
Старый 15.06.2017, 09:57   #9
Илья
Senior Member
 
Регистрация: 26.02.2007
Адрес: SPb
Сообщений: 1,127
Вес репутации: 1699/66
Илья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant future
По умолчанию Re: OTP user memory

Цитата:
Сообщение от Марк Посмотреть сообщение
Тогда уточню диспозицию.
PIC24FJ256GA702
Цитата о невозможности самопрограммирования из его даташита.
так и моя цитата из даташита на это семейство (http://ww1.microchip.com/downloads/e.../30010118b.pdf)
4.1.5 CUSTOMER OTP MEMORY
...
Customer OTP memory may be programmed in any
mode, including user RTSP mode

;-)

я уточнил у тамошних товарищей, говорят что IPE/SQTP чуть не доделано, поправят
Илья вне форума   Ответить с цитированием
Старый 15.06.2017, 09:59   #10
Илья
Senior Member
 
Регистрация: 26.02.2007
Адрес: SPb
Сообщений: 1,127
Вес репутации: 1699/66
Илья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant future
По умолчанию Re: OTP user memory

Цитата:
Сообщение от Pridnya Посмотреть сообщение
EXE-шник написать, который будет добавлять в существующий HEX-файл дополнительную информацию.... Не пойму, в чем сложности?..
Так зачем писать самому, если есть инструмент от производителя "из коробки".
Вопрос же изначально в этом
Другое дело что инструмент чуть не подточен
Илья вне форума   Ответить с цитированием
Старый 15.06.2017, 10:10   #11
Pridnya
Senior Member
 
Регистрация: 21.01.2009
Возраст: 38
Сообщений: 4,422
Вес репутации: 4370/119
Pridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond repute
По умолчанию Re: OTP user memory

Цитата:
Сообщение от Илья Посмотреть сообщение
Так зачем писать самому, если есть инструмент от производителя "из коробки".
Вопрос же изначально в этом
Другое дело что инструмент чуть не подточен
Я-то под PIC не пишу программы, поэтому про софт от Microchip IPE/SQTP не знал. Просто понял, что у Марка не получается с помощью какого-то (оказывается кривого) софта записать серийные номера и еще что-нибудь в OTP область памяти микроконтроллера.
PS: Потому и писать, что софт не доделан.
PS: Вроде простое дело - записать серийник в OTP, а софт какой замудреный с логинами, кучей настроек, уровнями доступа
Цитата:
To view and change the settings of SQTP, you first need to login to the Advanced Mode.
, и при всем при этом не может сделать того, что Марк хочет. А из названия софта следует, что он должен ой как ускорить процесс(гугл перевел)
Цитата:
Serial Quick Turn Programming
Последовательное ускоренное программирование
__________________
Прогресс неизбежен.

Последний раз редактировалось Pridnya; 15.06.2017 в 10:18.
Pridnya вне форума   Ответить с цитированием
Старый 15.06.2017, 10:16   #12
Илья
Senior Member
 
Регистрация: 26.02.2007
Адрес: SPb
Сообщений: 1,127
Вес репутации: 1699/66
Илья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant future
По умолчанию Re: OTP user memory

записать можно (либо положив в hex, либо в IPE руками). Похоже что с SQTP проблема на данном этапе.
Илья вне форума   Ответить с цитированием
Старый 15.06.2017, 10:25   #13
Pridnya
Senior Member
 
Регистрация: 21.01.2009
Возраст: 38
Сообщений: 4,422
Вес репутации: 4370/119
Pridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond repute
По умолчанию Re: OTP user memory

Цитата:
Сообщение от Илья Посмотреть сообщение
записать можно (либо положив в hex, либо в IPE руками). Похоже что с SQTP проблема на данном этапе.
Почитал я про IPE/SQTP и понял, что просто добавить в HEX серийник (в виде дополнительных Intel HEX строк) Марку нафиг не нужно. Весь смысл в алгоритме создания серийных номеров и доступа персонала к прошивке (ограничить количество прошивок, возможности персонала...в отпуске, когда комп на работе, а Марк далеко-далеко в Турции). Или он и комп с прошивкой в отпуск увозит, а отдает только проектик для IPE/SQTP.
__________________
Прогресс неизбежен.
Pridnya вне форума   Ответить с цитированием
Старый 15.06.2017, 11:04   #14
Марк
Senior Member
 
Аватар для Марк
 
Регистрация: 18.08.2007
Адрес: M.O.
Возраст: 58
Сообщений: 2,092
Вес репутации: 2636/84
Марк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond repute
По умолчанию Re: OTP user memory

Цитата:
Сообщение от Pridnya Посмотреть сообщение
А разве так сложно добавить в HEX несколько строк для области памяти OTP. У этого микроконтроллера... бла...бла...бла
Не пойму, в чем сложности? Или опять хочется использовать свою авторскую методику (программатором я не хочу...HEX менять не хочу...хочу, как никто еще не делал и не сделает...)
Дима, если вместо Вашего обычного гонора сесть и подумать зачем и как делают сериализацию, то легко сообразить, что каждый следующий образец изделия должен быть с ДРУГИМ содержимым хекса.
Таким образом есть ТРИ пути:
1. Прошивать все изделия из среды разработки (глупее идею трудно придумать) для 200...300 изделий, модифицируя константу каждому новому изделию.
2. Прошивать только OTP из IPE, вручную модифицируя ячейку с номером (сейчас именно так и сделал)
3. Использовать специальный софт (фичи стандартного софта) для автоматического инкремента серийников при прошивке (именно это выяснялось в теме).
Поэтому, Дима, угомоните свой гонор и перестаньте писать глупости.
ЗЫ. Доступ персонала к прошивкам имеется всегда. никакого отношения сериализация к защите прошивок от персонала не имеет.
Назначение сериализации в данном изделии состоит в том, что на основе серийника формируется пароль активации на месяц работы для этого прибора. Это защита от воровства оборудования (данный прибор - технологическое оборудование линейных инженеров).
Марк вне форума   Ответить с цитированием
Старый 15.06.2017, 11:10   #15
Марк
Senior Member
 
Аватар для Марк
 
Регистрация: 18.08.2007
Адрес: M.O.
Возраст: 58
Сообщений: 2,092
Вес репутации: 2636/84
Марк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond repute
По умолчанию Re: OTP user memory

Цитата:
Сообщение от Илья Посмотреть сообщение
записать можно (либо положив в hex, либо в IPE руками). Похоже что с SQTP проблема на данном этапе.
Большое спасибо за разъяснения.
Надеюсь Микрочип доработает раздел SQTP.
Марк вне форума   Ответить с цитированием
Старый 15.06.2017, 11:26   #16
Pridnya
Senior Member
 
Регистрация: 21.01.2009
Возраст: 38
Сообщений: 4,422
Вес репутации: 4370/119
Pridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond repute
По умолчанию Re: OTP user memory

Цитата:
Сообщение от Марк Посмотреть сообщение
Дима, если вместо Вашего обычного гонора сесть и подумать зачем и как делают сериализацию, то легко сообразить, что каждый следующий образец изделия должен быть с ДРУГИМ содержимым хекса.
А у меня в одном из проектов HEX был один для всех приборов, а прибор при включении проверял целостность (отсутствие модификации кода) памяти программ (сравнивал контрольную сумму прошивки с заранее известным числом, которое добавлялось в HEX-файл вне основной прошивки, в конец). Поэтому во всей серии один HEX и одно известное значение контрольной суммы. Поменял что-то в прошивке и прибор не будет работать - сообщит об ошибке в прошивке.
Цитата:
Сообщение от Марк Посмотреть сообщение
Таким образом есть ТРИ пути:
1. Прошивать все изделия из среды разработки (глупее идею трудно придумать) для 200...300 изделий, модифицируя константу каждому новому изделию.
2. Прошивать только OTP из IPE, вручную модифицируя ячейку с номером (сейчас именно так и сделал)
3. Использовать специальный софт (фичи стандартного софта) для автоматического инкремента серийников при прошивке (именно это выяснялось в теме).
Хорошие способы.
Цитата:
Сообщение от Марк Посмотреть сообщение
Поэтому, Дима, угомоните свой гонор и перестаньте писать глупости.
ЗЫ. Доступ персонала к прошивкам имеется всегда. никакого отношения сериализация к защите прошивок от персонала не имеет.
Назначение сериализации в данном изделии состоит в том, что на основе серийника формируется пароль активации на месяц работы для этого прибора. Это защита от воровства оборудования (данный прибор - технологическое оборудование линейных инженеров).
Марк, а как еще обменяться опытом? Приходится писать глупости, чтобы что-то новое узнать. Это ж драгоценные знания. Недавно с магистрами во дворе встретился из нашего политеха. Образование стоит 120 тыр в год, а знаний особо не получат (от преподов - это не знания), а здесь практикум от практикующего инженера с почти 35-летним стажем.
__________________
Прогресс неизбежен.
Pridnya вне форума   Ответить с цитированием
Старый 15.06.2017, 11:43   #17
Марк
Senior Member
 
Аватар для Марк
 
Регистрация: 18.08.2007
Адрес: M.O.
Возраст: 58
Сообщений: 2,092
Вес репутации: 2636/84
Марк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond repute
По умолчанию Re: OTP user memory

Цитата:
Сообщение от Pridnya Посмотреть сообщение
А у меня в одном из проектов HEX был один для всех приборов, а прибор при включении проверял целостность (отсутствие модификации кода) памяти программ (сравнивал контрольную сумму прошивки с заранее известным числом, которое добавлялось в HEX-файл вне основной прошивки, в конец). Поэтому во всей серии один HEX и одно известное значение контрольной суммы. Поменял что-то в прошивке и прибор не будет работать - сообщит об ошибке в прошивке.
Еще раз. У меня нет проблем с защитой прошивки от ее кражи или модификации.
Серийный номер формируется от 0 до N ПОДРЯД. При запросе пароля используется этот серийник (он же является номером учета приборов в базе данных), а так же предыдущий пароль. Оба числа выводятся на экран прибора в режиме активации. Делается запрос администратору и тот через софт в корпоративной базе данных генерирует новый пароль активации.
Марк вне форума   Ответить с цитированием
Старый 15.06.2017, 11:46   #18
Марк
Senior Member
 
Аватар для Марк
 
Регистрация: 18.08.2007
Адрес: M.O.
Возраст: 58
Сообщений: 2,092
Вес репутации: 2636/84
Марк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond repute
По умолчанию Re: OTP user memory

Цитата:
Сообщение от Pridnya Посмотреть сообщение
Марк, а как еще обменяться опытом?
Уж точно не флудом в технических разделах.
А кроме того, чтобы собеседник ЗАХОТЕЛ поделиться с Вами своим опытом и наработками, следует выбирать манеру общения.
Марк вне форума   Ответить с цитированием
Старый 16.06.2017, 10:15   #19
Илья
Senior Member
 
Регистрация: 26.02.2007
Адрес: SPb
Сообщений: 1,127
Вес репутации: 1699/66
Илья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant future
По умолчанию Re: OTP user memory

в опчем, можно писать в OTP из кода (из своей программы). Даташит оказался наполовину прав
прислали пример.
Илья вне форума   Ответить с цитированием
Старый 16.06.2017, 11:47   #20
Pridnya
Senior Member
 
Регистрация: 21.01.2009
Возраст: 38
Сообщений: 4,422
Вес репутации: 4370/119
Pridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond repute
По умолчанию Re: OTP user memory

Цитата:
Сообщение от Илья Посмотреть сообщение
в опчем, можно писать в OTP из кода (из своей программы). Даташит оказался наполовину прав
прислали пример.
А код из присланного примера работает? Тестировался? А то получается недокументированная возможность.
__________________
Прогресс неизбежен.
Pridnya вне форума   Ответить с цитированием
Старый 16.06.2017, 11:57   #21
Марк
Senior Member
 
Аватар для Марк
 
Регистрация: 18.08.2007
Адрес: M.O.
Возраст: 58
Сообщений: 2,092
Вес репутации: 2636/84
Марк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond repute
По умолчанию Re: OTP user memory

Илья, спасибо, обязательно проверю, но в этом проекте это не требуется. Потому что у прибора изначально не создавали никаких каналов загрузки данных. Сиречь сериализовать его своим софтом через этот канал невозможно. Точнее возможно через радиоканал синхронизации (там просто передается 50 Гц сетевой частоты), если перекофигурировать RF модуль и посадить UART в МК на пин входа этой синхронизации.
Слишком геморройно.
ЗЫ. Немного о другом.
Обнаружил в карте памяти флеша (по даташиту) участок называемый Executive Code Memory. Находится он в поле конфигурационной памяти, то есть не лежит в поле адресов собственно программы. В даташите (и реф.мануале) нет про него ни слова.
Однако.
Есть режим СТИРАНИЯ в процедуре RTSP, который стирает ВЕСЬ ФЛЕШ за исключением Device ID, customer OTP, executive memory.
И у меня появилось смутное подозрение, что этот участок не является физической памятью, а лишь отображением участка исполняемого В ДАННЫЙ МОМЕНТ кода. Сиречь не требуется при стирании как то обходить бутлоадер, все будет стерто в один прием за исключением самого бутлоадера.
Насколько оправданы мои смутные подозрения?

Последний раз редактировалось Марк; 16.06.2017 в 12:06.
Марк вне форума   Ответить с цитированием
Старый 16.06.2017, 14:16   #22
Илья
Senior Member
 
Регистрация: 26.02.2007
Адрес: SPb
Сообщений: 1,127
Вес репутации: 1699/66
Илья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant future
По умолчанию Re: OTP user memory

Цитата:
Сообщение от Pridnya Посмотреть сообщение
А код из присланного примера работает? Тестировался? А то получается недокументированная возможность.
Да, протестировал, всё ОК. Но еще раз, даташит пишет о возможности записи из кода:
4.1.5 CUSTOMER OTP MEMORY
Customer OTP memory may be programmed in any mode, including user RTSP mode

просто в другом месте написано обратное (но это очепятка, поправят ))
Илья вне форума   Ответить с цитированием
Старый 21.06.2017, 07:58   #23
Марк
Senior Member
 
Аватар для Марк
 
Регистрация: 18.08.2007
Адрес: M.O.
Возраст: 58
Сообщений: 2,092
Вес репутации: 2636/84
Марк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond reputeМарк has a reputation beyond repute
По умолчанию Re: OTP user memory

Илье еще раз спасибо.
Решил задачу так.
Написал небольшой код по перезаписи номера из обычного флеша в OTP.
При прошивке устройства сначала оно прошивается этим кодом с сериализацией (через обычный num-файл в IPE) в обозначенное слово программного флеша и при старте однократно пишет из этого слова в OTP. После чего устройство прошивается рабочим кодом.
Вполне технологичная операция.
Марк вне форума   Ответить с цитированием
Старый 21.06.2017, 09:37   #24
Pridnya
Senior Member
 
Регистрация: 21.01.2009
Возраст: 38
Сообщений: 4,422
Вес репутации: 4370/119
Pridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond reputePridnya has a reputation beyond repute
По умолчанию Re: OTP user memory

Цитата:
Сообщение от Марк Посмотреть сообщение
Илье еще раз спасибо.
Решил задачу так.
Написал небольшой код по перезаписи номера из обычного флеша в OTP.
При прошивке устройства сначала оно прошивается этим кодом с сериализацией (через обычный num-файл в IPE) в обозначенное слово программного флеша и при старте однократно пишет из этого слова в OTP. После чего устройство прошивается рабочим кодом.
Вполне технологичная операция.
И где здесь технологичность? Особенно для серийного производства. Двойная работа (а также глупая и ненужная) у японцев называется "мудой", потому, наверное, у нас известно термин "*****", т.е. создатель такой работы. Марк, только без обид.
PS: Ух ты, движок слово звездочками выделил.
PPS: Не, ну если себя работой обеспечить и создать видимость большого труда, то муду можно попытаться выдать за рабочий процесс. Но постоянно так делать не получится.
Цитата:
В Японии есть такое понятие - муда. Муда - это глупая, ненужная работа, которую выполнять не надо, несогласованность действий, приводящая к потерям времени и ресурсов, и так далее. Муда - это плохо, и этой муды стараются избегать всеми силами.
__________________
Прогресс неизбежен.
Pridnya вне форума   Ответить с цитированием
Старый 21.06.2017, 10:37   #25
Илья
Senior Member
 
Регистрация: 26.02.2007
Адрес: SPb
Сообщений: 1,127
Вес репутации: 1699/66
Илья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant futureИлья has a brilliant future
По умолчанию Re: OTP user memory

Цитата:
Сообщение от Pridnya Посмотреть сообщение
И где здесь технологичность? Особенно для серийного производства.
Вы видимо вообще не в теме SQTP.
В оболочке программатора (IPE) создается правило.
IPE можно настроить так, что для конкретного раб.места создается окружение - где брать прошивку, SQTP и пр. Лишние возможности выключается.
Для неё или его ("тетенька которая прошивает") остается запустить IPE и жать кнопку "Programm".

SQTP сам будет контролировать какие серийные номера уже прошиты, какой нужно шить следующим.

Можно это организовать через .bat файл, тогда даже IPE запускать не нужно и не пугать его или её непонятным GUI.

Идея Марка - положить во Flash серийный номер стандартными методами SQTP. Если контроллер был чист - программа сама запишет серийник в QTP при первом включении. Если серийник уже был (последующее включение прибора или перепрошивка Flash ), то серийник не трогается.
Илья вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
PIC18F25K80, где взять BootLoader? hfmscan Вопросы начинающих 48 23.08.2016 10:28
bootloader pic24 open your soul Продукция MICROCHIP 11 27.02.2013 10:16
EXTERNAL MEMORY BUS 18F97J60 Mernik Продукция MICROCHIP 10 30.01.2013 17:05
Memory Model: не может адресовать 100% data memory dimonomid Продукция MICROCHIP 3 20.07.2009 17:02
Помогите плизз с PIC16LF628A dbosh Продукция MICROCHIP 49 11.10.2008 01:03


Часовой пояс GMT +3, время: 05:52.


Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd. Перевод: zCarot