реклама на сайте
подробности

 
 
> Сохранить номер версии в прошивке
krik
сообщение Jul 24 2008, 17:30
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 34
Регистрация: 29-08-05
Пользователь №: 8 044



Подскажите пож. кто как хранит номер версии программы в прошивке. EEPROM наверное недолго сохранит.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Rst7
сообщение Jul 24 2008, 17:52
Сообщение #2


Йа моск ;)
******

Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610



А в чем проблемы? Я пользуюсь вытаскиванием номера ревизии с SVN и вставкой его просто в текстовую строку. А можно и в виде числа сделать.


--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
Go to the top of the page
 
+Quote Post
singlskv
сообщение Jul 24 2008, 20:35
Сообщение #3


дятел
*****

Группа: Свой
Сообщений: 1 681
Регистрация: 13-05-06
Из: Питер
Пользователь №: 17 065



Цитата(Rst7 @ Jul 24 2008, 21:52) *
А в чем проблемы? Я пользуюсь вытаскиванием номера ревизии с SVN и вставкой его просто в текстовую строку. А можно и в виде числа сделать.

А можно услышать более подробно как Вы это делаете с SVN автоматически ?
Просто с SVN только начал работать и не хочу изобретать велосипед...
Go to the top of the page
 
+Quote Post
aesok
сообщение Jul 24 2008, 21:29
Сообщение #4


Знающий
****

Группа: Участник
Сообщений: 596
Регистрация: 26-05-06
Из: Москва
Пользователь №: 17 484



Цитата(singlskv @ Jul 25 2008, 00:35) *
А можно услышать более подробно как Вы это делаете с SVN автоматически ?
Просто с SVN только начал работать и не хочу изобретать велосипед...

Keyword Substitution
http://svnbook.red-bean.com/nightly/ru/svn...l.keywords.html

Цитата(zltigo @ Jul 25 2008, 00:45) *
volatile константа - тогда еще добавить еще чего попало, например соли, перца, ладана... smile.gif.


Ничего смешного.

const - указывает компилятору что переменную нельзя изменять.
volatile - указывает что переменная может меняться сама.

Например.
Возмем регистр ICR - Input Capture Register

Обьявим его так (он должен быть объявлен через указатели, давайте для простоты это упустем)
volatile const unsigned int ICR;

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

Но с другой стороны запись в него опасна, поэтому пускай компилятор ругается если я в программе напишу ICR = 0x55AA; ведь такими действиями я могу затереть значение записанное туда при захвате.

С помощью записи можно написать более безопасный код.


Еще, правда на SDCC для 51

код:
code _AT_(0x3000) volatile const char Kf = 10;

res = ADC * Kf;

Корректировочную константу Kf я разместил во флеш, чтобы можно было ее менять
при программировании контроллера, и установил ей начальное значение которое
почти всегда меня устраивало. Но если не применить к Kf модификатор volatile
то оптимизатор сгенерирует код который не будет брать значение записанное по
адресу 0x3000, а всегда будет умножать на 10.

Анатолий.

Сообщение отредактировал aesok - Jul 24 2008, 21:41
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 14:07
Рейтинг@Mail.ru


Страница сгенерированна за 0.01379 секунд с 7
ELECTRONIX ©2004-2016