bornbash 0 12 апреля, 2011 Опубликовано 12 апреля, 2011 · Жалоба Доброго времени суток! Перехожу с 16 на 18 архитектуру. В качестве компилятора остановился на Microchip C18. МК - 18F45K22. Проблема состоит в том, что с компилятором (версия 3,36) не идут библиотеки для архитектуры F4(2)xK22, хотя необходимый файл линкера и заголовочный есть. Как можно выйти из положения? Куда копать, чтобы прикрутить уже существующие бибилиотеки (например, от 18F45K20)? зы: С только начинаю осваивать Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Redguy 0 12 апреля, 2011 Опубликовано 12 апреля, 2011 (изменено) · Жалоба Не знаю точно, но на первый взгляд стандартные библиотеки периферии настраиваются в файле "pconfig.h", например: #ifdef __18F45K20 /*############################################################*/ /* Configuration for device = 'PIC18F45K20' */ /*############################################################*/ /* ADC */ #define ADC_V8 /* ECC */ /*No configuration chosen for this peripheral*/ /* CC */ #define CC_V2 /* EPWM */ #define PWM_V11 /* PWM */ #define PWM_V10 /* PCPWM */ /*No configuration chosen for this peripheral*/ /* USART */ #define EAUSART_V5 /* SPI */ #define SPI_V1 /* I2C */ #define I2C_V1 /* TIMERS */ #define TMR_V2 /* EEPROM */ #define EEP_V2 /* PORT_B */ #define PTB_V1 /* ANCOMP */ #define ANCOM_V5 /* MWIRE */ #define MWIRE_V1 /* CTMU */ /*No configuration chosen for this peripheral*/ /* PPS */ /*No configuration chosen for this peripheral*/ /* RTCC */ /*No configuration chosen for this peripheral*/ /* DPSLP */ /*No configuration chosen for this peripheral*/ /* PMP */ /*No configuration chosen for this peripheral*/ /* FLASH */ #define FLASH_V1_2 #endif а вот какие версии отдельных модулей периферии в каком контроллере неизвестно. Там, кстати, есть ещё одна интересная строчка: /* This file is auto generated by the Library Configuration tool. */ Попробуй её найти. Изменено 12 апреля, 2011 пользователем Redguy Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Danis 0 12 апреля, 2011 Опубликовано 12 апреля, 2011 · Жалоба В качестве компилятора остановился на Microchip C18. oops, а вот это зря. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
bornbash 0 14 апреля, 2011 Опубликовано 14 апреля, 2011 · Жалоба oops, а вот это зря. Почему? В качестве альтернативы рассматривал еще MicroC - уж очень там сама среда удобна, да и примеров много, но компилер от фирмы-разработчика, прикрученный к мплабу показался надежнее что ли :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Danis 0 15 апреля, 2011 Опубликовано 15 апреля, 2011 · Жалоба но компилер от фирмы-разработчика, прикрученный к мплабу показался надежнее что ли :) Нет, к сожалению не надежный! По началу может и ничего. Как напишите сотню, другую строк кода, обязательно какой ни будь глюк словите. Искать и устранять его придется часами. C Microchip C18 сталкивался только 1 раз, когда стек TCP от Microchip перенес на PIC18F66J60. Помучился – помучился и поставил крест на С18. Очень уж гав#о. Применяйте лучше Hi-Tech PIC C-compiler если хотите нормально и продуктивно поработать. Этот компилятор нормально в MPLAB встраивается. Но и в этом случае пользоваться периферийной библиотекой не рекомендую, заполнить регистры вручную не так уж и проблематично. http://www.torrenthound.com/hash/668cb0938...piler-v9-60-rar http://www.microchip.com/stellent/idcplg?I...ocName=en542861 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
testerplus 0 15 апреля, 2011 Опубликовано 15 апреля, 2011 · Жалоба Применяйте лучше Hi-Tech PIC C-compiler если хотите нормально и продуктивно поработать. Просто для информации: http://caxapa.ru/236584.html Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
bornbash 0 16 апреля, 2011 Опубликовано 16 апреля, 2011 · Жалоба Всем спасибо. Ну уж первый проект допишу на С18, а там и хайтек попробую... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Ruslan1 17 16 апреля, 2011 Опубликовано 16 апреля, 2011 · Жалоба Всем спасибо. Ну уж первый проект допишу на С18, а там и хайтек попробую... угу. А потом при переходе к dsPIC или PIC32 обратно на майкрочиповский C придется переходить. Так что думайте, освоить одно и дальше продолжать в том же ключе или метаться. А насчет глючности MCC18 сомневаюсь честно говоря, но в перепалку по этому поводу вступать не буду, для 18-х использовал только хайтек. Кстати компилятор тоже не без греха. Были заморочки с некоторыми версиями, но бочку катить не буду, может все-таки ручки у меня кривоваты. Но в любом случае не нужно увлекаться автозаполнялками регистров, может выйти боком в самый неподходящий момент. Кстати, Вы не сказали, на чем ездили когда сидели на 16-й архитектуре. неужто на мпасме? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
bornbash 0 18 апреля, 2011 Опубликовано 18 апреля, 2011 · Жалоба угу. А потом при переходе к dsPIC или PIC32 обратно на майкрочиповский C придется переходить. Так что думайте, освоить одно и дальше продолжать в том же ключе или метаться. А насчет глючности MCC18 сомневаюсь честно говоря, но в перепалку по этому поводу вступать не буду, для 18-х использовал только хайтек. Кстати компилятор тоже не без греха. Были заморочки с некоторыми версиями, но бочку катить не буду, может все-таки ручки у меня кривоваты. Но в любом случае не нужно увлекаться автозаполнялками регистров, может выйти боком в самый неподходящий момент. Кстати, Вы не сказали, на чем ездили когда сидели на 16-й архитектуре. неужто на мпасме? 1. Касательно перехода на хайтек - соображение интересное. Но я имел ввиду "пощупаю", а не перейду - ведь пока сам не попробуешь, сложно что-то утверждать. 2. Ага, именно ассемблер. И очень здорово все было )). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Ruslan1 17 18 апреля, 2011 Опубликовано 18 апреля, 2011 · Жалоба 1. Касательно перехода на хайтек - соображение интересное. Но я имел ввиду "пощупаю", а не перейду - ведь пока сам не попробуешь, сложно что-то утверждать. 2. Ага, именно ассемблер. И очень здорово все было )). Да что тут щупать, относитесь как к молотку. Гвозди удобно забивать- вот и хорошо. А из какого этот молоток сплава- лично мне уже сугубо фиолетово :) Ну, разве что в образовательных целях или для копания в чужих исходниках. Ассемблер. Искренне сочувствую и рекомендую использовать ассемблер только тогда, когда Си не справляется. И не иначе. Я много лет на ассме сидел, базы данных с индексацией и свои библиотеки плавучки на PIC16C74/C77 писал. Так вот сейчас это все вспоминается с некоторой грустью, очень много времени было потеряно без должной аргументации "нафуа это надо?". Не те времена, и тогда и сейчас, всегда можно взять процессор, позволяющий сделать задачу на Си. Остальные случаи можно посчитать на пальцах одной руки фрезеровщика со стажем. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться