Свежие обсуждения
Микроконтроллеры

Ликбез по С для микроконтроллеров PIC

1 36 64

Во первых, у меня PIC, а не AVR.
Во вторых - клава сенсорная...

Ладно, всем спасибо.
Буду пробовать, имея в виду все рекомендации.

 

DWD: у меня PIC, а не AVR.

Си он машинонезависимый и принцип работы тоже.

 

Я СИ не знаю.
Ваяю на асме.

 

DWD: Я СИ не знаю.
Ваяю на асме.

Так есть другой ликбез по асму
Тут ведь начали почему-то...

 

Так вопрос был не по асму, а по пику.

 

Волею злой судьбы стал линуксоидом. Ох и тяжко мне Благо Numlock помогает бедолаге.
Лирика.

Вопрос! Какая среда по человечески работает с пиками на си в линуксе?
Пробовал МпЛаб. Ругается на пропавшие ветки реестра, но вроде работает. Ассемблер компилируется.
CCSC по умолчанию поддерживает только младшие модели (компилятор PCB ). Всего один компилятор. Может если добавить компилятор PCM (и PCH), то всё будет шикарно. Но где его взять?

 

Vladikas: Волею злой судьбы стал линуксоидом.

Сочувствую

Насчёт среды не знаю, может эклипс... Или Code::blocks. Это как кому больше нравится.
А вот насчёт компиляторов - беда... Вроде как sdcc поддерживает пики...
Больше для пиков бесплатных компиляторов Си имхо нет. (Это ещё один пункт, по которому пики - ацтой )

ЗЫ. Привет Нумлоку

 

Шаманил с бубном в винде и скрестил MPLAB IDE v7.52 и CCS PCWH v4.020.
Попробовал откомпилить прогу для среднего семейства, сработало.
Если тот же номер пройдёт в мандриве, то счастью моему не будет предела.

AHTOXA: Насчёт среды не знаю, может эклипс... Или Code::blocks.
Поглядим.

 

http://staim.livejournal.com/tag/linux
Вот так все выглядит.
Это не мое , копирайт .Но чел конкретно решил все задачи:
Разработка для микроконтроллеров MICROCHIP pic18
5/22/07 01:17 am
В своем дипломном проекте я разрабатываю систему управления на базе микроконтроллера Microchip PIC18f452. На кафедре для работы с этими контроллерами используется официальная IDE от Microchip - MPLAB. Среда неплохая, но далекая от совершенства, а главное работающая исключительно под Microsoft Windows. На моем ноутбуке же в основном используется Gentoo Linux, и весь софт для работы с проектируемой системой я писал естественно под Linux на gtk+. Для того, чтобы избежать постоянных перезагрузок при работе над проектом решил поискать вменяемую альтернативу для работы с контроллером под *nix. Перепробовал много альтернатив, включая неудачную попытку запуска среды MPLAB под wine, но в итоге остановился на опенсорсной программе piklab. Здесь я немного расскажу об опяте работы с ней, возможно кому-то в будущем это пригодится:

1) Для начала устанавливаем piklab. Для Gentoo Linux (для других систем можно скачать здесь) это делается так:
а) качаем ebuild
б) создаем папку /usr/local/portage/dev-util/piklab и копируем туда скаченный ebuild
в) добавляем в make.conf строку PORTDIR_OVERLAY=/usr/local/portage (если ее там еще нет)
г) переходим в /usr/local/portage/dev-util/piklab и запускаем: ebuild piklab-0.14.2.ebuild digest && ebuild piklab-0.14.2.ebuild manifest
д) стандартным для Gentoo образом устанавливаем пакет: emerge piklab

2) Далее устанавливаем C-компилятор. (проги на асме мне не годились, ибо слишком много операций с плавающей запятой). Стандартные компиляторы под Linux тоже не подошли, так как некоторые функции там оказались реализованы коряво и код написаный для официального MPLAB C18 не собирался. Пришлось шаманствовать.

а) качаем и устанавливаем wine (под Gentoo - просто emerge wine).
б) качаем с сайта Microchip установочный файл компилятора C18
в) запускаем скаченный файл под wine (wine <имя файла>.exe) и следуем указаниям программы установки
г) теперь надо научить piklab работать с комплятором: Settings -> Configure Toolchains -> C Compiler -> C18 Compiler -> Executable Directory там надо установить следующее: /home/<имя пользователя из под которого запускалась установка в wine>/.wine/drive_c/Program Files/C18/bin/; Executable Type: Windows; Следующие 2 пункта Compiler и Linker должны автоматически выставиться "mcc18" found и "mplink" found соответственно. Ок.
д) Создаем новый проект, компилятором выбираем C18. Все, можно пользоваться.

Особенно радует, что в piklab заработал даже внутрисхемный отладчик ICD2. Причем как ни удивительно - очень стабильно. Под MPLAB он постоянно вылетал, отказывался работать и требовал перезагрузки среды.

Вот так все это выглядит:

 

AHTOXA: Насчёт среды не знаю
Эти среды какие-то не привязанные к железу вообще. Или я ничего не понимаю. Только подсветка синтаксиса может быть полезна...

SDCC - Small Device C Compiler вроде то что надо. Спасип.
----------------------
udar: http://staim.livejournal.com/tag/linux
Блин, ну чё этот линукс такой нечеловеческий......... Спасибо за инфу.