MPLAB в вопросах и ответах

Поклонники продукции Microchip Technology Inc тусуются тут.
edds
Встал на лапы
Сообщения: 91
Зарегистрирован: Пт авг 28, 2009 16:08:48
Откуда: г.Вязьма Смоленская обл

Re: MPLAB в вопросах и ответах

Сообщение edds »

Почему то в MPLAB PicKit серым цветом отображается и невозможно его выбрать.. Но он там есть. При подключении его к компу в диспетчере устройств появляются два! HID устройства сразу.

Добавлено after 1 minute 32 seconds:
Стhанно, я сгенерировал конфиг и вставил его полностью в main.c

Добавлено after 59 minutes 52 seconds:
Ура, Товарищи, проблема решена, залил в сам PicKit3 другую прошивку и программатор определился MPLAB IPE. Выдал ошибку , что не чует напряжение питания контроллера. Подключил вывод программатора Vdd к питанию контроллера и светодиод начал весело подмигивать . Прошивку взял тут https://monitor.net.ru/forum/threads/485453/
Вложения
main.c
(1.57 КБ) 489 скачиваний
NStorm
Поставщик валерьянки для Кота
Сообщения: 1978
Зарегистрирован: Ср июл 17, 2013 13:55:57

Re: MPLAB в вопросах и ответах

Сообщение NStorm »

У меня IPE сам предложил при первом запуске обновить прошивку. Сам скачал и обновил. Еще не уверен был что китайский клон так обновится, но обновился и дальше обновлялся без проблем. Странно что у вас так не сработало.
otest
Друг Кота
Сообщения: 7853
Зарегистрирован: Ср фев 11, 2009 20:35:58

Re: MPLAB в вопросах и ответах

Сообщение otest »

Прошивка лежит в MPLAB и не зачем её искать. PicKit сам её находит при обновлении.
Аватара пользователя
КРАМ
Друг Кота
Сообщения: 25121
Зарегистрирован: Чт янв 10, 2008 22:01:02
Откуда: Московская область, Фрязино

Re: MPLAB в вопросах и ответах

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

[uquote="edds",url="/forum/viewtopic.php?p=3923152#p3923152"]Ура, Товарищи, проблема решена, залил в сам PicKit3 другую прошивку[/uquote]
Есть такое мнение, что изначально в нем была версия под старую оболочку PICkit3 и достаточно было ЧЕРЕЗ ЭТУ ОБОЛОЧКУ ревертнуть PICkit3 в MPLAB mode.
edds
Встал на лапы
Сообщения: 91
Зарегистрирован: Пт авг 28, 2009 16:08:48
Откуда: г.Вязьма Смоленская обл

Re: MPLAB в вопросах и ответах

Сообщение edds »

Здравствуйте товарищи, понадобился мне именно PIC контроллер , написал то, что хотел и всё работает, среда MPLAB X v5.45 . Единственное огорчение - не пишет комментарии на Русском , точнее пишет, но когда после закрытия проекта откроешь - все Русские символы - знаки вопроса..... подскажите, где что поменять ?
otest
Друг Кота
Сообщения: 7853
Зарегистрирован: Ср фев 11, 2009 20:35:58

Re: MPLAB в вопросах и ответах

Сообщение otest »

Ёкарный бабай что вы все лезите в эту тему вам сюда https://radiokot.ru/forum/viewtopic.php?f=58&t=148984
Аватара пользователя
КРАМ
Друг Кота
Сообщения: 25121
Зарегистрирован: Чт янв 10, 2008 22:01:02
Откуда: Московская область, Фрязино

Re: MPLAB в вопросах и ответах

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

[uquote="edds",url="/forum/viewtopic.php?p=3931013#p3931013"]Русские символы - знаки вопроса..... подскажите, где что поменять ?[/uquote]
При создании проекта нужно выбрать кодировку windows-1251. А лучше сделать ее дефолтной в настройках среды Tools-Options-Embedded-Default Charset.
Если проект уже создан, то правой кнопкой по корневому имени проекта в дереве проектов - Properties-General-Encoding. Подтвердить Apply-OK.
NStorm
Поставщик валерьянки для Кота
Сообщения: 1978
Зарегистрирован: Ср июл 17, 2013 13:55:57

Re: MPLAB в вопросах и ответах

Сообщение NStorm »

Лучше сразу UTF-8
Аватара пользователя
КРАМ
Друг Кота
Сообщения: 25121
Зарегистрирован: Чт янв 10, 2008 22:01:02
Откуда: Московская область, Фрязино

Re: MPLAB в вопросах и ответах

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

Можно и UTF-8.
gatavin320
Родился
Сообщения: 4
Зарегистрирован: Ср ноя 03, 2021 14:38:10

Re: MPLAB в вопросах и ответах

Сообщение gatavin320 »

Решил я значит обмазаться древними технологиями и разобраться с PIC16
Имеем вот такой конфиг.
Изображение Изображение

Набросал простенький код

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

list	p=16F877
	__CONFIG _CP_OFF & _WDT_OFF & _PWRTE_ON& _XT_OSC

#include <P16F877.INC>
	org 0x0000
	goto start
	org 0x0004
	nop
start:
	bcf STATUS, RP0
	bcf STATUS, RP1
	clrf PORTD

	bsf STATUS, RP0
	bcf TRISD, 0
	bcf STATUS, RP0
	bsf PORTD, 0
loop:
	nop
	goto loop

	end
Компиляется всё без ошибок. Есть правда один варнинг

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

Compiling MAIN.ASM:
Command line: "C:\PROGRA~1\MPLAB\MPASMWIN.EXE /e+ /l+ /c+ /p16F877 /omain.o /q Z:\DISK\PIC\MAIN.ASM"
Message[302] Z:\DISK\PIC\MAIN.ASM 15 : Register in operand not in bank 0.  Ensure that bank bits are correct.
Но, как мы знаем, варнинг не ошибка :))
Для протеуса отдельно пытаюсь сгенерировать cof файл
И тут вылезает ошибка.

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

Z:\Disk\pic>mplink /l"C:\Program Files\MPLAB" "C:\Program Files\MPLAB\16f877.lkr" main.o /o"main.cof"
MPLINK 3.10.03, Linker
Copyright (c) 2002 Microchip Technology Inc.
Error - section '.org_1' can not fit the absolute section. Section '.org_1' start=0x00000004, length=0x00000014
Errors    : 1


Z:\Disk\pic>
Что я делаю не так?

Если посмотреть файлик 16f877.lkr то там как раз с 0x00 по 0x04 идет вектор прерываний

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

CODEPAGE   NAME=vectors  START=0x0      END=0x4      PROTECTED

Файлик файлик 16f877.lkr
Спойлер

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

// Sample linker command file for 16F877
// $Id: 16f877.lkr,v 1.4 2002/01/29 22:10:01 sealep Exp $

LIBPATH  .

CODEPAGE   NAME=vectors  START=0x0      END=0x4      PROTECTED
CODEPAGE   NAME=page0    START=0x5      END=0x7FF
CODEPAGE   NAME=page1    START=0x800    END=0xFFF
CODEPAGE   NAME=page2    START=0x1000   END=0x17FF
CODEPAGE   NAME=page3    START=0x1800   END=0x1FFF
CODEPAGE   NAME=.idlocs  START=0x2000   END=0x2003   PROTECTED
CODEPAGE   NAME=.config  START=0x2007   END=0x2007   PROTECTED
CODEPAGE   NAME=eedata   START=0x2100   END=0x21FF   PROTECTED

DATABANK   NAME=sfr0     START=0x0      END=0x1F     PROTECTED
DATABANK   NAME=sfr1     START=0x80     END=0x9F     PROTECTED
DATABANK   NAME=sfr2     START=0x100    END=0x10F    PROTECTED
DATABANK   NAME=sfr3     START=0x180    END=0x18F    PROTECTED

DATABANK   NAME=gpr0     START=0x20     END=0x6F
DATABANK   NAME=gpr1     START=0xA0     END=0xEF
DATABANK   NAME=gpr2     START=0x110    END=0x16F
DATABANK   NAME=gpr3     START=0x190    END=0x1EF

SHAREBANK  NAME=gprnobnk START=0x70     END=0x7F
SHAREBANK  NAME=gprnobnk START=0xF0     END=0xFF
SHAREBANK  NAME=gprnobnk START=0x170    END=0x17F
SHAREBANK  NAME=gprnobnk START=0x1F0    END=0x1FF

SECTION    NAME=STARTUP  ROM=vectors    // Reset and interrupt vectors
SECTION    NAME=PROG1    ROM=page0      // ROM code space - page0
SECTION    NAME=PROG2    ROM=page1      // ROM code space - page1
SECTION    NAME=PROG3    ROM=page2      // ROM code space - page2
SECTION    NAME=PROG4    ROM=page3      // ROM code space - page3
SECTION    NAME=IDLOCS   ROM=.idlocs    // ID locations
SECTION    NAME=CONFIG   ROM=.config    // Configuration bits location
SECTION    NAME=DEEPROM  ROM=eedata     // Data EEPROM
Аватара пользователя
wws63
Сверлит текстолит когтями
Сообщения: 1230
Зарегистрирован: Вс май 21, 2006 16:07:59
Откуда: Алтай

Re: MPLAB в вопросах и ответах

Сообщение wws63 »

[uquote="gatavin320",url="/forum/viewtopic.php?p=4116826#p4116826"]Что я делаю не так?[/uquote]
Закомментируйте строку Org 00004h
Зачем она если не используется прерывание?
Nikitich
Родился
Сообщения: 4
Зарегистрирован: Вт фев 11, 2020 12:27:06
Откуда: Sweet home pervomayka

Re: MPLAB в вопросах и ответах

Сообщение Nikitich »

Товарищи! Помогите, пожалуйста, с выбором литературы для изучения программирования PIC на ассемблере.
yor
Говорящий с текстолитом
Сообщения: 1676
Зарегистрирован: Сб янв 19, 2008 23:57:27

Re: MPLAB в вопросах и ответах

Сообщение yor »

Даташиты, Корабельников.
Nikitich
Родился
Сообщения: 4
Зарегистрирован: Вт фев 11, 2020 12:27:06
Откуда: Sweet home pervomayka

Re: MPLAB в вопросах и ответах

Сообщение Nikitich »

Спасибо большое!
Странно, что энные пользователи кота не очень любят Корабельникова. Хотелось бы узнать, почему? :solder:
Аватара пользователя
КРАМ
Друг Кота
Сообщения: 25121
Зарегистрирован: Чт янв 10, 2008 22:01:02
Откуда: Московская область, Фрязино

Re: MPLAB в вопросах и ответах

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

Корабельникова не любят потому, что в его нетленках примерно 1% тривиального и очень простого материала истина, а остальное - эпичная пурга.
Причем читатель не имеет возможности освоить фундаментальные знания в этой области, вместо которых его потчуют фантазиями и глупостями автора в виде доморощенных шаблонов идиотского кода в допотопной среде разработки.
Учитель не имеет права иметь настолько низкую квалификацию по теме обучения.
Nikitich
Родился
Сообщения: 4
Зарегистрирован: Вт фев 11, 2020 12:27:06
Откуда: Sweet home pervomayka

Re: MPLAB в вопросах и ответах

Сообщение Nikitich »

Но как же быть тогда и что брать за основу изучения ассемблера для пиков ?
В данный момент читаю Кацтена, но у него фундаментальные данные разжёвываются.
Аватара пользователя
КРАМ
Друг Кота
Сообщения: 25121
Зарегистрирован: Чт янв 10, 2008 22:01:02
Откуда: Московская область, Фрязино

Re: MPLAB в вопросах и ответах

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

У младших пиков настолько простой ассемблер, что изучать его можно по даташиту на любой контроллер и мануалу на ассемблер MPASM, который имеется в папке документации пакета среды разработки (MPLABX IDE) вплоть до версии 5.35 включительно. В последующих версиях 5.45 и 5.50 и впредь MPASM выпилили и заменили на PIC Assembler (pic-as) имеющий иной синтаксис листинга (инструкции МК, естественно, не изменились).
Такшта выбирайте какой нибудь устраивающий вас МК, приобретайте инструмент программирования/отладки поддерживающий выбранный МК и начинайте работать. Ничего уникально сложного там нет, примеры кода есть в документации, с вопросами обращайтесь.
Аватара пользователя
Родэрик
Нашел транзистор. Понюхал.
Сообщения: 162
Зарегистрирован: Чт ноя 26, 2015 23:22:35
Откуда: не с Уфы
Контактная информация:

Re: MPLAB в вопросах и ответах

Сообщение Родэрик »

Был кстати, такой момент. Поставил новую (тогда 5.45) версию, а при создании проекта возникли проблемы с асмом, типа нет его. Не стал разбираться, откатился до 5.20 и сижу на нём пока.... Получается асма больше не будет в X?

Тут ещё недавно заметил интересную непонятку. Если создать таблицу (34xx, 34xx.......) из нескольких элементов, а в начале следующего 16-ти словного блока (0xXXX0) создать ещё одну, то у первой мплаб сам добавляет в конце две строки retlw 00 , что довольно странно....
Аватара пользователя
КРАМ
Друг Кота
Сообщения: 25121
Зарегистрирован: Чт янв 10, 2008 22:01:02
Откуда: Московская область, Фрязино

Re: MPLAB в вопросах и ответах

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

[uquote="Родэрик",url="/forum/viewtopic.php?p=4121923#p4121923"]Получается асма больше не будет в X?[/uquote]
Не АСМа, а конкретно MPASM (mpasmx). Его заменили на АСМ в составе XC8 и он называется PIC Assembler (pic-as).
Можете перейти на 5.35 - эта версия полностью поддерживает mpasmx.
Но все новые контроллеры семейства PIC18Q и аналогичные по времени появления PIC16Fxxxxx либо не полностью поддержаны этой версией, или вообще не поддержаны.
bestavto
Родился
Сообщения: 18
Зарегистрирован: Пт июн 19, 2009 16:09:46
Откуда: Москва

Re: MPLAB в вопросах и ответах

Сообщение bestavto »

Здравствуйте. Подскажите, пожалуйста, начинающему. Как в MPLABX v2.35 создать числовую переменную чтобы потом в теле программы ей присваивать разные числовые значения? Компилятор использую ассемблер.

Добавлено after 6 hours 51 minute 16 seconds:
И еще вопрос. Почему в протеусе программа (прикреп. файл) работает, после нажатия кновки "on\off" зажигается диод с помощью шим, при нажатии кнопок "up" и "down", меняется длительность импульса и сохраняется после нажатии "on\off". после очередного включения диод зажигается на сохраненное значение шим. А на реальном контроллере (правда без мосфетов), после уменьшения яркости и отпускании кнопки "вниз" диод начинает увеличивать яркость. Почему так?
Вложения
лампа схема.zip
(16.75 КБ) 275 скачиваний
Новый текстовый документ.txt
текст программы
(11.9 КБ) 254 скачивания
Ответить

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