Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: вопросы к знатокам для быстрого старта
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > Все остальные микроконтроллеры > MCS51
карамболь
здравствуйте. у меня на руках оказался проект в виде набора исходных файлов, нужно скормить его контроллеру C8051F206. мне удалось найти подходящий кейл, вылечить его от жадности, собрать проект и ,даже, погулять по шагам в симуляторе ) ттеперь вопросы:
1. код написан на Си, где происходит инициализация стека и прочей шняги ? я нашел в примерах несколько стартапов, чем они отличаются и какой подойдет мне ?
2. по поводу стандартных библиотек. чтото много их, чем они отличаются ?
3. по поводу линковки. обычно (на других платформах) я расписывал память вручную, а как в кейле (через свойства или тоже есть специфический файл).
4. есть у меня функция-обработчик прерывания, я ее описал как рекомендовано для этого компилятора
но в дизассемблере по соответствующему адресу перехода на нее не обнаружил
спасибо
Andy-L
Цитата(карамболь @ Oct 7 2008, 11:24) *
здравствуйте. у меня на руках оказался проект в виде набора исходных файлов, нужно скормить его контроллеру C8051F206. мне удалось найти подходящий кейл, вылечить его от жадности, собрать проект и ,даже, погулять по шагам в симуляторе ) ттеперь вопросы:
1. код написан на Си, где происходит инициализация стека и прочей шняги ? я нашел в примерах несколько стартапов, чем они отличаются и какой подойдет мне ?
2. по поводу стандартных библиотек. чтото много их, чем они отличаются ?
3. по поводу линковки. обычно (на других платформах) я расписывал память вручную, а как в кейле (через свойства или тоже есть специфический файл).
4. есть у меня функция-обработчик прерывания, я ее описал как рекомендовано для этого компилятора
но в дизассемблере по соответствующему адресу перехода на нее не обнаружил
спасибо

Один из корифеев 51-го Кейла Саша Бельченко - вот его сайт:
http://onembedding.bialix.com/tools/keil/articles/
, может что полезного найдете, а можно и лично его поспрошать
карамболь
Цитата(Andy-L @ Oct 7 2008, 12:08) *
Один из корифеев 51-го Кейла Саша Бельченко - вот его сайт:
http://onembedding.bialix.com/tools/keil/articles/
, может что полезного найдете, а можно и лично его поспрошать


спасибо
barabek
Цитата(карамболь @ Oct 7 2008, 18:24) *
здравствуйте. у меня на руках оказался проект в виде набора исходных файлов, нужно скормить его контроллеру C8051F206. мне удалось найти подходящий кейл, вылечить его от жадности, собрать проект и ,даже, погулять по шагам в симуляторе ) ттеперь вопросы:
1. код написан на Си, где происходит инициализация стека и прочей шняги ? я нашел в примерах несколько стартапов, чем они отличаются и какой подойдет мне ?
2. по поводу стандартных библиотек. чтото много их, чем они отличаются ?
3. по поводу линковки. обычно (на других платформах) я расписывал память вручную, а как в кейле (через свойства или тоже есть специфический файл).
4. есть у меня функция-обработчик прерывания, я ее описал как рекомендовано для этого компилятора
но в дизассемблере по соответствующему адресу перехода на нее не обнаружил
спасибо


1. Обычно, если не указано явно, то подключается startup.a51 из \keil\c51\lib автоматом. Если это не устраивает, лучше делать так: копировать его в папку со своим проектом в качестве шаблона, модифицировать, а затем включить его в проект (правой кнопкой на папке проекта) и выставить ему "build" (правой кнопкой на самом файле - все в окошке project window).
2. Не совсем понял. Если во 2-м кейле, то там же в project window есть вкладка "books", а в ней "c51 library function". Расписаны фунции и в каких файлах прописаны - весьма удобно.
3. Если нужно распределять память данных, то для этого служат модификаторы data,idata,xdata - первые 128 байт с прямой адресацией, верхние 128 с косвенной только и внешняя память (но она может находиться и внутри МК) соответственно. например: unsigned int data * idata pointer; <- указатель на данные в области прямой адресации хранящийся в области idata.
4. Трудно сказать без кода. Но Вы можете в силабовской IDE посмотреть действительное содержимое ячеек области кода (иконка CODE)после прошивки МК для достоверности. Наверно можно это сделать и Keil IDE, но мне удобней...
карамболь
всем спасибо, вроде заработало как задумано )
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.