PIC с нуля

Поклонники продукции Microchip Technology Inc тусуются тут.
Ответить
Опытный кот
Аватара пользователя
Сообщения: 795
Зарегистрирован: Чт ноя 08, 2012 22:28:05
Откуда: Ижевск

Сообщение Kotto »

Здравствуйте!

Решил начать изучать контролеры микрочипа. Собрал программатор PIC-Kit2, работает. Из железа есть PIC16F684 и PIC16F72. До этого есть опыт рабты с AVR и средой Codevision.

Ассемблер трогать пока не хочется. Какой из компиляторов лучше выбрать со средой разработки, более менее документированную на русском, Язык лучше всего Си.

Попробовал JAL Edit, какое то все странное ужасно, язык не понятно какой, хотя легко так то, документации ноль, по библиотекам не знаю.

Попробовал какую то вариацию СИ, забыл название. Там еще редактор красивый, кнопочки культурные. Тоже инфы очень мало. Наиболее распространенный МПЛАБ, хотелось бы на нем, но я так и не понял как туда прикрутить си и что вообще качать и как ставить )

Где можно чего почитать на русском языке? Только не отправляйте гуглить ) я Оттуда пришел как раз ) Мух от котлет из поиска отделить так и не смог
Контактная информация:
Реклама
Сверлит текстолит когтями
Аватара пользователя
Сообщения: 1231
Зарегистрирован: Ср янв 29, 2014 08:41:31
Откуда: Баку

Сообщение Zhuk72 »

Kotto писал(а):Наиболее распространенный МПЛАБ, хотелось бы на нем, но я так и не понял как туда прикрутить си и что вообще качать и как ставить )
XC8.
Я не ставил, но теоретически предполагаю, что после его установки при запуске нового проекта будет на выбор 2 компилятора: mpasm для ассемблера и ХС8 для С. Выбираете нужный и работаете.
Каждый имеет право на свое личное ошибочное мнение.

У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.
Контактная информация:
Реклама
Опытный кот
Аватара пользователя
Сообщения: 795
Зарегистрирован: Чт ноя 08, 2012 22:28:05
Откуда: Ижевск

Сообщение Kotto »

Да с грехом пополам я все же поставил, вроде даже что то скомпилировалось, а что потом, что почитать, может книга какая именно для этого Си или сайт с уроками, которых для АВР было полно, где объясняется понятными словами. Ведь есть какие то основы, общие для всего семейства пиков
Контактная информация:
Друг Кота
Аватара пользователя
Сообщения: 15658
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

Литература у изготовителя в оригинале,на русском вот тута:
http://www.microchip.ru/lit/?mid=1x0
Ну и прочего... на просторах инета весьма много.
:sleep:
Реклама
Эиком - электронные компоненты и радиодетали
Опытный кот
Аватара пользователя
Сообщения: 795
Зарегистрирован: Чт ноя 08, 2012 22:28:05
Откуда: Ижевск

Сообщение Kotto »

Спасибо за ответ! А так скажем, по проще есть что нибудь? Даташиты конечно хорошо, но разбираться с нуля в среде, в новом МК достаточно тяжеловато по ним
Контактная информация:
Реклама
Опытный кот
Аватара пользователя
Сообщения: 795
Зарегистрирован: Чт ноя 08, 2012 22:28:05
Откуда: Ижевск

Сообщение Kotto »

http://pic-project.ucoz.ru/_ld/0/16_C_for_PIC.pdf

вот что то вроде этого что ли ) для совсем новичков. Чем проще и тщательнее разжевано, тем лучше :)
Контактная информация:
Реклама
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1590
Зарегистрирован: Вс июн 24, 2012 16:07:00
Откуда: Лен.Обл.

Сообщение da-nie »

К MPLab IDE нужно просто скачать на торренте компилятор для нужного семейства (у вас вроде бы MPLAB C Compiller 18, ну или HITECH Сompillers) и установить, он его сам подхватит, насколько я помню. После этого при создании проекта будет выбор компиляторов - там и указывайте установленный.

Вот вам пример простых программ:
Programms.zip
(287.47 КБ) 718 скачиваний
И день и ночь в пути...
Мои программки: https://github.com/da-nie
Мои публикации: https://habr.com/ru/users/da-nie/posts/
Мои видео: https://www.youtube.com/channel/UCUroi3 ... 52g/videos
Контактная информация:
Модератор
Аватара пользователя
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля

Сообщение Аlex »

Kotto писал(а):Даташиты конечно хорошо, но разбираться с нуля в среде, в новом МК достаточно тяжеловато по ним
Интересно, а с чем может быть проще разбираться в МК, как ни с даташитами ?
И причём тут среда и МК ? Вы определитесь, что хотите сначала выучить, IDE, язык или всё-таки сам МК.
Опытный кот
Аватара пользователя
Сообщения: 795
Зарегистрирован: Чт ноя 08, 2012 22:28:05
Откуда: Ижевск

Сообщение Kotto »

Установил MPLAB IDE X, по ссылке, которую я написал выше, вот такая программа дана, минимальная


#include <pic.h>

__CONFIG (INTIO & UNPROTECT & LVPDIS & BOREN & MCLRDIS & PWRTEN &
WDTDIS);

void main (void)
{
}

В визарде выбрал контролер PIC16F628, единственный у меня имеющийся на данный момент, за искл. PIC16F72, но вроде как он совсем древний.

Строка __CONFIG ругается, не хочет компилировать, без нее вроде идет. Но я так понял эта строка аналог фьюзов на AVR?
---

С даташитом разобраться можно будет наверное позже, когда что то более менее в голове уляжется на простых примерах. Даташит не привязан к компилятору. Хотел сначала выбрать PIC C Compiler, он позволяет первое время не задумываться о настройках, выставляя их галочками. Но он их, в отличие от Codevision AVR, куда то прячет, их не видно, какой код он создал с данными настройками. То ли я не правильно гуглю, то ли инфы по пикам для совсем чайников мало.
Контактная информация:
Опытный кот
Аватара пользователя
Сообщения: 795
Зарегистрирован: Чт ноя 08, 2012 22:28:05
Откуда: Ижевск

Сообщение Kotto »

Ну а среда и контролер, так на том же PCW код совсем другой в отличие от MPLAB, русских учебников не нашел ни по тому ни по другому
Контактная информация:
Друг Кота
Аватара пользователя
Сообщения: 25503
Зарегистрирован: Чт янв 10, 2008 22:01:02
Откуда: Московская область, Фрязино

Сообщение КРАМ »

Kotto писал(а):С даташитом разобраться можно будет наверное позже...
:facepalm:
А зачем?
Давайте уж совсем без даташитов...
Вообще то нужно не только даташит на контроллер изучить, но и мануал на компилятор и мануал на cреду разработки (IDE).
Иначе так и будете писать всякие глупости, не умея открывать инструменты в IDE и гадая на кофейной гуще относительно синтаксиса компилятора...
И все это при том, что в MPLAB имеется нормальный хелпер, где есть разделы и по среде и по компиляторам...
Опытный кот
Аватара пользователя
Сообщения: 795
Зарегистрирован: Чт ноя 08, 2012 22:28:05
Откуда: Ижевск

Сообщение Kotto »

Что мне сейчас даст даташит, когда я на MPLAB не могу и строчки написать, даже не понимаю почему программа из 5 строк не работает.

http://www.microchip.ru/files/d-sheets- ... 16f62x.pdf

Все на русском, даже выучив его наизусть я не смогу простую мигалку диодом написать. Все уроки что я нашел по MPLAB заканчиваются его установкой и выбором контролера, за исключением

http://pic-project.ucoz.ru/_ld/0/16_C_for_PIC.pdf

но программа оттуда не работает на MPLAB IDE X
Контактная информация:
Друг Кота
Аватара пользователя
Сообщения: 25503
Зарегистрирован: Чт янв 10, 2008 22:01:02
Откуда: Московская область, Фрязино

Сообщение КРАМ »

А что Вам даст среда, если Вы не знаете ни архитектуры, ни даже названий регистров?
:)
Опытный кот
Аватара пользователя
Сообщения: 795
Зарегистрирован: Чт ноя 08, 2012 22:28:05
Откуда: Ижевск

Сообщение Kotto »

http://avr-start.ru/?p=86

вот с подобных вещей начинал изучать AVR, может подобное есть для пиков? А точнее подобное по СИ, для ассемблера то нашел
Контактная информация:
Друг Кота
Аватара пользователя
Сообщения: 3832
Зарегистрирован: Сб сен 10, 2011 17:46:25

Сообщение oleg110592 »

для xc8 конфиг, например для pic16f628, пишут так:

Код: Выделить всё

#include <xc.h>

#pragma config MCLRE=OFF
#pragma config CP=ON
#pragma config CPD=OFF
#pragma config BOREN=ON
#pragma config WDTE=OFF
#pragma config LVP=OFF
#pragma config PWRTE=ON
#pragma config FOSC=INTOSCIO
Опытный кот
Аватара пользователя
Сообщения: 795
Зарегистрирован: Чт ноя 08, 2012 22:28:05
Откуда: Ижевск

Сообщение Kotto »

Oleg110592, спасибо за ответ!
---

Я понимаю что большинство вопросов и постов тут от меня глупые, но как то мне все же хочется разобраться в хаосе мыслей и самому определиться что мне вообще надо. Как цель более менее разобраться в PIC, хотя бы дойти до умения использовать на них те же ds1307 и ds18b20 с готовыми библиотеками.
Контактная информация:
Друг Кота
Аватара пользователя
Сообщения: 3832
Зарегистрирован: Сб сен 10, 2011 17:46:25

Сообщение oleg110592 »

мне в свое время в изучении помогли примеры для hi-tech pic c, такие: http://320volt.com/en/ornek-hi-tech-pic ... ri-kodlar/
Программы написанные давно на hi-tech pic c, иногда, для поддержки старых проектов, компилирую в xc8. Config приходиться переделывать и название некоторых регистров и битов немного не совпадает, а так все ранее написанное работает.
Вопрос, почему после AVR PIC, логичнее и перспективнее какой нибудь микроконтроллер с ядром ARM Cortex.
Опытный кот
Аватара пользователя
Сообщения: 795
Зарегистрирован: Чт ноя 08, 2012 22:28:05
Откуда: Ижевск

Сообщение Kotto »

Да я не профессионал, любитель паять в свободное время. Захотелось потрогать пики, почему бы и нет ) Тем более не надо покупать дорогой программатор, достаточно купить кусок текстолита и МК для программатора и все. Остальное надергал со старых плат. Может быть и до чего то по серьезнее дойду когда нибудь )
Контактная информация:
Опытный кот
Аватара пользователя
Сообщения: 795
Зарегистрирован: Чт ноя 08, 2012 22:28:05
Откуда: Ижевск

Сообщение Kotto »

Доходит кажется, вот отсюда http://pic-project.ucoz.ru/_ld/0/16_C_for_PIC.pdf

пример не компилировался, потому что стоял не тот компилятор, вроде как был PIC C 30 или что то вроде, не помню точно, на работе среда стоит. Сейчас поставил MPLAB X и PICC8, сразу же скомпилировалось все. Получается для разработки под PIC16F628 и PIC16F72 нужен PICC8? И значит семейство пиков делится на 8 бит и какие то по старше, для которых нужны уже другие компиляторы? Все правильно?
Контактная информация:
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1590
Зарегистрирован: Вс июн 24, 2012 16:07:00
Откуда: Лен.Обл.

Сообщение da-nie »

Получается для разработки под PIC16F628 и PIC16F72 нужен PICC8?
Да. Поэтому я и сказал вам,попробовать C18 или HITECH Сompillers (он как раз вместо C8 идёт хорошо - на rutracker.org я не нашёл C8).
И значит семейство пиков делится на 8 бит и какие то по старше, для которых нужны уже другие компиляторы?
Да.
Но я так понял эта строка аналог фьюзов на AVR?
Да. Хотя можно задавать галочками и в среде программатора.

И не забывайте про список errata (список ошибок в контроллерах) - чем старше семейство и чем сложнее контроллер, тем, обычно, больше ошибок в нём. Даташиты, конечно, читать полезно, но если вы не знаете английского на достаточном уровне (как я - я учил немецкий, а английский сам потихоньку учится на very bad level :) ), то головной боли с пониманием что же там написано можно получить много.
Кортексы для дома берите только если распаять сумеете (как и старшие пики) и нужно много памяти на борту - о самодельщиках уже не думают, так что вытравить для них плату не так уж и просто.
И день и ночь в пути...
Мои программки: https://github.com/da-nie
Мои публикации: https://habr.com/ru/users/da-nie/posts/
Мои видео: https://www.youtube.com/channel/UCUroi3 ... 52g/videos
Контактная информация:
Ответить

Вернуться в «PIC»