Миландр

Ключевым подразделением нашей компании
является Центр Проектирования интегральных микросхем
Текущее время: 2020-фев-20 01:06

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 103 сообщения ]  На страницу « 13 4 5 6 7 »
Автор Сообщение
СообщениеДобавлено: 2016-фев-10 16:44 
Не в сети

Зарегистрирован: 2009-июл-21 14:13
Сообщения: 1423
Откуда: Тула
vasili писал(а):
В ходе разработки своих проектов потребовалась версия для ВЕ1 с возможностью стирания не всей Flash, а только той области(кратной 4К), на которую настроен Hex-файл прошивки. Новая версия для ВЕ1 в начале темы.
Рядом с галочкой написано "Full/Nofull".
В Readme написано "При задании опции "NoFull" стирается не вся область flash, а только та, которая подлежит программированию (кратна 4096 байт)."

Таким образом установленная галочка обозначает что?

_________________
сочувствующий…


Вернуться к началу
СообщениеДобавлено: 2016-фев-10 17:05 
Не в сети

Зарегистрирован: 2010-сен-21 12:57
Сообщения: 724
Откуда: г. Санкт-Петербург
prostoRoman писал(а):
...
Таким образом установленная галочка обозначает что?
При установленной галочке стирается вся flash, при сброшенной не вся.


Вернуться к началу
СообщениеДобавлено: 2016-фев-11 08:33 
Не в сети

Зарегистрирован: 2009-июл-21 14:13
Сообщения: 1423
Откуда: Тула
vasili писал(а):
При установленной галочке стирается вся flash, при сброшенной не вся.
Вот такая фраза понятна однозначно. Ещё бы галочку более однозначно обозвать (предлагаю "Full Erase") и вообще отлично было бы. =)

_________________
сочувствующий…


Вернуться к началу
СообщениеДобавлено: 2016-июн-09 05:29 
Не в сети

Зарегистрирован: 2016-июн-09 03:21
Сообщения: 9
Организация: Омский НИИ Приборостроения
Откуда: Омск
А можно мне тоже ответить в личку (или тут) планируется ли загрузчик по CAN (или USB без использования преобразователя USB/COM)? :roll:


Вернуться к началу
СообщениеДобавлено: 2016-июн-09 09:22 
Не в сети

Зарегистрирован: 2010-сен-21 12:57
Сообщения: 724
Откуда: г. Санкт-Петербург
Не планируется.


Вернуться к началу
СообщениеДобавлено: 2016-июн-09 11:31 
Не в сети

Зарегистрирован: 2016-июн-09 03:21
Сообщения: 9
Организация: Омский НИИ Приборостроения
Откуда: Омск
В таком случае, не могли бы вы, как опытный пользователь новичку сказать, реально ли на 1986ВЕ9х перенести программу с flash в RAM (т.е. не перепрошивать сразу RAM, как это сделано у Вас. Дабы после ребута загрузчик не исчезал, а хранился во флеш, и соответственно Erase и программирование делать не всей flash а ее части, не затрагивая область программного загрузчика). И если да то как? Все что находил сводится к прошивки RAM всей программой или ее частью.
З.Ы. использую Keil v5


Вернуться к началу
СообщениеДобавлено: 2016-июн-09 11:52 
Не в сети

Зарегистрирован: 2009-июл-21 14:13
Сообщения: 1423
Откуда: Тула
RAM - это ОЗУ. flash - это ПЗУ.
Зная где расположен и сколько занимает загрузчик (как и любой другой массив данных), его можно переписать в ОЗУ. Для работы из ОЗУ есть несколько нюансов.
flash можно стирать секторами (по 4 кб). Ищите по форуму примеры работы с данными во флеш.
Ищите на форуме пример прошивки для 1986ВЕ8, полюбопытствуйте.
Так же на форуме уже были попытки реализации загрузчика по CAN - поспрашивайте этих людей.

_________________
сочувствующий…


Вернуться к началу
СообщениеДобавлено: 2016-июн-09 11:56 
Не в сети

Зарегистрирован: 2010-сен-21 12:57
Сообщения: 724
Откуда: г. Санкт-Петербург
ответил ЛС.


Вернуться к началу
СообщениеДобавлено: 2016-июн-09 12:20 
Не в сети

Зарегистрирован: 2016-июн-09 03:21
Сообщения: 9
Организация: Омский НИИ Приборостроения
Откуда: Омск
prostoRoman писал(а):
RAM - это ОЗУ. flash - это ПЗУ.
Я ж новичок а не дурачок...
prostoRoman писал(а):
flash можно стирать секторами (по 4 кб). Ищите по форуму примеры работы с данными во флеш.
Про 4 кб в спецификации есть. Искал очень долго и упорно, все что нашел упиралось, как я говорил ранее в прошивку RAM, или я чего-то не понимаю
prostoRoman писал(а):
Ищите на форуме пример прошивки для 1986ВЕ8, полюбопытствуйте.
Поиск по форуму по 1986ВЕ8 не дал ничего по его прошивке.
prostoRoman писал(а):
Зная где расположен и сколько занимает загрузчик (как и любой другой массив данных), его можно переписать в ОЗУ. Для работы из ОЗУ есть несколько нюансов.
Вот это меня и интересует. 1. как его переписать в ОЗУ? 2. Если можно поподробнее о ньюансах, если вы не об отключении прерываний и всего остального, что может нас перекинуть назад во флеш.
prostoRoman писал(а):
Так же на форуме уже были попытки реализации загрузчика по CAN - поспрашивайте этих людей.
Видел парочку, у одного вроде даже получилось, я ему написал, но у него активность такая, что ждать его ответа возможно придется очень долго.


P.S. меня немного смущает, что в большинстве случаев советуют программировать RAM, другого просто не встречал, может я чего то не понимаю, и ОЗУ не опустошится после ребута? Или при программировании в RAM код все равно записавается во флеш(в отладчике ничего такого не увидел, но я там много чего не видел) и уже при запуске копируется в RAM?
P.S.S. под програмированием в RAM я имею ввиду указание в свойствах файла в Keil для записи область памяти IRAM1 в котором у меня заданы соответствующие адреса памяти RAM


Вернуться к началу
СообщениеДобавлено: 2016-июн-09 15:24 
Не в сети

Зарегистрирован: 2009-июл-21 14:13
Сообщения: 1423
Откуда: Тула
jinanton писал(а):
prostoRoman писал(а):
flash можно стирать секторами (по 4 кб). Ищите по форуму примеры работы с данными во флеш.
Про 4 кб в спецификации есть. Искал очень долго и упорно, все что нашел упиралось, как я говорил ранее в прошивку RAM, или я чего-то не понимаю
Если я правильно понимаю термин "прошивка RAM", то она делает то, для чего её писали - стирать всю флеш или только чать. Ищите примеры работы с ДАННЫМИ, а не с прошивками.
jinanton писал(а):
prostoRoman писал(а):
Ищите на форуме пример прошивки для 1986ВЕ8, полюбопытствуйте.
Поиск по форуму по 1986ВЕ8 не дал ничего по его прошивке.
viewtopic.php?f=47&t=2919 -- приложение ко второму сообщению в теме. Но это просто для расширения кругозора...
jinanton писал(а):
prostoRoman писал(а):
Зная где расположен и сколько занимает загрузчик (как и любой другой массив данных), его можно переписать в ОЗУ. Для работы из ОЗУ есть несколько нюансов.
Вот это меня и интересует. 1. как его переписать в ОЗУ? 2. Если можно поподробнее о ньюансах, если вы не об отключении прерываний и всего остального, что может нас перекинуть назад во флеш.
1. Просто скопировать. Цепляете его в проекте как массив константных данных, потом этот массив переписываете в ОЗУ. Вот великолепный пример viewtopic.php?f=22&t=3302
2. Да, об этом.
jinanton писал(а):
prostoRoman писал(а):
Так же на форуме уже были попытки реализации загрузчика по CAN - поспрашивайте этих людей.
Видел парочку, у одного вроде даже получилось, я ему написал, но у него активность такая, что ждать его ответа возможно придется очень долго.
Удачи =)
jinanton писал(а):
P.S. меня немного смущает, что в большинстве случаев советуют программировать RAM, другого просто не встречал, может я чего то не понимаю, и ОЗУ не опустошится после ребута? Или при программировании в RAM код все равно записавается во флеш(в отладчике ничего такого не увидел, но я там много чего не видел) и уже при запуске копируется в RAM?
В ОЗУ программа попадает только в следствие работы UART-загрузчика или самого ПО. Само ОЗУ не энергонезависимое. Штатно Кейл пишет только во флеш.
jinanton писал(а):
P.S.S. под програмированием в RAM я имею ввиду указание в свойствах файла в Keil для записи область памяти IRAM1 в котором у меня заданы соответствующие адреса памяти RAM
Да, вот эту то прошивку и надо как-то залить в ОЗУ - либо через UART-загрузчик, либо программой из флеш.

_________________
сочувствующий…


Вернуться к началу
СообщениеДобавлено: 2016-июн-10 05:58 
Не в сети

Зарегистрирован: 2016-июн-09 03:21
Сообщения: 9
Организация: Омский НИИ Приборостроения
Откуда: Омск
prostoRoman писал(а):
1. Просто скопировать. Цепляете его в проекте как массив константных данных, потом этот массив переписываете в ОЗУ. Вот великолепный пример viewtopic.php?f=22&t=3302
prostoRoman писал(а):
viewtopic.php?f=47&t=2919 -- приложение ко второму сообщению в теме. Но это просто для расширения кругозора.
Пойду изучать, интересного я точно узнаю довольно много, надеюсь еще и полезного на данный момент тоже, спасибо.
prostoRoman писал(а):
В ОЗУ программа попадает только в следствие работы UART-загрузчика или самого ПО. Само ОЗУ не энергонезависимое. Штатно Кейл пишет только во флеш.
Т.е.
jinanton писал(а):
при программировании в RAM код все равно записавается во флеш и уже при запуске копируется в RAM?
???


Вернуться к началу
СообщениеДобавлено: 2016-июн-10 08:06 
Не в сети

Зарегистрирован: 2009-июл-21 14:13
Сообщения: 1423
Откуда: Тула
jinanton писал(а):
Пойду изучать, интересного я точно узнаю довольно много, надеюсь еще и полезного на данный момент тоже, спасибо.
Без сомнений.
jinanton писал(а):
prostoRoman писал(а):
В ОЗУ программа попадает только в следствие работы UART-загрузчика или самого ПО. Само ОЗУ не энергонезависимое. Штатно Кейл пишет только во флеш.
Т.е.
jinanton писал(а):
при программировании в RAM код все равно записавается во флеш и уже при запуске копируется в RAM?
???
Да.

_________________
сочувствующий…


Вернуться к началу
СообщениеДобавлено: 2016-июн-24 11:35 
Не в сети

Зарегистрирован: 2016-июн-24 11:22
Сообщения: 7
Организация: ___
Контроллер 1986ВЕ1Т.
После некорректной настройки PLL контроллер перестал прошиваться ULINK2.
При попытке стереть флешку через uart программой 1986BE1UARTWSD.
Выдаются два сообщения:
"Синхронизация...OK!" и "ошибка обмена"
При анализе ошибки путём запуска исходников программы в режиме отладке, выяснилось, что контроллер проходит синхронизацию и выдаёт приглашение, но на посылаемые команды не отвечает.
Что это может быть?


Вернуться к началу
СообщениеДобавлено: 2016-июн-24 14:28 
Не в сети

Зарегистрирован: 2010-сен-21 12:57
Сообщения: 724
Откуда: г. Санкт-Петербург
Попробуйте задать скорость 9600


Вернуться к началу
СообщениеДобавлено: 2016-июн-24 14:44 
Не в сети

Зарегистрирован: 2016-июн-24 11:22
Сообщения: 7
Организация: ___
vasili писал(а):
Попробуйте задать скорость 9600
Пробовал прямо в коде прописывать (i = 9600), а так какую бы скорость я ни выбрал на форме, i присваивается 115200.
Какая ещё особенность. Если повторить отправку команды, то где-то на 5 раз контроллер начинает отвечать. Например, я пробовал повторять отправку команды 0x0D, и где-то с 5-го раза начинаю получать ответы:
0x1D
0x5D
0xFF 0xFF 0xFC
плюс ещё пару вариантов ответа на эту команду.
Бывает не отвечает, порядок не одинаковый, 0x5D приходит в ответ чаще всего, скорость 9600, команду 0x42 ("B") перед этим не посылал.


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 103 сообщения ]  На страницу « 13 4 5 6 7 »

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость


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

Перейти: 

Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB