Универсальный внешний накопитель для всех iOS-устройств, совместим с PC/Mac, Android
Header Banner
8 800 100 5771 | +7 495 540 4266
c 9:00 до 24:00 пн-пт | c 10:00 до 18:00 сб
0 Comments

Содержание

Средства программирования PIC-контроллеров / Хабр

Введение

PIC-контроллеры остаются популярными в тех случаях, когда требуется создать недорогую компактную систему с низким энергопотреблением, не предъявляющую высоких требований по ее управлению. Эти контроллеры позволяют заменить аппаратную логику гибкими программными средствами, которые взаимодействуют с внешними устройствами через хорошие порты.

Миниатюрные PIC контроллеры хороши для построения преобразователей интерфейсов последовательной передачи данных, для реализации функций «прием – обработка – передача данных» и несложных регуляторов систем автоматического управления.

Компания Microchip распространяет MPLAB — бесплатную интегрированную среду редактирования и отладки программ, которая записывает бинарные файлы в микроконтроллеры PIC через программаторы.

Взаимодействие MPLAB и Matlab/Simulink позволяет разрабатывать программы для PIC-контроллеров в среде Simulink — графического моделирования и анализа динамических систем.

В этой работе рассматриваются средства программирования PIC контроллеров: MPLAB, Matlab/Simulink и программатор PIC-KIT3 в следующих разделах.

• Характеристики миниатюрного PIC контроллера PIC12F629
• Интегрированная среда разработки MPLAB IDE
• Подключение Matlab/Simulink к MPLAB
• Подключение программатора PIC-KIT3

Характеристики миниатюрного PIC-контроллера

Семейство РIС12ххх содержит контроллеры в миниатюрном 8–выводном корпусе со встроенным тактовым генератором. Контроллеры имеют RISC–архитектуру и обеспечивают выполнение большинства команд процессора за один машинный цикл.

Для примера, ниже даны характеристики недорогого компактного 8-разрядного контроллера PIC12F629 с многофункциональными портами, малым потреблением и широким диапазоном питания [1].

• Архитектура: RISC
• Напряжение питания VDD: от 2,0В до 5,5В (< 6,5В)
• Потребление:
— <1,0 мА @ 5,5В, 4МГц
— 20 мкА (тип) @ 32 кГц, 2,0В
— <1,0 мкА (тип) в режиме SLEEP@2,0В
• Рассеиваемая мощность: 0,8Вт
• Многофункциональные каналы ввода/вывода: 6/5
• Максимальный выходной ток портов GPIO: 125мА
• Ток через программируемые внутренние подтягивающие резисторы портов: ≥50 (250) ≤400 мкА @ 5,0В
• Разрядность контроллера: 8
• Тактовая частота от внешнего генератора: 20 МГц
Длительность машинного цикла: 200 нс
• Тактовая частота от внутреннего RC генератора: 4 МГц ±1%
Длительность машинного цикла: 1мкс
• FLASH память программ: 1К
Число циклов стирание/запись: ≥1000
• ОЗУ память данных: 64
• EEPROM память данных: 128
Число циклов стирание/запись: ≥10K (-40оС ≤TA≤ +125 оС)
• Аппаратные регистры специального назначения: 16
• Список команд: 35 инструкций, все команды выполняются за один машинный цикл,
кроме команд перехода, выполняемых за 2 цикла
• Аппаратный стек: 8 уровней
• Таймер/счетчик ТМR0: 8-разрядный с предделителем
• Таймер/счетчик ТМR1: 16-разрядный с предделителем

Дополнительные особенности:

• Сброс по включению питания (POR)
• Таймер сброса (PWRTтаймер ожидания запуска генератора (OST
• Сброс по снижению напряжения питания (BOD)
• Сторожевой таймер WDT
• Мультиплексируемый вывод -MCLR
• Система прерываний по изменению уровня сигнала на входах
• Индивидуально программируемые для каждого входа подтягивающие резисторы
• Программируемая защита входа
• Режим пониженного энергопотребления SLEEP
• Выбор режима работы тактового генератора
• Внутрисхемное программирование ICSP с использованием двух выводов
• Четыре пользовательские ID ячейки

Предельная рабочая температура для Е исполнения (расширенный диапазон) от -40оС до +125 оС;
Температура хранения от -65оС до +150 оС.

КМОП технология контроллера обеспечивает полностью статический режим работы, при котором остановка тактового генератора не приводит к потере логических состояний внутренних узлов.
Микроконтроллер PIC12F629 имеет 6-разрядный порт ввода/вывода GPIO. Один вывод GP3 порта GPIO работает только на вход, остальные выводы можно сконфигурировать для работы как на вход так и на выход. Каждый вывод GPIO имеет индивидуальный бит разрешения прерываний по изменению уровня сигнала на входах и бит включения внутреннего подтягивающего резистора.

Интегрированная среда разработки MPLAB IDE

MPLAB IDE — бесплатная интегрированная среда разработки ПО для микроконтроллеров PIC включает средства для создания, редактирования, отладки, трансляции и компоновки программ, записи машинного кода в микроконтроллеры через программаторы.

Загрузка MPLAB IDE

Бесплатные версии MPLAB (включая MPLAB 8.92) хранятся на сайте компании Microchip в разделе «DOWNLOAD ARCHIVE».

Создание проекта

Пример создания проекта программ PIC контроллера в среде MPLAB включает следующие шаги [2].

1. Вызов менеджера проекта.

2. Выбор типа PIC микроконтроллера.

3. Выбор компилятора, например, Microchip MPASM для ассемблера.

4. Выбор пути к каталогу проекта (клавиша Browse…) и ввод имени проекта.

5. Подключение файлов к проекту в окне Project Wizard → Step Four можно не выполнять. Это можно сделать позднее, внутри активного проекта. Клавиша Next открывает следующее окно.

6. Завершение создания проекта (клавиша Finish).

В результате создания проекта FirstPrMPLAB интерфейс MPLAB принимает вид, показанный на Рис. 1.


Рис. 1. Интерфейс среды MPLAB v8.92 и шаблон проекта.

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

Создание программы в MPLAB можно выполнить в следующей последовательности.

1. Открыть редактор программ: меню → File → New. Изначально программе присвоено имя Untitled.

2. Набрать или скопировать программу, например, на ассемблере.

3. Сохранить программу под другим именем (меню → File → Save As), например, FirstPrMPLAB.asm.


Рис. 2. Пример простейшей программы (на ассемблере) вывода сигналов через порты контроллера GP0, GP1, GP2, GP4, GP5 на максимальной частоте.

Запись ‘1’ в разряде регистра TRISIO переводит соответствующий выходной буфер в 3-е состояние, в этом случае порт GP может работать только на вход. Установка нуля в TRISIO настраивает работу порта GP на выход.

Примечание. По спецификации PIC12F629 порт GP3 микроконтроллера работает только на вход (соответствующий бит регистра TRISIO не сбрасывается – всегда находится в ‘1’).

Регистры TRISIO и GPIO находятся в разных банках области памяти. Переключение банков выполняется 5-м битом регистра STATUS.

Любая программа на ассемблере начинается директивой org и заканчивается директивой end. Переход goto Metka обеспечивает циклическое выполнение программы.

В программе (Рис. 2) используются следующие обозначения.

Директива LIST — назначение типа контроллера
Директива __CONFIG — установка значений битов конфигурации контроллера
Директива equ — присвоение числового значения
Директива org 0 — начало выполнения программы с адреса 0
Команда bsf — устанавливает бит указанного регистра в 1
Команда bсf — сбрасывает бит указанного регистра в 0
Команда movlw — записывает константу в регистр W
Команда movwf — копирует содержимое регистра W в указанный регистр
Команда goto — обеспечивает переход без условия на строку с меткой
Директива end — конец программы

Установка требуемой конфигурации микроконтроллера
Конфигурация микроконтроллера PIC12F629 зависит от настроек слова конфигурации (2007h), которые можно задать в программе через директиву __CONFIG.

Непосредственно или через окно MPLAB: меню → Configure → Configuration Bits:

Где:

Бит 2-0 — FOSC2:FOSC0. Выбор тактового генератора
111 — Внешний RC генератор. Подключается к выводу GP5. GP4 работает как CLKOUT
110 — Внешний RC генератор. Подключается к выводу GP5. GP4 работает как ввод/вывод
101 — Внутренний RC генератор 4МГц. GP5 работает как ввод/вывод. GP4 — как CLKOUT
100 — Внутренний RC генератор 4МГц. GP5 и GP4 работают как ввод/вывод
011 — EC генератор. GP4 работает как ввод/вывод. GP5 — как CLKIN
010 — HC генератор. Резонатор подключается к GP4 и GP5
001 — XT генератор. Резонатор подключается к GP4 и GP5
000 — LP генератор. Резонатор подключается к GP4 и GP5

Бит 3 — WDTE: настройка сторожевого таймера (Watchdog Timer)

1 — WDTE включен
0 — WDTE выключен

Сторожевой таймер предохраняет микроконтроллер от зависания – перезапускает программу через определенный интервал времени если таймер не был сброшен. Период таймера устанавливается в регистре OPTION_REG. Обнуление сторожевого таймера вызывается командой CLRWDT.

Бит 4 — PWRTE: Разрешение работы таймера включения питания:
1 — PWRT выключен
0 — PWRT включен

Таймер задерживает микроконтроллер в состоянии сброса при подаче питания VDD.

Бит 5 — MCLR: Выбор режима работы вывода GP3/-MCLR
1 — работает как -MCLR
0 — работает как порт ввода-вывода GP3

Бит 6 — BODEN: Разрешение сброса по снижению напряжения питания (как правило < 2.0В)
1 — разрешен сброс BOR

0 — запрещен сброс BOR автоматически включается таймер

При разрешении сброса BOR автоматически включается таймер PWRT

Бит 7 — .CP: Бит защиты памяти программ от чтения программатором
1 Защита выключена
0 Защита включена

При выключения защиты вся память программ стирается

Бит 8 — .CPD: Бит защиты EPROM памяти данных
1 Защита выключена
0 Защита включена

После выключения защиты вся информация будет стерта

Бит 11-9 — Не используются: Читается как ‘1’.

Бит 13-12 — BG1:BG0. Биты калибровки сброса по снижению питания
00 — нижний предел калибровки
11 — верхний предел калибровки

Добавление программы к проекту

Пример добавления программы к проекту показан на (Рис. 3).

Рис. 3. Добавление программы FirstPrMPLAB.asm к проекту FirstPrMPLAB.mcp

Сохранить материалы проекта можно командой: меню → File → Save Workspace.

Компиляция

Чтобы создать бинарный файл с расширением hex для прошивки микроконтроллера необходимо откомпилировать проект. Запуск компиляции выполняется командой меню → Project → Build All. Результаты компиляции можно увидеть в окне Output (Рис. 1). Если в программе нет ошибок, то компилятор выдаёт сообщение об успешной компиляции: BUILD SUCCEEDED, загрузочный HEX файл можно найти в рабочем каталоге:


Отладка программы

Отладку программы в среде MPLAB IDE можно выполнить при помощи аппаратного эмулятора MPLAB REAL ICE или программного симулятора MPLAB SIM. Запуск последнего выполняется как показано на Рис. 4.

Рис. 4. Подключение к симулятору MPLAB SIM для отладки программы.

После запуска отладчика в окне Output (Рис. 1) появляется закладка MPLAB SIM, куда MPLAB выводит текущую информацию отладчика. Команды отладчика (Рис. 5) после запуска становятся активными.

Рис. 5. Команды отладчика.

Команды отладчика:

• Run — Непрерывное выполнение программы до точки останова (Breakpoint) если таковая установлена.
• Halt — Остановка программы на текущем шаге выполнения.
• Animate — Анимация непрерывного выполнения программы.
• Step Into — Выполнение по шагам (вызовы Call выполняются за один шаг).
• Step Over — Выполнение по шагам включая команды вызовов Call.
• Reset — Начальная установка программы. Переход указателя на первую команду.
• Breakpoints — Отображение списка точек останова. Обработка списка.

При выполнении программы по шагам текущий шаг выделяется стрелкой (Рис. 6). Непрерывное выполнение программы останавливается командой Halt или достижением программой точки останова. Точка останова устанавливается/снимается в строке программы двойным щелчком.
Пример программы на ассемблере, которая с максимальной скоростью меняет состояние портов контроллера показан на Рис. 6 (справа). Программа передаёт в регистр портов GPIO данные b’10101010’ и b’01010101’. Поскольку в регистре GPIO передачу данных в порты контроллера выполняют не все разряды, а только 0,1,2,4 и 5, то состояние регистра GPIO (Рис. 6, слева) отличается значениями: b’00100010’ и b’00010101’.


Рис. 6. Состояние регистров специального назначения контроллера на момент выполнения программы (слева) и выполняемая по шагам программа (справа).

В процессе отладки можно наблюдать за состоянием регистров, переменных, памяти в соответствующих окнах, открываемых в разделе View основного меню. В процессе отладки можно вносить изменения в код программы, содержимое регистров, памяти, изменять значения переменных. После изменения кода необходимо перекомпилировать программу. Изменение содержимого регистров, памяти и значения переменных (окна раздела View: Special Function Register, File Register, EEPROM, Watch) не требует перекомпиляции.

Входные сигналы портов модели микроконтоллера можно задать в разделе Debugger → Stimulus. Устанавливаемые состояния сигналов портов привязываются к времени (тактам) отладки.

Иногда результаты выполнения программы в режиме отладки не соответствуют выполнению этой же программы в реальном контроллере, так, например, отладчик программы (Рис. 6) без инструкций movlw 0x07 и movwf cmcon показывает, что выходы GP0 и GP1 регистра GPIO не изменяются — находятся в нулевом состоянии, содержимое регистра GPIO попеременно равно 0x14 и 0х20. Однако, контроллер, выполняющий программу без указанных инструкций, показывает на осциллографе циклическую работу всех пяти выходов: 0x15 и 0х22, включая GP0 и GP1 (см. Рис. 7).

Осциллограммы контроллера, выполняющего циклы программы Рис. 6 (Metka… goto Metka) показаны на Рис. 7.


Рис. 7. Осциллограммы выхода GP0 (слева) и GP1 (справа) микроконтроллера PIC12F629, работающего от внутреннего 4МГц RC генератора. Программа (Рис. 6) формирует сигналы максимальной частоты на всех выходах контроллера. За период сигналов 5.3 мкс выполняется 5 команд (6 машинных циклов), амплитуда GP0 сигнала на осциллограмме равна 4.6В, измеренное программатором питание контроллера 4.75В.

Прошивка микроконтроллера

Для записи программы в микроконтроллер (прошивки контроллера) необходимо микроконтроллер подключить к интегрированной среде MPLAB IDE через программатор. Организация подключения показана ниже в разделе «Подключение программатора PIC-KIT3».

Примечание. В контроллер PIC12F629 записана заводская калибровочная константа настройки частоты внутреннего тактового генератора. При необходимости её можно прочитать и восстановить средствами MPLAB с использованием программатора.

Команды для работы с программатором и изменения его настроек находятся в меню MPLAB Programmer. Тип программатора в MPLAB выбирается в разделе: меню → Programmer → Select Programmer.

Рис. 8. Выбор программатора для подключения к среде MPLAB.

Прошивка микроконтроллера через программатор запускается командой: меню → Programmer → Program. Сообщение об успешной прошивке показано на Рис. 9.

Рис. 9. Запуск прошивки микроконтроллера и вид сообщения об успешной прошивке.

Примечание: Во время прошивки микроконтроллера у программатора PIC-KIT3 мигает желтый светодиод.

Подключение MATLAB/SIMULINK к MPLAB

В системе моделирования динамических систем Simulink (приложение к Matlab) на языке графического программирования [7] можно разрабатывать программы для семейства PIC контроллеров имеющих АЦП/ЦАП, счетчики, таймеры, ШИМ, DMA, интерфейсы UART, SPI, CAN, I2C и др.

Пример Simulink программы PIC контроллера показан на Рис. 10.

Рис. 10. Пример программы на языке графического программирования для PIC контроллера выполненной в среде моделирования динамических систем Simulink.

Взаимодействие средств разработки и компиляции программ для PIC контроллеров в Simulink показано на Рис. 11 [6].

Рис. 11. Структура средств построения адекватной модели PIC контроллера на языке графического программирования.

Для построения среды разработки необходимы следующие компоненты Matlab:

• Simulink
• Real-Time Workshop Embedded Coder
• Real-Time Workshop

И Cи компилятор компании Microchip:

• C30 для контроллеров PIC24, dsPIC30 и PIC33
• или C32 для контроллеров серии PIC32

Установка компонентов Matlab

На сайте имеются Simulink библиотеки (dsPIC Toolbox) для PIC контроллеров и версий Matlab c R2006a по R2012a:

Для скачивания библиотеки необходимо зарегистрироваться. Программы поддерживают работу 100 микроконтроллеров из серий PIC 16MC, 24F, 30F, 32MC, 33F, 56GP, 64MC, 128MC, 128GP.
Бесплатные версии работают с Simulink моделями PIC контроллеров имеющих до 7 портов ввода-вывода.

Для установки dsPIC Toolbox — библиотеки блоков PIC контроллеров для Matlab/Simulink необходимо [4]:

• Скачать dsPIC Toolbox для требуемой версии Matlab.
• Распаковать zip файл в папке, в которой будут установлены Simulink блоки.
• Запустить Matlab.
• Настроить текущий каталог Matlab на папку с распакованным файлом.
• Открыть и запустить файл install_dsPIC_R2012a.m, например, кнопкой меню или клавишей клавиатуры.

Библиотеки dsPIC и примеры Simulink моделей устанавливаются в текущую папку Matlab (Рис. 12). Установленные блоки для моделирования PIC контроллеров доступны в разделе Embedded Target for Microchip dsPIC библиотеки Simulink (Рис. 13).

Рис. 12. Содержимое текущего каталога после выполнения install_dsPIC_R2012a. m.

Рис. 13. Блоки, установленной библиотеки «Embedded Target for Microchip dsPIC».

Для совместной компиляции Simulink модели средствами Matlab и MPLAB необходимо прописать в переменной окружения path Matlab с высшим приоритетом путь к каталогу MPLAB с файлами MplabOpenModel.m, MplabGetBuildinfo.m и getHardwareConfigs.m:

>> path('c:\Program Files (x86)\Microchip\MPLAB IDE\Tools\MATLAB\',path) 

Установка Си компилятора MPLAB

Компиляторы MPLAB находятся на сайте Microchip (Download Archive → MPLAB C Compiler for PIC24 and dsPIC DSCs). Для установки демонстрационной версии компилятора С30 необходимо его скачать по ссылке PIC24/dsPIC v3.25 (Рис. 14) и запустить принятый файл mplabc30-v3.25-comboUpgrade.exe.

Рис. 14. Версии Си компилятора (слева) и режимы его установки (справа).

Примечание. Работа выполнена с версией v3. 25 компилятора С30 для PIC24/dsPIC. Проверка показала, что следующая версия v3.30 не поддерживает совместную компиляцию моделей Matlab R2012a (dsPIC Toolbox) без ошибок.

Установочный exe файл создаёт в разделе c:\Program Files (x86)\Microchip\ новый каталог mplabc30 с файлами:

Рис. 15. Каталоги компилятора C30 MPLAB.

Последовательность Simulink программирования для PIC контроллеров

1. Создайте рабочий каталог и скопируйте в него *.mdl примеры из раздела example (см. Рис. 12).
2. Загрузите Matlab. Настройте его на рабочий каталог.
3. Включите в переменную окружения path Matlab с высшим приоритетом путь к MPLAB — каталогу c:\Program Files (x86)\Microchip\MPLAB IDE\Tools\MATLAB\:

>> path('c:\Program Files (x86)\Microchip\MPLAB IDE\Tools\MATLAB\',path) 

Примечание: Использование команды >>path без аргументов приводит к отображению списка путей переменной path в окне команд (Command Window). Удалить путь из переменной path можно командой rmpath, например:

>>rmpath(' c:\Program Files\Microchip\MPLAB IDE\Tools\MATLAB\')

4. Создайте Simulink модель для PIC контроллера, используя блоки библиотеки «Embedded Target for Microchip dsPIC» (Рис. 13), или загрузите готовую модель, например, Servo_ADC.mdl.

Тип контроллера, для которого разрабатывается Simulink модель, выбирается из списка в блоке Master > PIC (Рис. 16, Рис. 10), который должен быть включен в состав модели.

Рис. 16. Выбор типа контроллера в блоке Master модели.

5. Проверьте настройки конфигурации модели: Меню → Simulation → Configuration Parameters <Ctrl+E>. В строке ввода System target file раздела Code Generation должен быть указан компилятор S-функций dspic.tlc (Рис. 17). Выбор dspic.tlc настраивает все остальные параметры конфигурации модели, включая шаг и метод интегрирования.

Рис. 17. Выбор компилятора S-функций dspic.tlc для моделей PIC-контроллеров в разделе «основное меню → Simulation → Configuration Parameters → Code Generation».

6. Откомпилируйте модель tmp_Servo_ADC.mdl. Запуск компилятора показан на Рис. 18.

Рис. 18. Запуск компилятора Simulink модели.

В результате успешной компиляции (сообщение: ### Successful completion of build procedure for model: Servo_ADC) в текущем каталоге создаются HEX файл для прошивки PIC контроллера и MCP проект среды MPLAB (Рис. 19).

Рис. 19. Результаты компиляции модели.

Запуск модели в Matlab/Simulink выполняется в окне модели кнопкой, условное время моделирования устанавливается в строке:

Управление компиляцией Simulink моделей из среды MPLAB

Управление компиляцией Simulink модели можно выполнять командами раздела Matlab/Simulink среды MPLAB, например, в следующем порядке.

1. Разработайте модель PIC контроллера в Matlab/Simulink. Сохраните модель.
2. Запустите MPLAB.
3. Выберите MPLAB меню → Tools → Matlab/Simulink и новый раздел появится в составе меню.

4. В разделе Matlab/Simulink откройте Simulink модель, например, Servo_ADC, командой «Matlab/Simulink → Specify Simulink Model Name → Open → File name → Servo_ADC.mdl → Open». Команда Open запускает Matlab и открывает модель.

5. Откомпилируйте модель и создайте MCP проект командами Generate Codes или Generate Codes and Import Files. Перевод MDL модели в MCP проект выполняется TLC компилятором Matlab.
В результате создаётся проект MPLAB:

со скриптами модели на языке Си.

6. Откройте проект: меню → Project → Open → Servo_ADC.mcp (Рис. 20).

Рис. 20. Структура MCP проекта Simulink модели Servo_ADC.mdl в среде MPLAB.
Проект Simulink модели готов для редактирования, отладки и компиляции в машинные коды контроллера средствами MPLAB.

Подключение программатора PIC-KIT3

Узнать какие программаторы записывают бинарный код в конкретный микроконтроллер можно в разделе меню → Configure → Select Device среды MPLAB 8.92. Например, программатор PIC-KIT3 не поддерживает контроллер PIC12C508A (Рис. 21, левый рисунок), но работает с контроллером PIC12F629 (Рис. 21, правый рисунок).

Рис. 21. Перечень программаторов для прошивки микроконтроллера.

Информацию об установленном драйвере программатора PIC-KIT3 можно запросить у менеджера устройств ОС Windows (Рис. 22).

Рис. 22. Информация об установленном драйвере программатора PIC-KIT3.

Схема подключения микроконтроллера PIC12F629 к программатору PIC-KIT3 показана на Рис. 23.

Рис. 23. Схема подключения микроконтроллера PIC12F629 к программатору PIC-KIT3.

Вывод PGM программатора для прошивки контроллеров PIC12F629 не используется. Наличие вывода PGM для разных типов PIC контроллеров показано на Рис. 24. Вывод PGM рекомендуется «притягивать» к общему проводу (GND), через резистор, номиналом 1К [3].

Рис. 24. Выводы PGM PIC контроллеров.

Индикация светодиодов программатора Olimex PIC-KIT3 показана в ниже:

Желтый — Красный — Состояние программатора
Вкл — Выкл — Подключен к USB линии
Вкл — Вкл — Взаимодействие с MPLAB
Мигает — Включен постоянно — Прошивка микроконтроллера

Не следует подключать питание микроконтроллера VDD (Рис. 23) к программатору, если контроллер запитывается от своего источника питания.

При питании микроконтроллера от программатора на линии VDD необходимо установить рабочее напряжение, например, 5В программой MPLAB (Menu → Programmer → Settings → Power), как показано на Рис. 25.

Примечание. При отсутствии напряжения на линии VDD MPLAB IDE выдает сообщение об ошибке: PK3Err0045: You must connect to a target device to use

Рис. 25. Установка напряжения VDD на программаторе PIC-KIT3 программой MPLAB IDE v8.92.

Если программатор не может установить требуемое напряжение, например, 5В при его питании от USB, в которой напряжение меньше 5В, MPLAB IDE выдает сообщение об ошибке: PK3Err0035: Failed to get Device ID. В этом случае, сначала необходимо измерить напряжение программатора — считать его в закладке меню → Programmer → Settings → Status, а затем установить напряжение (не больше измеренного) в закладке меню → Programmer → Settings → Power.

Рис. 26. Измерение (слева) и установка (справа) VDD напряжения программатора PIC-KIT3 программой MPLAB IDE v8.92.

Пример MPLAB сообщения успешного подключения микроконтроллера к программатору по команде меню → Programmer → Reconnect показан на Рис. 27.

Рис. 27. Сообщение MPLAB об успешном подключении микроконтроллера к программатору.

Можно программировать не только отдельный PIC контроллер, но и контроллер, находящийся в составе рабочего устройства. Для программирования PIC контроллера в составе устройства необходимо предусмотреть установку перемычек и токоограничивающих резисторов как показано на Рис. 28 [3].

Рис. 28. Подключение микроконтроллера в составе электронного устройства к программатору.

Заключение

Малоразрядные PIC-контроллеры имеют широкий диапазон питания, низкое потребление и малые габариты. Они программируются на языках низкого уровня. Разработка программ на языке графического программирования Simulink с использованием многочисленных библиотек значительно сокращает время разработки и отладки в сравнении с программированием на уровне ассемблера. Разработанные для PIC-контроллеров Simulink структуры можно использовать и для компьютерного моделирования динамических систем с участием контроллеров. Однако, из-за избыточности кода такой подход применим только для семейств PIC контроллеров с достаточными ресурсами.

Библиографический список

1. PIC12F6XX. Однокристальные 8-разрядные FLASH CMOS микроконтроллеры компании Microchip Technology Incorporated. PIC12F629, PIC12F675. OOO “Микро-чип”. Москва – 2002.
2. Microchip. MPLAB IDE. User’s Guide with MPLAB Editor and MPLAB SIM Simulator
3. ICSP — Внутрисхемное программирование PIC-контроллеров DOC Rev 1.03 (последнее обновление 19.05.2005)
4. MPLAB IDE Help: MATLAB.
5. Introduction to Microchip-SIMULINK Blocksets and MATLAB Plug-in for MPLABIDE Produced by Murali Manohara Chembarpu.
6. Embedded Target for 16 bits PIC.
7. Dr. Bob Davidov. Портал научно-практических публикаций

Частотомер на PIC16F73 и семисегментных индикаторах

  1. Главная|
  2. Устройства|
  3. Microchip
Просмотров: 56037

Семисегментный индикатор Частотомер PIC16F73 AD8561

Предлагаемый частотомер собран на микроконтроллере и семисегментных светодиодных индикаторах с общим катодом. Его разрешающая способность составляет 0,1 Гц, что может быть полезным при проведении точных измерений.

Основные технические характеристики

Диапазон измеряемых частот, МГц …………….0.1 Гц…40
Время измерения частоты, с . .1 или 10
Чувствительность, В………….0,1
Напряжение питания, В   …….4,5. .5
Потребляемый ток, мА:
в режиме ожидания……….10
максимальный   ………..35

Схема частотомера показана на рис. 1 На входе устройства установлен компаратор DA1, который включен по типовой схеме с инвертирущим входом. Порог срабатывания компаратора можно изменять подборкой резистора R4 — чем больше его сопротивление, тем выше порог. Работа компаратора управляется сигналом на входе LATCH (вывод 5) DA1 который поступает с линии порта RA3 (вывод 5 DD1), и разрешена при низком логическом уровне на этом входе.

Рисунок 1

Порт В микроконтроллера DD1 задействован для подачи напряжения на элементы а—h индикаторов HG1. HG2, а порт С — для подключения катодов этих индикаторов к общему проводу. Резистор R7 является “подтягивающим” для линии порта RAO, a R6 уменьшает влияние на компаратор DA1 импульсов, поступающих на вход предделителя в режиме досчета. Резисторы R8—R15 токоограничивающие от их сопротивлений зависит яркость свечения индикаторов HG1, HG2.

Входной сигнал преобразуется компаратором DA1 в прямоугольные импульсы с уровнями ТТЛ, которые поступают на вход микроконтроллера для их дальнейшего счета Восьмиразрядные регистры предделителя, таймера TMR0 и двух счетчиков прерывания по переполнению TMR0 подсчитывают эти импульсы. Измерительный интервал задает таймер TMR1.

Информация в регистрах таймера TMR0 и счетчиков доступна для чтения, а вот содержимое высокочастотного (до 90 МГц) регистра предделителя недоступно. Поэтому для извлечения информации, хранящейся в нем, применен ставший уже классическим способ досчета импульсов до переполнения предделителя. После остановки счета значение TMR0 сохраняется в цифровом компараторе. Число поданных на вход предделителя импульсов подсчитывается, и после каждого импульса сравниваются текущее и сохраненное значения TMR0. При изменении текущего значения TMR0 подача импульсов на предделитель прекращается. Накопленное в младшем регистре число, преобразованное в дополнительный код, и будет тем числом, которое было в предделителе. Двоичный код на выходах четырех восьмиразрядных регистров преобразуется в двоично-десятичный, а затем в код для управления семиэлементными индикаторами.

После подачи питающего напряжения осуществляется инициализация регистров микроконтроллера. Частота переключения разрядов при динамической индикации должна быть такой, чтобы не было видно мерцания индикатора. Как известно, эта частота должна быть не ниже 25 Гц. Выбранная длительность индикации одного разряда на восьмиразрядном индикаторе составляет 3 мс, поэтому частота переключения F= 1/Т= 1/(0,003-8) = 41,7 Гц, где F — частота обновления индикатора; Т — период. При такой частоте мерцание индикатора не заметно.

Периодически микроконтроллер проверяет состояние контактов кнопки SB1. Если кнопка нажата, то состояние флага времени измерения изменяется на противоположное, при этом также изменяется положение запятой на индикаторе. Далее последовательно на индикатор выводится информация остальных разрядов. Последовательность вывода на индикацию нарушается только прерываниями.

В программе использованы два прерывания: одно — по результату сравнения значений шестнадцатеразрядных регистров специального события (CCPR1H и CCPR1L) и регистров таймера TMR1 (TMR1H и TMR1L). другое — по переполнению таймера TMR0. Регистры ССР1 и TMR1 используются для формирования временного интервала измерения частоты. Делитель на 10 для получения временного интервала 1 с и еще один делитель на 10 для получения интервала 10 с реализованы на отдельных регистрах, которые заполняются при прерывании

После сохранения значений контекстных регистров проверяются флаги прерывания. Если прерывание произошло по переполнению таймера TMR0. то инкрементируется счетчик и программа выходит из прерывания. При прерывании по результату сравнения модуля ССР1 заполняется регистр делителя на 10 и проверяется флаг времени измерения. Если установлено время измерения 10 с заполняется регистр делителя на 10. После окончания времени измерения выполняются досчет и определение содержимого предделителя. Полученные данные перекодируются в девять разрядов двоично-десятичного кода. Для экономии энергии батарей портативного прибора все незначащие нули гасятся. При выполнении операций во время прерываний работа таймеров TMR0 и TMR1 не останавливается, поэтому цикл измерения повторяется непрерывно

В устройстве применены резисторы С2-23, Р1-4, оксидный конденсатор — импортный, остальные керамические — К10-17. Компаратор AD8611 можно заменить на компаратор AD8561, кварцевый резонатор ZQ1 — HC-49U Кнопки SB1 и SB2 с самовозвратом — ПКн159. выключатель питания — кнопочный с возвратом в исходное положение повторным нажатием. Кнопка и выключатель должны иметь удлиненные (10 мм) толкатели

После включения питания в течение одной секунды во всех разрядах индикаторов появляются нули, а затем высвечиваются две запятые, выделяющие разряды единиц, десятков и сотен герц. При нажатии на кнопку SB1 запятые сдвигаются влево на один разряд. Если эти операции выполняются, частотомер готов к работе.

Налаживание сводится к установке частоты кварцевого генератора. Для этого на вход частотомера подают сигнал с известной частотой и подборкой конденсаторов С6 или установкой последовательно с резонатором конденсатора емкостью 10… 100 пф (на плате для него предусмотрено место, в которое предварительно монтируют проволочную перемычку) устанавливают это значение частоты на индикаторе Для облегчения процедуры можно установить подстроечные конденсаторы, например КТ4-25. Следует отметить, что для обеспечения точности измерения частоты в доли герц следует применить эти конденсаторы, а также кварцевый резонатор с повышенной термостабильностью.

Автор: Н. Заец


Архив для статьи “Частотометр на PIC16F73 и семисегментных индикаторах”
Описание: Исходный код программы(Ассемблер), файл прошивки микроконтроллера, макеты печатных плат под индикаторы MAN3604A
Размер файла: 13. 74 KB Количество загрузок: 4 527 Скачать

Понравилась статья? Поделиться с друзьями:

  • Назад
  • Вперед

pic16f73%20programmer%20circuit%20диаграмма техпаспорт и примечания по применению

MFG и тип ПДФ Теги документов
2003 – частотомер на PIC16F73

Резюме: микросхема pic16f73 пример прерывания на C схема выводов PIC16F73 PIC16F73 pic16f74 примечания по применению процессор модуль кварцевого генератора ttl pic16f74 маркировка код ra5 конденсатор PIC16F76 PIC16F7X
Текст: Нет доступного текста файла


Оригинал PDF PIC16F73/74/76/77 PIC16F73/74/76/77 ДС30325Б) ДК-2750 D-85737 НЛ-5152 частотомер на PIC16F73 Пример прерывания микрочипа pic16f73 в C Схема контактов PIC16F73 PIC16F73 примечание к применению pic16f74 Модуль кварцевого генератора процессора ttl pic16f74 код маркировки конденсатора ра5 PIC16F76 PIC16F7X
2003 – PIC16F73

Резюме: pic16f74 примечание по применению PIC16F73 схема контактов PIC16F74 pic16f73 схема AN023 PIC16F76 PIC16F77 TTL 74 распиновка триггер Шмитта лист приложения
Текст: Нет доступного текста файла


Оригинал PDF PIC16F73/74/76/77 PIC16F73/74/76/77 ДС30325Б) PIC16F73/74 PIC16F76/77 Д010А) ДК-2750 D-85737 PIC16F73 примечание к применению pic16f74 Схема контактов PIC16F73 PIC16F74 схема pic16f73 AN023 PIC16F76 PIC16F77 Распиновка ТТЛ 74 лист применения триггера Шмитта
2008 – pic16F73

Резюме: PIC16F73 usart lin pic pic32 PWM AN237 PIC16 PIC32 AN2376
Текст: Нет доступного текста файла


Оригинал PDF АН237 PIC16F73 PIC16F73 ДС00237А PIC16F73 usart лин рис pic32 ШИМ АН237 PIC16 PIC32 АН2376
2001 – PIC16F73

Резюме: A020 ​​PIC16F77 d010a
Текст: Нет доступного текста файла


Оригинал PDF PIC16F73/74/76/77 PIC16F73/74/76/77 ДС30325А) D-81739 D-82152 DS80099C-страница PIC16F73 А020 PIC16F77 d010a
2001 – pic16f73

Аннотация: схема PIC16LF73 pic16f73
Текст: Нет доступного текста файла


Оригинал PDF PIC16F73/74/76/77 PIC16F73/74/76/77 ДС30325А) DS80099D-страница pic16f73 PIC16LF73 схема pic16f73
2007 – программирование ПО pic*16f72

Резюме: PIC18F2431 I2C i2c master mode PIC16F818 PIC16F818 master i2c microchip pic16f72 пример PIC16F88 errata DS39597B PIC16F73 PIC16F72 PIC16F818 пример кода i2c
Текст: Нет доступного текста файла


Оригинал PDF признать536-4803 DS80132F-страница рис * 16f72 программирование программного обеспечения PIC18F2431 I2C Главный режим i2c PIC16F818 Мастер PIC16F818 i2c пример микросхемы pic16f72 Ошибки PIC16F88 DS39597B PIC16F73 PIC16F72 PIC16F818 пример кода i2c
2004 – pic16f73

Реферат: SSPcon DS3044 DS39616B DS30605C PIC16C62 PIC16C62A PIC16C63 PIC16C63A PIC16C64A
Текст: Нет доступного текста файла


Оригинал PDF правильно6334-8870 DS80132D-страница pic16f73 SSPcon DS3044 DS39616B DS30605C PIC16C62 PIC16C62A PIC16C63 PIC16C63A PIC16C64A
2001 – PIC16F73

Резюме: PIC16C73B PIC16C72A AC164031 PIC16F76
Текст: Нет доступного текста файла


Оригинал PDF прямойC16F73; PIC16F76. 20-отведение 40-отведение PIC16F73 PIC16C73B PIC16C72A AC164031 PIC16F76
ПИК16Ф73

Аннотация: схема pic16f73
Текст: Нет доступного текста файла


Оригинал PDF PIC16F73 30/30 пФ PIC16F73 схема pic16f73
2002 – Схема контактов PIC16F73

Аннотация: Схема программатора PROGRAM PIC16F73 PIC16F73 ds30324 PIC16F7X Программирование PIC16F74 PROGRAM PIC16F74 PIC16F73 для декодирования RC6 Схема программатора PIC16F7x
Текст: Нет доступного текста файла


Оригинал PDF PIC16F7X PIC16F76 PIC16F74 PIC16F77 PIC16F7X PIC16F73/76 D-81739 Схема контактов PIC16F73 ПРОГРАММА PIC16F73 Схема программатора PIC16F73 дс30324 Программирование PIC16F7X PIC16F74 ПРОГРАММА PIC16F74 PIC16F73 для декодирования RC6 Схема программатора PIC16F7x
2003 – ПО pic*16f72

Резюме: PIC14000 PIC16C62A PIC16C62B PIC16C63 PIC16C63A PIC16C64A PIC16C65A PIC16C65B PIC16C66
Текст: Нет доступного текста файла


Оригинал PDF ДК-2750 D-85737 DS80132C-страница программное обеспечение pic * 16f72 PIC14000 PIC16C62A PIC16C62B PIC16C63 PIC16C63A PIC16C64A PIC16C65A PIC16C65B PIC16C66
2000 – Схема контактов PIC16F73

Реферат: Схема программатора PROGRAM PIC16F73 PIC16F73 PROGRAM PIC16F74 ds30324 PIC16F74 PIC16F7X PIC16F77 PIC16F7x схема программатора 200B
Текст: Нет доступного текста файла


Оригинал PDF PIC16F7X PIC16F74 PIC16F76 PIC16F77 PIC16F7X DS30324A-страница Схема контактов PIC16F73 ПРОГРАММА PIC16F73 Схема программатора PIC16F73 ПРОГРАММА PIC16F74 дс30324 PIC16F74 PIC16F77 Схема программатора PIC16F7x 200Б
2002 – PIC16F73 Бесплатные проекты интерфейса с ЖК

Резюме: PIC16F73 принципиальная схема программатора PIC16F73 схема программатора DS30324 PIC16F73 Бесплатные проекты интерфейса с двигателем постоянного тока PIC16F73 код связи I2C в сборке PIC16F7X программирование принципиальная схема программатора PIC16F7x PIC16F73 взаимодействие с ЖК-дисплеем ПРОГРАММА PIC16F73
Текст: Нет доступного текста файла


Оригинал PDF PIC16F7X 28/40-контактный, ДС30325Б D-81739 DS30325B-страница PIC16F73 Бесплатные проекты интерфейса с жк Схема программатора PIC16F73 So Схема программатора PIC16F73 ДС30324 PIC16F73 Бесплатные проекты интерфейса с двигателем постоянного тока Код связи PIC16F73 I2C в сборке Программирование PIC16F7X Схема программатора PIC16F7x Интерфейс PIC16F73 с ЖК-дисплеем ПРОГРАММА PIC16F73
2002 – драйвер двигателя pic16f73

Аннотация: проект счетчика частоты pic16f73 PROGRAM PIC16F73 с использованием заголовочного файла PIC16F73 PIC16F73 прошивка PICSTART 16b nec 2401 пример PIC16 usart основы протокола LIN 200B
Текст: Нет доступного текста файла


Оригинал PDF АН237 PIC16F73 PIC16F73 D-85737 DS00237A-страница драйвер двигателя pic16f73 проект pic16f73 ПРОГРАММА PIC16F73 частотомер на PIC16F73 Заголовочный файл PIC16F73 Прошивка PICSTART 16b 2401 Пример использования PIC16 Основы протокола LIN 200Б
pic16f84a

Резюме: pic16F877 PIC16F628 АЦП В PIC16F877 PIC16F873 pic16f877a Ethernet pic16F723 PIC16F727 pic16f722 PIC16F690 ЖК-дисплей
Текст: Нет доступного текста файла


Оригинал PDF PIC18 PIC16F726 PIC16F727 PIC16F76 PIC16F77 pic16f84a pic16F877 PIC16F628 АЦП В PIC16F877 PIC16F873 pic16f877a Ethernet pic16F723 PIC16F727 pic16f722 ЖК-дисплей PIC16F690
2004 – HA3099

Реферат: PIC16F73 SDA2004 rc5 передатчик приемник SDA 2004 “RISC Timer” pwm PIC16F73 usart
Текст: Нет доступного текста файла


Оригинал PDF HA3099 Таймер08 Таймер116 Таймер28 14 ПЗУ PIC16F73/76 DS39620A HA3099 PIC16F73 ПДД2004 приемник передатчика rc5 ПДД 2004 “таймер риска” ШИМ PIC16F73 usart
2002 – Недоступно

Резюме: нет абстрактного текста
Текст: Нет доступного текста файла


Оригинал PDF PIC16F7X 28/40-контактный, ДС30325Б содержит20 D-81739 DS30325B-страница
ПИК16Ф873

Резюме: PIC16F876A pic16f870 PIC18F2320 PIC16C73B PIC16C74B PIC18F458 PIC16C77 PIC16C76 PIC18F242
Текст: Нет доступного текста файла


Оригинал PDF PIC12C508 PIC16C72 PIC12C508A PIC16C72A PIC12C509PIC16C73A PIC12C509A PIC16C73B RFPIC12C509AF PIC16C745 PIC16F873 PIC16F876A pic16f870 PIC18F2320 PIC16C73B PIC16C74B PIC18F458 PIC16C77 PIC16C76 PIC18F242
2000 – Схема программатора PIC16F73

Резюме: схема выводов PIC16F73 в формате ms word PIC16F73 принципиальная схема инвертора ПРОГРАММА PIC16F73 УПРАВЛЕНИЕ СКОРОСТЬЮ ДВИГАТЕЛЯ ПОСТОЯННОГО ТОКА С ИСПОЛЬЗОВАНИЕМ pic16f73 PIC16F73 код связи I2C в сборке PIC16F73 взаимодействие с ЖК-дисплеем AN578 PIC16F73 Free Projects проект pic16f73
Текст: Нет доступного текста файла


Оригинал PDF PIC16F7X 28/40-контактный PIC16F76 PIC16F77 PIC16C73B/74B/76/77 PIC16F873/874/876/877 DS30325A-страница Схема программатора PIC16F73 Схема контактов PIC16F73 в формате ms word Схема инвертора PIC16F73 ПРОГРАММА PIC16F73 УПРАВЛЕНИЕ СКОРОСТЬЮ ДВИГАТЕЛЯ ПОСТОЯННОГО ТОКА С ИСПОЛЬЗОВАНИЕМ pic16f73 Код связи PIC16F73 I2C в сборке Интерфейс PIC16F73 с ЖК-дисплеем АН578 Бесплатные проекты PIC16F73 проект pic16f73
2000 – схема контактов PIC16F73 в формате ms word

Реферат: Схема инвертора PIC16F73 Схема программатора PIC16F7x PIC16F73 Взаимодействие с ЖК-дисплеем PIC16F73 Бесплатные Проекты интерфейса с ЖК-дисплеем PIC16F73 Бесплатно Проекты интерфейса с двигателем постоянного тока PIC16F73 Схема программатора PIC16F73 Код связи I2C в сборке
Текст: Нет доступного текста файла


Оригинал PDF PIC16F7X 28/40-контактный PIC16F76 PIC16F77 PIC16C73B/74B/76/77 PIC16F873/874/876/877 Поддержка165 Ответ166 PIC16F7X Система167 Схема контактов PIC16F73 в формате ms word Схема инвертора PIC16F73 Схема программатора PIC16F7x Интерфейс PIC16F73 с ЖК-дисплеем PIC16F73 Бесплатные проекты интерфейса с жк PIC16F73 Бесплатные проекты интерфейса с двигателем постоянного тока Схема программатора PIC16F73 Код связи PIC16F73 I2C в сборке Схема программатора PIC16F73 So частотомер на PIC16F73
АД475

Аннотация: 16V8Q 22V10 ATMEL PIC16C782 16v8z pic16f876a Эквивалент AD347 AD486 xicor 28C64 82S123 программирование
Текст: Нет доступного текста файла


Оригинал PDF AD347 475 г. н.э. AD486 AD347 475 г. н.э. 16V8Q 22V10 АТМЭЛ PIC16C782 16v8z pic16f876a Эквивалент AD486 ксикор 28C64 82S123 программирование
pic16f73-1

Реферат: ТА 8823 м 9835 PIC16F73
Текст: Нет доступного текста файла


OCR-сканирование PDF PICI6F73 ФКР10 pic16f73-1 ТА 8823 м 9835 PIC16F73
Программирование сборки PIC16F877A

Аннотация: PIC16F877A потоковый код программирования потокового кода PIC16F877 и схема интерфейса параллельного порта стоимость микроконтроллера PIC16F877A микроконтроллер PIC16F877A бесплатно pic16f877a PIC16F84 схема USB-программатора PIC16F877A программатор схем ПРОГРАММА PIC16F73
Текст: Нет доступного текста файла


Оригинал PDF EB006 PIC16F88 IC16C765, PIC16C77, PIC16C773, PIC16C774, PIC16C84, PIC16CE623, PIC16CE624, PIC16CE625, Программирование сборки PIC16F877A Программирование потокового кода PIC16F877A код потока PIC16F877 и схема интерфейса параллельного порта Стоимость микроконтроллера PIC16F877A Микроконтроллер PIC16F877A бесплатно pic16f877a Схема USB программатора PIC16F84 Программатор PIC16F877A. ПРОГРАММА PIC16F73
2004 – HA3099

Резюме: DT12-6 PIC16C73B PIC16F73 PIC16F7X DS33023 DS39621B ada01 DS30325
Текст: Нет доступного текста файла


Оригинал PDF HA3099 ДК-2750 D-85737 НЛ-5152 HA3099 ДТ12-6 PIC16C73B PIC16F73 PIC16F7X DS33023 DS39621B ада01 ДС30325
2001 – ПРОГРАММА PIC16F73

Резюме: PIC16Fxx 16F870 16Fxx 16F872 PIC16C65 IDB877 pic 16F872 примечания по применению IDB871 PIC16F73
Текст: Нет доступного текста файла


Оригинал PDF ИДБФ77, ИДБ871, IDB877 IDBF77: PIC16F73, IDB871: 16Ф870, ИДБ877: 16Ф872, PIC16C65 ПРОГРАММА PIC16F73 PIC16Fxx 16Ф870 16Fxx 16Ф872 PIC16C65 IDB877 pic 16F872 примечание к применению IDB871 PIC16F73

Предыдущий 1 2 3 … 5 6 7 Далее

Программирование микросхемы pic – Arduino Stack Exchange

спросил

Изменено 3 года, 1 месяц назад

Просмотрено 764 раза

У меня есть несколько микросхем pic, в основном pic16f72 и pic16f73 на старых схемах ИБП, понял, что они не так уж и плохи. Их возможности adc являются моей целью.

У меня есть esp32 (мой первый микроконтроллер), и я очень разочарован, главным образом потому, что его АЦП дерьмовый. Я провел некоторое исследование по программированию чипов pic, некоторые можно было запрограммировать через Arduino, но мои чипы нигде не упоминались. Я хочу запрограммировать их через свой esp32..

Можно ли их запрограммировать через arduino (в моем случае esp32)? Я могу построить некоторые базовые схемы, но программистам, занимающимся самодельными графическими процессорами, требуется предварительно запрограммированный микрочип, который я не могу изготовить, если я уже не могу его запрограммировать.

  • программирование

8

Для PIC32 нужен чипKIT. Поддерживаются не все чипы, но большинство чипов PIC32MX и PIC32MZ поддерживаются. Какие именно чипы PIC32 у вас есть?

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

Что касается 8-битных PIC, то нет, они не могут быть запрограммированы как Arduino, просто потому, что нет доступного компилятора C++ с открытым исходным кодом.

Похоже, вы говорите о двух разных вещах:

  • Программирование/прожиг PIC можно выполнить через Arduino (поэтому вам не нужно создавать сложную схему программатора PIC). Неважно, какой тип микроконтроллера стоит на программаторе, главное, чтобы программатор говорил на ISP (протоколе программирования). Таким образом, даже если ваш конкретный PIC не упоминается на найденных вами сайтах, он все равно должен работать. Соединения каждый раз одинаковы, хотя в вашем конкретном PIC используемые функции контактов могут быть на других контактах (для этого обратитесь к техническому описанию).

  • Проект Arduino — это означает, что скетч/программа, написанная для обычного Arduino, обычно не может быть легко использована повторно.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *