Поклонники продукции Microchip Technology Inc тусуются тут.
Ответить

Re: MPLAB X IDE

Вт июл 23, 2019 11:01:07

КРАМ писал(а):Русские буквы - табу.

Да кто ж знал.... А крови попила программа много.
Еще вопрос. В свойствах проекта в настройках компилятора частоту кварца или внутреннего генератора надо указывать реальную или F_CLK/4?
Изображение
Я попробовал указать реальную (кварц 7,3728 МГц), так переполнение таймера ровно в 4 раза быстрее по stopwatch выходят.
PS. вообще меня вот это F_CLK/4 после атмела постоянно сбивает. Мало того, что изначально промахнулся с расчетом таймеров. Так еще и в настройках симулятора это надо учитывать?

Re: MPLAB X IDE

Вт июл 23, 2019 11:23:59

В свойствах проекта в настройках компилятора частоту кварца или внутреннего генератора надо указывать реальную или F_CLK/4?

там же английским по серому написано - частота ИНСТРУКЦИЙ (то есть СИСТЕМНАЯ частота). Про осциллятор там вообще ни слова не упомянуто.
В 8-битных ПИКах системная частота в 4 раза ниже частоты осциллятора, включая возможный PLL.

Добавлено after 4 minutes 4 seconds:
меня вот это F_CLK/4 после атмела постоянно сбивает.

Патамушта Вы обращаете внимание на кварц, а не на системную частоту. Есть ПИКи с PLL, где кварц или встроенный RC сначала умножаются на 4, а потом синхронизирующий домен ядра делит ее на 4. Тогда кварц равен системной частоте. Отсюда следует, что В ЛЮБОМ СЛУЧАЕ и для ЛЮБОГО МК, включая Атмел, нужно оперировать системной частотой.
А для периферии очень важно знать источник ее синхронизации. Он может быть разным, а паче настраиваемым.

Re: MPLAB X IDE

Вт июл 23, 2019 11:41:34

спасибо!

Re: MPLAB X IDE

Ср июл 24, 2019 11:05:41

Насчет русских букв и табу... Как говорится, дошло только что. Походу модули компилятора и отладчика писали разные команды и между ними не было четкого согласования. Так как компилятор свободно собирал проект не глядя на название папок на русском. А вот отладчику уже не все равно...

Re: MPLAB X IDE

Пт авг 02, 2019 18:28:24

Всем привет! Я пытаюсь запустить fatfs в mplabx. добавлял саму библиотеку через MCC, также через него добавлялась микрочиповская библиотека для sd карты.
Все компилируется,но не работает на железе! файлы не открываются и музыка не воспроизводится. Такой же код воспроизведения,но только в компиляторе mikroC for dspic с встроенной либой для sd карт работает на ура.
Почему fatfs может не открывать файлы???

Re: MPLAB X IDE

Пт окт 09, 2020 21:18:14

СтОит ли оставаться на MplabX при переходе с пиков на авр, или студию изучать?

Re: MPLAB X IDE

Сб окт 10, 2020 18:18:49

СтОит ли оставаться на MplabX при переходе с пиков на авр, или студию изучать?

Я начинал с AVR и студии. Но был опыт работы с MplabX. Моё мнение, оставайтесь в Mplab. Я пробовал в нем писать под AVR и опыт был удачный.

Re: MPLAB X IDE

Вс окт 11, 2020 15:49:34

Спасибо, так и сделал. Установил в мплаб студийный компилятор, все работает.

Re: MPLAB X IDE

Вс окт 11, 2020 15:56:53

boxmen77, можно оставаться в MPLAB X. Только тулчейн avr-gcc лучше поставить. Можно конечно и через xc8 компилировать, тем более он всё-равно avr-gcc вызывает вроде как, но если нет Pro лицензии, он всё-равно вроде не дает оптимизацию нормальную включить. Да и как бы всё-таки на avr де-факто стандарт - GCC. Опции сборки и прочее лучше его поставить.
Но если нужна симуляция, имхо студию под рукой стоит тоже иметь. Тем более она бесплатная. Можно поставить и чуть что запускать. Проект перенести с mplab x не сложно, просто даже вручную создать новый и скопировать туда исходники, быстренько выставив опции сборки нужные.
Я и тем и другим пользуюсь так, но mplab нравится именно универсальностью своей - и под PIC и под AVR можно в одном месте писать.

Re: MPLAB X IDE

Вс окт 11, 2020 18:02:04

xc8 AVR v2.20 тут народ шаманил:
https://github.com/cv007/XC3216
см. xc8-avr-info.txt
правда под Линукс, но похоже под Виндовс и OSX тот же принцип

Re: MPLAB X IDE

Вс окт 11, 2020 20:16:49

xc8 AVR v2.20 тут народ шаманил:
https://github.com/cv007/XC3216
см. xc8-avr-info.txt
правда под Линукс, но похоже под Виндовс и OSX тот же принцип

А подробную инструкцию для чайников можно?
Я бы подшаманил. Ибо сталкивался с ограничением размера кода.

Re: MPLAB X IDE

Вс окт 11, 2020 20:56:27

инструкция
например находим файл cc1
с помощью objdump (есть в составе компилятора avr) ищем 'license_valid' и " .data "
вычисляем адрес смещения и правим в каком нибудь редакторе бинарных файлов
0x17fe878 - 0x17f6860 = 0x8018 +011f6860 = file offset 0x11fe878 - change FFFFFFFFFFFFFFFF to 0200000000000000
Изображение
и т.д.

Re: MPLAB X IDE

Вс окт 11, 2020 21:15:50

oleg110592 писал(а):инструкция

Спасибо! Надо будет попробовать...

Re: MPLAB X IDE

Вс окт 11, 2020 21:57:39

Так это же ограничение снимает только для AVR, правильно?
В чем тогда смысл, когда можно поставить напрямую avr-gcc и не париться с этой прослойкой.

Re: MPLAB X IDE

Пн окт 12, 2020 08:14:49

для xc8 PIC части по прежнему работает старое шаманство с торрентов.
Раз шаманят AVR часть - значит смысл имеет, ну например это уже неплохо (имхо):
Изображение

Re: MPLAB X IDE

Пн окт 12, 2020 09:30:46

oleg110592, это всё есть в avr-gcc. А xc8 в данном случае просто прослойкой между ним выступает, вызывая его для компиляции по факту.

Re: MPLAB X IDE

Пн окт 12, 2020 10:10:01

не все, обсуждали где-то - (из документации):
const int foobar = value;
Это рекомендуемый способ размещения объектов во флэш-памяти.

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

Если вы используете какое-либо устройство из семейств ATtiny или ATxmega3 , флэш-память программ отображается в пространство данных. Это означает, что код, сгенерированный компилятором для доступа к объектам, квалифицированным как const, может использовать инструкции lds или ld 8-битного AVR MCU , которые читаются из области памяти данных.

Для других устройств флэш-память не отображается в пространство данных, но альтернативные инструкции, сгенерированные компилятором, используются для чтения значения объекта. Объекты с квалификацией const могут быть расположены где угодно в доступной флэш-памяти, а последовательность чтения для доступа к ним зависит от количества сегментов флэш-памяти, реализуемых целевым устройством. Компилятор создает компактную кодовую последовательность для устройств только с одним сегментом флэш-памяти и может вызвать библиотечную процедуру, например, когда целевое устройство имеет несколько сегментов флэш-памяти.

Использование только квалификатора const для определения объектов только для чтения имеет несколько преимуществ. Он не использует какие - либо нестандартные ключевые слова C, поэтому он более компактен, тем более , что тот же синтаксис используется для определения местоположения объектов в памяти программы при компиляции для 8-битных PIC ® устройств и использовать тот же компилятор. Кроме того, опция позволяет вам контролировать, где размещаются эти объекты

удобно...

Re: MPLAB X IDE

Пн окт 12, 2020 11:37:46

Согласен, это правильно. Но в avr-gcc нынче тоже не сложно, надо просто добавить __flash. PROGMEM уже не нужен тоже.

MPLAB X / AVR / Linux

Вс янв 10, 2021 12:36:01

немного мыслей об MPLAB X / AVR / Linux

Re: MPLAB X IDE

Пн окт 25, 2021 18:54:11

Как в редакторе MPLAB X отключить фокусировку на курсоре? Ткнул я мышкой в произвольное место текста программы, а потом понадобилось мне посмотреть что-то ниже или выше, я полосу прокрутки мышью тяну, а вот фигушки. Стоит отпустить полосу прокрутки, как текст сам прокручивается назад, на место где установлен курсор. Искал по настройкам редактора и всего MPLAB, да так и не нашел где можно избавится от от этой фичи.
Ответить