|
Виж темите без отговор | Виж активните теми
Дата и час: Пон Юли 27, 2026 11:50 am
Преход boоtloader към главна програма, и двете писани на C?
| Автор |
Съобщение |
|
tolstolob
Ранг: Ориентиран
Регистриран на: Вто Фев 06, 2007 2:45 am Мнения: 263
|
 Re: Преход boоtloader към главна програма, и двете писани на
Можело е да избегнеш флашването на 'магическия' бит при прехода към бутлоудър - същото се получава като си заделиш 1-2 байта неинициализирана РАМ (обикновено на адрес 0, съответно настройваш валидния РАМ рейндж в МПЛАБ проекта). Така вместо call ще имаш само бит (или патърн) тест на въпросната променлива.
|
| Чет Окт 12, 2017 11:15 am |
|
 |
|
anrieff
Ранг: Новодошъл
Регистриран на: Нед Ное 16, 2008 1:16 pm Мнения: 179 Местоположение: София
|
 Re: Преход boоtloader към главна програма, и двете писани на
Е да, ама така щеше да трябва да ползвам нещо друго, а не reset, за преход от главната програма към bootloader-а, иначе тая рам щеше да си се зачисти пак и пак да буутна в главната програма. А мен ми се ще да го избегна това, нали след като прехода bootloader -> main маже нещата, като нищо и обратния преход може да е зле.
_________________ 2 + 2 = 5, при много големи стойности на 2.
|
| Чет Окт 12, 2017 1:16 pm |
|
 |
|
tolstolob
Ранг: Ориентиран
Регистриран на: Вто Фев 06, 2007 2:45 am Мнения: 263
|
 Re: Преход boоtloader към главна програма, и двете писани на
Демек - не се пипа от стартъп код.
|
| Чет Окт 12, 2017 1:25 pm |
|
 |
|
anrieff
Ранг: Новодошъл
Регистриран на: Нед Ное 16, 2008 1:16 pm Мнения: 179 Местоположение: София
|
 Re: Преход boоtloader към главна програма, и двете писани на
Тъй де, ама Ресет инструкцията не зачиства ли всичката РАМ?
_________________ 2 + 2 = 5, при много големи стойности на 2.
|
| Чет Окт 12, 2017 2:06 pm |
|
 |
|
tolstolob
Ранг: Ориентиран
Регистриран на: Вто Фев 06, 2007 2:45 am Мнения: 263
|
 Re: Преход boоtloader към главна програма, и двете писани на
Не. Ресета важи само за special function регистрите.
|
| Чет Окт 12, 2017 2:14 pm |
|
 |
|
anrieff
Ранг: Новодошъл
Регистриран на: Нед Ное 16, 2008 1:16 pm Мнения: 179 Местоположение: София
|
 Re: Преход boоtloader към главна програма, и двете писани на
А по какъв начин мога да накарам PIC-а да направи баш истински ресет, все едно току-що го пускам?
_________________ 2 + 2 = 5, при много големи стойности на 2.
|
| Чет Окт 12, 2017 4:01 pm |
|
 |
|
tolstolob
Ранг: Ориентиран
Регистриран на: Вто Фев 06, 2007 2:45 am Мнения: 263
|
 Re: Преход boоtloader към главна програма, и двете писани на
Спираш захранването и чакаш кондензаторите да се разредят до под 1 волт  Тогава има вероятност РАМ-а да ти е случаен. Не разбирам защо ти е студен ресет?
|
| Чет Окт 12, 2017 4:23 pm |
|
 |
|
anrieff
Ранг: Новодошъл
Регистриран на: Нед Ное 16, 2008 1:16 pm Мнения: 179 Местоположение: София
|
 Re: Преход boоtloader към главна програма, и двете писани на
Ми де да знам, за детерминистичност. Ето примерно както предлагаш 'магическият бит' да е в RAM, а не във Flash-а - като пуснеш устройството от студено, откъде да имам гаранция какъв ще е тоя бит и дали PIC-a няма да влезе в буутлоудър режим без да искам...
_________________ 2 + 2 = 5, при много големи стойности на 2.
|
| Чет Окт 12, 2017 8:08 pm |
|
 |
|
tolstolob
Ранг: Ориентиран
Регистриран на: Вто Фев 06, 2007 2:45 am Мнения: 263
|
 Re: Преход boоtloader към главна програма, и двете писани на
Ако флага ти е 4 байта с някакъв неестествен патърн (0хАА55АА55), то е все едно да удариш 8-ца от тотото. За некритични приложения и 2 байта са напълно достатъчни. То ако тръгнем да търсим възможни точки на счупване, може да се съмняваме дали ти е записан правилно флага във флаша...
|
| Чет Окт 12, 2017 9:22 pm |
|
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 3 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|