22.08.2013, 11:56
|
|
Частый гость
Регистрация: 21.09.2010
Сообщений: 22
Сказал спасибо: 5
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Прошивка серийного номера
Здравствуйте,использую Keil и STM32F107, возник вопрос, есть написанная программа и устройство, в дальнейшем устройств планируется много и у каждого должен быть свой серийный номер(номер будет написан на устройстве и при программировании нужно присвоить такой же номер в программе чтобы потом передавать эту информацию).Пока устройств было мало я просто менял в коде значение серийного номера, теперь хочу автоматизировать этот процесс, как лучше это сделать? пока что из возможных решений я раздумывал над таким: в программе STM32 ST-LINK Utility есть автоматический режим,в списке опций есть User Option Bytes которые можно настраивать, думаю менять их и в программе считывать значения.
Последний раз редактировалось thebadtouch; 22.08.2013 в 14:30.
|
|
|
|
22.08.2013, 13:37
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,048
Сказал спасибо: 60
Сказали Спасибо 3,954 раз(а) в 2,309 сообщении(ях)
|
Re: Прошивка серийного номера
Поищи в даташите главу Device electronic signature
|
|
|
|
22.08.2013, 14:28
|
|
Частый гость
Регистрация: 21.09.2010
Сообщений: 22
Сказал спасибо: 5
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Прошивка серийного номера
Сообщение от niXto
|
Поищи в даташите главу Device electronic signature
|
если вы имеете в виду Unique device ID register,то я так понял, что это заводской номер контроллера,а мне нужно каждому конкретному устройству, на которому будет написан/наклеен заводской номер, присвоить такой же номер в программе,чтобы потому передавать эту информацию во вне. то есть
не зависимо от контроллера, номер должен присваиваться при прошивке программы
Последний раз редактировалось thebadtouch; 22.08.2013 в 14:34.
|
|
|
|
22.08.2013, 15:55
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,048
Сказал спасибо: 60
Сказали Спасибо 3,954 раз(а) в 2,309 сообщении(ях)
|
Re: Прошивка серийного номера
Ну так читай программатором уникальный код контроллера и пиши его на наклейке... Так все делают...
|
|
|
|
22.08.2013, 16:17
|
|
Частый гость
Регистрация: 21.09.2010
Сообщений: 22
Сказал спасибо: 5
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Прошивка серийного номера
Это не подходит, мне нужно чтобы номера начинались с 1,а не как попало. можно ли сделать так как предложил я в шапке темы?
|
|
|
|
22.08.2013, 21:12
|
|
Почётный гражданин KAZUS.RU
Регистрация: 12.11.2004
Адрес: Москва
Сообщений: 8,572
Сказал спасибо: 701
Сказали Спасибо 4,336 раз(а) в 1,987 сообщении(ях)
|
Re: Прошивка серийного номера
Сообщение от thebadtouch
|
Это не подходит, мне нужно чтобы номера начинались с 1,а не как попало. можно ли сделать так как предложил я в шапке темы?
|
А что вам мешает, пардон?
__________________
Я не помогаю. Я провоцирую думать.
Не дай вам Бог плохих контактов.
|
|
|
|
23.08.2013, 09:27
|
|
Частый гость
Регистрация: 21.09.2010
Сообщений: 22
Сказал спасибо: 5
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Прошивка серийного номера
просто сейчас возможности проверить нет, вот я и спрашиваю) похоже,что других вариантов нет
|
|
|
|
23.08.2013, 09:57
|
|
Прописка
Регистрация: 31.03.2010
Сообщений: 200
Сказал спасибо: 3
Сказали Спасибо 48 раз(а) в 41 сообщении(ях)
|
Re: Прошивка серийного номера
Я использую консольную утилиту ST-link для прошивки серии, прописал всё в батнике (кусочек):
Код:
|
%st_link% -c SWD -w32 %serial_number_address% %serial_number% |
т.е. просто пишу нужное значение во флеш-память,
в программе читаю значение серийника по заданному адресу:
Код:
|
serial_number = *(uint32_t*) (BOOTLOADER_SETTINGS_MAIN_BEGIN_ADDRESS - 4); |
__________________
ziblog.ru
|
|
|
Сказали "Спасибо" zheleznjakov
|
|
|
29.08.2013, 12:20
|
|
Прописка
Регистрация: 04.09.2009
Сообщений: 167
Сказал спасибо: 1
Сказали Спасибо 35 раз(а) в 25 сообщении(ях)
|
Re: Прошивка серийного номера
Была подобная задача. В коде было что-то вроде :
Код:
|
const unsigned long rev = 0x12345678 ; |
Потом написал простенькую утилитку, которая модифицировала hex-файл. Утилита вызывалась, а выходной файл потом подкидывался на прошивку через какой-то скрипт, это уже без меня было.
|
|
|
|
12.09.2013, 15:42
|
|
Частый гость
Регистрация: 21.09.2010
Сообщений: 22
Сказал спасибо: 5
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: Прошивка серийного номера
что я делаю не так?
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 17:09.
|
|