Цитата(карамболь @ 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, но мне удобней...