Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Silab F360 зависает при инициализации
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Все остальные микроконтроллеры > MCS51
Massi
01C9 75 81 E8 MOV 81H,#E8H
01CC 75 82 E9 MOV 82H,#E9H
01CF 75 83 EA MOV 83H,#EAH
01D2 75 84 EB MOV 84H,#EBH
01D5 75 85 EC MOV 85H,#ECH
01D8 75 86 ED MOV 86H,#EDH

01DB 75 87 EE MOV 87H,#EEH

01DE 75 88 EF MOV 88H,#EFH
01E1 75 89 F0 MOV 89H,#F0H
01E4 75 8A F1 MOV 8AH,#F1H

кстати зачем он пишет во все регистры и что проверяет...программатор EC2 USB...IDE Silab
после он стопорится на 01DB и IDE говорит что связь с MCU потеряна....MCU в мусорку или еще можно что то сделать

barabek
Цитата(Massi @ Oct 28 2010, 00:14) *
кстати зачем он пишет во все регистры и что проверяет...программатор EC2 USB...IDE Silab
после он стопорится на 01DB и IDE говорит что связь с MCU потеряна....MCU в мусорку или еще можно что то сделать

Очень странно. Сначала предположил что это как обычно watchdog не проинициализирован. Однако в этом случае связь не должна теряться. А вот присмотревшись smile.gif обнаруживаем по адресу 0x87 регистр PCON и соответственно такой командой Вы переводите его в режим STOP. Откуда получился у Вас такой код инициализации? С таким не раз не сталкивался. Вы пишите на С и это листинг или как?
Massi
это не мой код...это то что зачем то генерится IDE...в пошаговой отладке она выполняет только одну функцию....
задам вопрос....SFRPAGE....это что и как его переключать и восстанавливать
barabek
Цитата(Massi @ Oct 30 2010, 18:17) *
это не мой код...это то что зачем то генерится IDE...в пошаговой отладке она выполняет только одну функцию....
задам вопрос....SFRPAGE....это что и как его переключать и восстанавливать

IDE генерит startup.a51. Еще слышал про какой-то init.a51 (если правильно помню), но я его не встречал, не знаю в каких случаях подключается. Надо документацию на кейл читать. У Вас же наверняка кейл подстегнут? На крайняк можно скопировать startup.a51 к себе в папку, явно включить в проект и покастомизовать его. Но мне такое не раз не приходилось делать. максимум добавлял строки сброса вотчдога. Видимо Вы где-то вырыли непонятные галочки и проставили smile.gif

SFRPAGE это страницы регистров специальных функций. Дело в том что у 51 для SFR отводится всего 128 ячеек в адресном пространстве явной адресации 0x80-0xff (по этим же адресам но косвенноадресуемая есть обычная RAM). Поэтому, когда перефирии становится много приходится укладываться в одни и те же адреса переключая страницы. С использованием не буду врать, таких камней не использовал smile.gif.


Еще раз спрошу - какой компилер используется?

Massi
подключен кеил на фтп который лежит у нас...
бой продолжается...

вопрос в догонку...как на си организован сдвиг содержимого регистра...на ассемблере понятно....а как на си
barabek
Цитата(Massi @ Oct 31 2010, 06:28) *
подключен кеил на фтп который лежит у нас...
бой продолжается...

вопрос в догонку...как на си организован сдвиг содержимого регистра...на ассемблере понятно....а как на си


REG<<=2;


REG>>=3;

REG=REG>>3;

REG=REG<<4;

Любым способом. Но циклического сдвига не получится.

Или Вам нужно посмотреть как компилер это обработает? Тогда  в свойствах проекта, там где листинг выставляете побольше галочек и смотрите файл xxx.LST

F по существу с инициализацией разобрались? Может сюда выложите.




Sujan
Ещё есть вариант что забыли резет через 4-5 кОм притянуть к питанию и повесить между ним и землёй конденсатор ~150 пик.
Пару раз наступал на такие грабли - ведёт себя не предсказуемо.
Причем через C2 коннектится, код заливается, иногда даже пару команд исполнял.
После припайки вышеозначенного глюки совсем пропали.
По большому счёту Silabsам для работы и нужно только эти два компонента (возможно и без кондёра будет пахать) и чтобы питание было и всё, должен коннектится C2 и работать.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.