|
0 / 0 / 0
Регистрация: 06.11.2011
Сообщений: 191
|
|
Вопрос по microC09.11.2011, 19:14. Показов 11607. Ответов 14
Метки нет (Все метки)
Начал осваивать компилятор microC. Затруднений особых не было. Прочитав русский хелп вполне все понятно. Но вот возник вопрос. Как жестко прописать данные в еепром по конкретным адресам, чтобы они уже были зашиты программатором сразу? Можно наверно применить и ассемблеровскую вставочку, но неужели больше никак?
С записью массива данных во флеш-память тоже не понятно как это делается. Достаточно ли будет указать тип static const чтобы компилятор прописал этот массив именно во флеш, а не хранил его в ОЗУ?
0
|
|
| 09.11.2011, 19:14 | |
|
Ответы с готовыми решениями:
14
Компилятор MicroC PRO для PIC Написать программу для microC. И составить блок-схему ее работы MicroC - тупой компилятор? |
|
0 / 0 / 0
Регистрация: 04.03.2011
Сообщений: 594
|
|
| 09.11.2011, 20:27 | |
|
в начале программы, до бесконечного цикла. Функцией еепром_райт из библиотеки.
0
|
|
|
0 / 0 / 0
Регистрация: 04.07.2011
Сообщений: 85
|
||
| 09.11.2011, 20:39 | ||
видимо, имелось ввиду использование директив препроцессора, как на асме. мне вот тоже интересно - как? в справке об этом ни слова я пользуюсь eeprom editor из утилит microC (вкладка Tools) - набиваю туда содержимое, компилятор это потом включает в .hex массив - да, обозвать const
0
|
||
|
0 / 0 / 0
Регистрация: 04.03.2011
Сообщений: 594
|
||
| 10.11.2011, 11:58 | ||
видимо, имелось ввиду использование директив препроцессора, как на асме. мне вот тоже интересно - как? в справке об этом ни слова я пользуюсь eeprom editor из утилит microC (вкладка Tools) - набиваю туда содержимое, компилятор это потом включает в .hex массив - да, обозвать const Ну не знаю. Сделать if. Если в ячейке "0" не ноль - то значения в еепром присать и сбросить ячейку "0" в ноль. При первом запуске в ней FF, еепром пропишется, а её занулит. А после ресета пройдет мимо.
0
|
||
|
0 / 0 / 0
Регистрация: 02.07.2011
Сообщений: 96
|
|
| 10.11.2011, 12:11 | |
|
в отдельном хидере (желательно)
__EEPROM_DATA(0xff, 0x03, 0x03, 0x10, 0x03, 0xf0, 0x03, 0x10); __EEPROM_DATA(0x01, 0x60, 0x03, 0x10, 0x03, 0x5e, 0x03, 0x10); __EEPROM_DATA(0x01, 0x0f, 0x03, 0x10, 0x03, 0x77, 0x03, 0x10); __EEPROM_DATA(0x01, 0x11, 0x03, 0x10, 0x05, 0x00, 0x03, 0x10); и т.д. заполняется с 0 адреса по возрастающей в момент прошивки.
0
|
|
|
0 / 0 / 0
Регистрация: 04.07.2011
Сообщений: 85
|
|
| 10.11.2011, 14:52 | |
|
у меня в таком виде работать отказывается.
Перекопал хелп, там ненавязчиво так сказано использовать EEPROM_Editor и прикреплять получившийся .ihex к проекту
0
|
|
|
0 / 0 / 0
Регистрация: 02.07.2011
Сообщений: 96
|
|
| 10.11.2011, 15:43 | |
|
ну да, сорри) перепутал это из ХайТеч компилятора)
0
|
|
|
dorkmoom
|
|
| 11.11.2011, 14:41 | |
|
если у тебя программатор PICKit2 тогда можно прямо в нет изменить еепром зашить и при обновление прошивки отключать запись в еепром!!
|
|
|
1 / 1 / 0
Регистрация: 19.12.2009
Сообщений: 2
|
||
| 11.11.2011, 15:09 | ||
|
Так, к слову...
Такая функция есть в PicBasic Pro
0
|
||
|
0 / 0 / 0
Регистрация: 04.07.2011
Сообщений: 85
|
|
| 11.11.2011, 17:04 | |
|
зачем сразу PICKit2 ?
обычный WinPIC800 с прогером ExtraPIC умеет то же самое. а вообще, я знаю, у кого нужно спросить: SWK, подскажите, плиз, как вы с еепромом из микросей работаете?
0
|
|
|
0 / 0 / 0
Регистрация: 06.11.2011
Сообщений: 191
|
|
| 11.11.2011, 17:31 | |
|
Дааа. Хорошенький я вопрос поднял. Думал один я такой незнайка. Воспользовался я EEPROM_Editor. Свою проблему решил. Но это все равно не очень красиво получается. Программа должна быть читабельна для любого программиста. А так посмотрит человек на файл.с, и откуда ему знать что в еепром надо что-то прописывать. Вообщем если нет такой директивы в microC, то это ему большой минус!
0
|
|
|
SWK
|
||
| 11.11.2011, 18:18 | ||
Сейчас центральный контроллер на Меге 128 разрабатываю, - вот там уж нагорожу... Кроме внутреннего EEPROM и ОЗУ, ставлю еще и внешнее ОЗУ на 64кбайт, 2 штуки EEPROM 24С512 на I2C, флэшку SD-Card на 2 гигобайта, и еще 512мбайт Serial Ftosh Memory W25X40 на SPI. Вот там уж наворочу, постараюсь задействовать по полной. Хранение карт, заданий, расписаний, и прочую текущую и долговременную информацию. Но я пока занимаюсь разводкой платы и начинкой ее всякими устройствами, программой же занимаюсь мало, только для проверки увязки периферии между собой. Будет готова плата - займусь уже написанием программы с параллельной ее отладкой по кускам, по мере написания. Как обычно, начну со связи с компом на USORT для отладки, подачи команд и приема всякой информации от контроллера. Замкну главный цикл, сделаю системный таймер на 1мс, дешифратор команд, и начну пихать остальное. По ходу пока продумываю, что там будет и как. Плата уже в основном почти завершена, но остался свободный уголок примерно 40х60мм, и несколько портов, думаю, что туда еще лучше всунуть... Жалко, место пропадает. Но и что попало совать не хочется. В крайнем случае, оставлю просто разьемы на свободных ногах, потом что-нибудь можно будет прицепить. Пока один из кандидатов - гироскоп с вертолета, но его еще надо сначала немного поковырять отдельно. Но можно его и в башню поставить, там ресурсов тоже еще свободных много. |
||
|
SWK
|
||
| 11.11.2011, 18:29 | ||
Имея же все файлы проекта, где в том числе и данные, зашиваемые в EEPROM, не проблема разобраться и понять, где что. А при компиляции данные для прошивки EEPROM будут включены в выходной HEX-файл. Да и вы, однажды воспользовавшись EEPROM - редактором, теперь не заносите же эти данные снова при каждом открытии проекта, они же где-то хранятся. Да и никто не мешает вам в начале программы оформить в виде комментариев данные, зашиваемые в EEPROM, чтобы не забыть, - будут перед глазами. |
||
|
0 / 0 / 0
Регистрация: 04.07.2011
Сообщений: 85
|
|
| 11.11.2011, 18:45 | |
|
SWK, спасибо!
вам бы перенести содержимое вашего мозга на бунигу в виде многотомной монографии, думаю, Хоровиц с Хиллом удавились бы от зависти )) многие бы сей труд купили, многие
0
|
|
|
SWK
|
||
| 11.11.2011, 19:06 | ||
|
||
| 11.11.2011, 19:06 | |
|
Помогаю со студенческими работами здесь
15
Прирывание void interrupt(void) в MicroC Вопрос по SetParent (поэтому, наверное, это вопрос к NickStaves) VBulletin [ВОПРОС]: Меню и вопрос при регистрации Вопрос о картинках, вопрос о формулах Вопрос по массивав, "институтский" вопрос. Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
|
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
|
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . .
а удачный момент так и не приходит.
|
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица.
Задача: зафиксировать три левых колонки в отчете.
Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
/ / . . .
|
|
Настройки VS Code
Loafer 13.04.2026
{
"cmake. configureOnOpen": false,
"diffEditor. ignoreTrimWhitespace": true,
"editor. guides. bracketPairs": "active",
"extensions. ignoreRecommendations": true,
. . .
|
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2.
Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива.
Было так:. . .
|
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2.
Задача: реализовать контроль корректности заполнения дат назначения. . .
|
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html
Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
|