Перейти к содержанию

crazz

Рекомендуемые сообщения

По советам, воткнул на компьютер 8.92 Матлаб. Действовать решил согласно самоучителю(в конце страницы), только для своего пика (PIC12F675). И что вы думаете? Я застрял примерно в самом начале. Матлаб установился, все хорошо. Решил поставить хайтек компилятор- его фиг где скачаешь, когда скачаешь- непонятно какая версия, когда установил- не могу его добавить в матлаб. Он есть в списке компиляторов, но путь к экзешнику указать не могу, ибо в папке с хайтеком нету нужного экзешника. Пробовал еще какой то CCS компилятор- вроде все добавляется, но при компиляции выдает ошибку

Скрытый текст

1906907062_.png.2566c0410f19ff8b5beffa03a7a82c5a.png

В указанных директориях по названию даже близкого нет.

Я уже не знаю, вроде лыжи по асфальту не едут. Уже всякой ерунды накачал и установил себе, а толку нет. Я конечно понимаю, что "в интернете все есть, вы просто ленитесь и значит так вам надо" Но именно для меня такой порог вхождения высок, Может есть у кого не битые ссылки на нормальные программы? И к ним какая-нибудь документация на вроде самоучителя, хоть размером с библиотеку. Я читать не против, только за, но уже столько всякого шлака прочитал про всякое старье напичканное неактуальными программами, что только хуже становится. Английский язык могу читать, но тяжело. Программы на английском переживу

16_C_for_PIC.pdf

Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

46 минут назад, Mayder сказал:

В указанных директориях по названию даже близкого нет.

так может файлы лежат в директории C:\Program Files\.... , а не   C:\Program Files(86)\....

и просто надо указать правильный путь к компилятору???

Ссылка на комментарий
Поделиться на другие сайты

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

Путь правильный, даже с учетом x86. Мплаб в "Program Files" живет, а компилятор в "Program Files(x86)". Путь в мплабе указан верно, и сам экзешник компилятора найден и указан. Пути установки не содержат русских букв в пути, да и программы установлены в места "По умолчанию"

Изменено пользователем Mayder
Ссылка на комментарий
Поделиться на другие сайты

Организация питания на основе надежных литиевых аккумуляторов EVE и микросхем азиатского производства

Качественное и безопасное устройство, работающее от аккумулятора, должно учитывать его физические и химические свойства, профили заряда и разряда, их изменение во времени и под влиянием различных условий, таких как температура и ток нагрузки. Мы расскажем о литий-ионных аккумуляторных батареях EVE и нескольких решениях от различных китайских компаний, рекомендуемых для разработок приложений с использованием этих АКБ. Представленные в статье китайские аналоги помогут заменить продукцию западных брендов с оптимизацией цены без потери качества. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Сравнительное тестирование аккумуляторов EVE Energy и Samsung типоразмера 18650

Инженеры КОМПЭЛ провели сравнительное тестирование аккумуляторов EVE и Samsung популярного для бытовых и индустриальных применений типоразмера 18650. 

Для теста были выбраны аккумуляторы литий-никельмарганцевой системы: по два образца одного наименования каждого производителя – и протестированы на двух значениях тока разряда: 0,5 А и 2,5 А. Испытания проводились в нормальных условиях на электронной нагрузке EBD-USB от ZKEtech, а зарядка осуществлялась от лабораторного источника питания в режиме CC+CV в соответствии с рекомендациями в даташите на определенную модель. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Литиевые аккумуляторы EVE Energy и решения для управления перезаряжаемыми источниками тока (материалы вебинара)

Опубликованы материалы вебинара Компэл, посвященного литиевым аккумуляторам EVE Energy и решениям для управления перезаряжаемыми источниками тока.

На вебинаре мы представили информацию не только по линейкам аккумуляторной продукции EVE, но и по решениям для управления ею, что поможет рассмотреть эти ХИТ в качестве дополнительной альтернативы для уже выпускающихся изделий. Также рассмотрели нюансы работы с производителем и сервисы, предоставляемые Компэл по данной продукции. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Литиевые батарейки и аккумуляторы от мирового лидера  EVE в Компэл

Компания Компэл, официальный дистрибьютор EVE Energy, бренда №1 по производству химических источников тока (ХИТ) в мире, предлагает продукцию EVE как со склада, так и под заказ. Компания EVE широко известна в странах Европы, Америки и Юго-Восточной Азии уже более 20 лет. Недавно EVE была объявлена поставщиком новых аккумуляторных элементов круглого формата для электрических моделей «нового класса» компании BMW.

Продукция EVE предназначена для самого широкого спектра применений – от бытового до промышленного. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

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

Можете подсказать, где скачать хайтек нормальный? И, если есть возможность, скинуть скрин корневой папки хайтека, там где сам экзешник хранится, чтобы я видел к чему нужно стремиться, а то устанавливается всякое, но все какое-то не то.

 Установил по-новой мплаб и этот CCS компилятор. Дело вроде как сдвинулось, но не знаю. Теперь если я хочу скомпилить свою тестовую программу

#include <pic.h>

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

void main (void)
{
}

то выдает

Скрытый текст

264023536_.jpg.67016d36349306983e2cc05de08e0b65.jpg

Вторая строчка в окне появляется примерно через минуту. Вообще начинается все с нажатия кнопки ф10. Потом открывается свое отдельное окно компилятора:

Скрытый текст

1523719924_.png.0d3695d78b18d975e4916085041fc443.png

и все. В самоучителе про это ничего нет, там должно в окне выдать:

"Этот текст набираем в окне Test.c и затем нажимаем F10. Происходит компиляция и открывается окно Output. Если внизу в окне Output вы видите фразу типа

Loaded C:Program FilesMicrochipProjectTest1Test1.cof.

BUILD SUCCEEDED: Thu Apr 23 10:17:35 2009

"

Но это не про мой случай:unknw:

Без описанного в самоучителе компилятора, однако, приведенные примеры не заведутся

 

Изменено пользователем Mayder
Ссылка на комментарий
Поделиться на другие сайты

Стесняюсь спросить, а почему бы не поставить обычный XC8 хоть в 8-ку, хоть в Х?

В MPLAB X, к слову, визард с-файла генерирует сразу необходимый синтаксис main.

戦う前に相手のベルトの色に注目

Ссылка на комментарий
Поделиться на другие сайты

он его поставил. у @Mayder сейчас другая проблема, при компиляции создаются исполнительные файлы, но к ним не ставятся расширения .hex и .cof

 

 

Ссылка на комментарий
Поделиться на другие сайты

Попробую вычистить весь мусор со всеми этими компиляторами и мплабами. Качаю с официального сайта 8.92 мплаб и ваш хс8 уже скачен. Может чистовая установка чем поможет

Ссылка на комментарий
Поделиться на другие сайты

Upd

Снес все, установил по-новой

Скрытый текст

516630102_.png.baf373ca1b38e719beb70e069da5f424.png

При тех же телодвижениях, что и раньше, появились заветные файлы из компилятора. Хотя в папке общее количество так же 24. Из-за чего раньше не появлялись- загадка, видать что-то с чем-то конфликтовало. Надеюсь в скором времени помигаю светодиодиком.

Но вопрос еще- читать нужно документацию на компилятор+мплаб+даташит выбранного МК- вроде три документа. В даташите все про ассемблер, к СИ не относится. Нужно сделать в нем упор на сам состав мк(настройки, периферийные устройства)? Вообще, чтобы логику изучения не терять, в какой последовательности нужно изучать эти документы? А то умные люди пишут в яндексах, что язык СИ- это для любителя буквально 10 команд запомнить, а потом их миксовать как душе угодно, почти все хотелки перекроет.

Но тут еще влазит компилятор со своими правилами. Я думал что он может влиять только на настройку МК, а различаются разные компиляторы только алгоритмами перевода в машинный текст. Но уже сомневаюсь

Это так же как и язык СИ- он везде одинаковый и универсальный, но в каждой среде он разный и не взаимозаменяемый:crazy:

Изменено пользователем Mayder
Ссылка на комментарий
Поделиться на другие сайты

21 час назад, Mayder сказал:

Это так же как и язык СИ- он везде одинаковый и универсальный, но в каждой среде он разный и не взаимозаменяемый:crazy:

Да, именно так. Задача компилятора состоит в том, чтобы соглашения и синтаксис языка сделать МАКСИМАЛЬНО платформонезависимыми. То есть исходники на языке Си, по идее, должны создавать исполняемый код дающий на выходе идентичные результаты. Но сам код, естественно, будет совершенно разный для разных платформ.

ОДНАКО!!!

Поскольку значительная часть задач на МК сводится к управлению периферией, кроссплатформенной переносимости кода на Си по принципу as is В ПРИНЦИПЕ НЕ СУЩЕСТВУЕТ и существовать не может. Даже если ядра МК совершенно идентичны (например ARM Cortex). Мало того, язык Си не содержит специфических инструментов микроконтроллеров, таких как специфический доступ к ОЗУ в гарвардской архитектуре МК, битовые переменные, система прерываний, а так же ускоряющие фичи МК, которые не являются нативными для Си. Поэтому в каждом конкретном компиляторе есть некий особый специфический синтаксис позволяющий решать все эти задачи.

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

При работе с МК нужно быть готовым к применению СМЕШАННОГО кода. То есть когда в листинге исходника присутствует и Си-код и АСМ-вставки, либо АСМ-файлы. Такой код максимально эффективен для конкретной платформы.

ЗЫ. Читать нужно ВСЮ документацию относящуюся к проекту.

1. Даташит на МК

2. Эррату на МК, которая является неотъемлемой частью даташита, но публикуется отдельным документом.

3. Мануалы на МК, если таковые существуют (на них обычно ссылается даташит)

4. Мануал на среду разработки (в данном случае MPLAB IDE)

5. Мануал на применяемый компилятор вместе с мануалом на систему команд МК (последний в простейшем случае включен в даташит).

Изменено пользователем my504

戦う前に相手のベルトの色に注目

Ссылка на комментарий
Поделиться на другие сайты

Благодарю за помощь. Попробовал найти указанные вами документы:

1. Даташит на 12ф675 легко в свободном доступе +на русском языке;

2. Errata на МК только на официальном сайте на английском( значит в ру сегменте спросом не пользуется);

3. Мануал на МК- вроде глухо, по крайней мере я подобного не нашел. Может не понял что искать, в моем понимании это и есть даташит;

4. Мануал на мплаб- нашел на русском на какую-то лохматую версию ( опять же говорит о спросе в ру сегменте);

5. Мануал на компилятор- в самой папке компилятора имеется вроде, попытки найти ру- версию не увенчались успехом ( и здесь опять же говорит о спросе в ру сегменте).

Впечатление такое, что наши радиолюбители-кодеры читают только даташиты на русском(но на форумах пишут что русские даташиты сплошь в ошибках). Остальное из документации уважают в оригинале:rolleyes:

Про совмещение ассемблера и СИ- для любителя все же думаю такое редко понадобится, а если понадобится, то это уже не любитель:) Хотя и начитан про большие плюсы использования этой связки в некоторых частных случаях

Изменено пользователем Mayder
Ссылка на комментарий
Поделиться на другие сайты

1 час назад, Mayder сказал:

Попробовал найти указанные вами документы:

Тут ничего не надо пробовать. Все находится в одном месте:  https://www.microchip.com/wwwproducts/en/PIC12F675

http://ww1.microchip.com/downloads/en/DeviceDoc/41190G.pdf

http://ww1.microchip.com/downloads/en/DeviceDoc/80125H.pdf

http://ww1.microchip.com/downloads/en/DeviceDoc/80329B.pdf

http://ww1.microchip.com/downloads/en/DeviceDoc/41191D.pdf

http://ww1.microchip.com/downloads/en/DeviceDoc/41215C.pdf

http://ww1.microchip.com/downloads/en/DeviceDoc/01146B.pdf

http://ww1.microchip.com/downloads/en/DeviceDoc/chapter 3.pdf

http://ww1.microchip.com/downloads/en/DeviceDoc/chapter 1.pdf

И так далее....

1. Даташита на МК Микрочипа на русском языке не существует. То, что Вы нашли - это древний местный перевод, причем достаточно неточный.

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

3. Мануалы на МК приведены на сайте производителя. Для 8-битных МК это отдельная документация по программированию. Для 16-битных (24/30/33 - семейства) - мануалы есть на каждый раздел даташита. В даташите приведены только самые общие данные. У STM32 даташит вообще очень краткий. Все существенные данные только в мануалах на семейство. И так у всех. Только в простейших МК почти все находится в даташите. А есть еще аппноты, которые тоже стоит читать, чтобы не изобретать деревянные велосипеды с квадратными колесами.

4. Мануалов на среду на русском так же нет, увы. Придется изучать на английском. 

5. На компилятор - тоже самое.

ЗЫ. В догон. На примитивные 8-битники Микрочипа гораздо проще писать на АСМе. Там столько специфичного в компиляторе, что игра не стоит свеч...

Изменено пользователем my504

戦う前に相手のベルトの色に注目

Ссылка на комментарий
Поделиться на другие сайты

1 час назад, Mayder сказал:

Впечатление такое, что наши радиолюбители-кодеры читают только даташиты на русском(но на форумах пишут что русские даташиты сплошь в ошибках). Остальное из документации уважают в оригинале:rolleyes:

Это ЛОЖНОЕ впечатление. Причем оно рождено исключительно как следствие Ваших комплексов. Ничего общего с реальностью не имеет. В наше время, когда обычной копипастой можно переводить гуглопереводчиком, смешно слышать о проблемах с языком. Даташиты и др. документация на МК написаны на техническом английском - это самый примитивный из всех вариантов английского.

戦う前に相手のベルトの色に注目

Ссылка на комментарий
Поделиться на другие сайты

Древний местный перевод даташита скорее всего сделан так же через переводчик и в нем куча неточностей.

Общий смысл понял- учить английский/копировать в переводчик и зачитывать тонну книг до дыр. Эррату уже начал переводить, пока ничего интересного не нашел, а время затратилось:unsure:

В книгах/самоучителях нигде нет таких требований к изучению всего и вся, Абманщеки

Про ассемблер и СИ- ну это как я понял вечная война. Читал конечно, что пик более заточен под ассемблер, но написание программ на нем в разы медленнее и сложнее. Хотя родная документация посвящена ассемблеру и всего 35(или 33, забыл) команд. Казалось бы, выписал на бумажку команды и твори чудеса. Но про ассемблер чаще говорят, что это пережиток прошлого в радиогубительстве. Сейчас даже не знаю, наверное пробовал бы с СТМ-ок начинать изучение.

Так же, как я понял- изучив документацию на один микроконтроллер, беря в руки другой МК- изучаем все по новой. Это касаемо ассемблера

Короче пока займусь работой переводчика:umnik2:

 

Изменено пользователем Mayder
Ссылка на комментарий
Поделиться на другие сайты

2 часа назад, Mayder сказал:

Читал конечно, что пик более заточен под ассемблер, но написание программ на нем в разы медленнее и сложнее.

Чушь полная. На любом МК создание проекта принципиально отличается от кодинга на компьютерах общего назначения.  Если нет интереса к железу и к алгоритмам встраиваемых систем (это и есть системы управляемые МК), то Ваш путь - ардуины и как вершина творчества - распберри пи и его многочисленные клоны. Ардуина - это тяжеловесный базовый код-прослойка поверх которого вы пишите свои поделия. Это резко ограничивает выбор внешних устройств, которыми управляем ардуина и сильно понижает скорость работы базового МК. Ну и выбор МК в ардуинах практически отсутствует. Зато очень просто - детские кубики.

Распберри пи - это уже обычный комп под линуксом. То есть про реальное время можно забыть. Но интерфейсы все написаны за вас. То есть красивые картинки на ЖК дисплее, привычные мышка и клавиатура, привычный USB  и эзернет, привычные среды написания кода . Но реакция системы на события не может быть быстрее 1 мс, да и то в самом лучшем варианте. Это при том, что даже 12Ф675 может дергать ногой с тактом 200 нс и без всякого джиттера по отношению к коду.

То есть ногодрыг в нем 5000 раз быстрее, чем в распберри пи.

Возвращаясь к сложности написания программ на АСМе, могу сказать, что на одной платформе МК система команд совершенно идентична. И при переходе на другой чип ничего не нужно переучивать. Родственные платформы (PIC12/PIC16  и PIC18) отличаются тем, что в последней лишь больше команд, что дает дополнительные удобства) В остальном там ничего не требуется для изучения.

В целом, АСМ одного производителя даже разных платформ очень похож. По сути, нужно осваивать не команды, а ПРИНЦИПЫ ИХ СИСТЕМАТИЗАЦИИ.

Так в 16 разрядной платформе Микрочипа (PIC24/33) очень много команд mov, однако все они сводятся к одному английскому существительному the movment - движение (или глаголу  to move  - двигать). То есть все они пересылают слово (два байта) или байт в/между регистрами общего назначения и/или ОЗУ.

Все разновидности этой команды - суть есть лишь разные способы адресации этой пересылки.

Тоже самое и с другими командами, такими как add (сложение)  sub (вычитание) mul (умножение)   div (деление)  and (побитное И)  ior (побитное ИЛИ)  xor (побитное исключающее ИЛИ) и так далее...

Например: mov  W1, [W5++]  означает пересылку слова содержащегося в регистре общего назначения WREG1 (таких регистров 16) в ОЗУ по адресу, который содержится в регистре WREG5 с одновременным инкрементом содержимого  указателя (регистра WREG5).

Таким образом, АСМ код: 

          mov  #0x5555, W1     ; шестнадцатибитное слово  0x5555 пишем в WREG1

           mov  #arrayData, W5  ; начальный адрес массива данных arrayData пишем в WREG5

            repeat  #15         ; следующая команда повторяется 16 раз (15+1)

                    mov  W1, [W5++]   ; происходит последовательное заполнение 16 ячеек массива одной и той же константой 0x5555

совершенно прост и читабелен. И не требует никаких особых усилий по изучению.

В 8-битной платформе будет не так кратко, но тоже достаточно просто и понятно.

 

 

 

Изменено пользователем my504

戦う前に相手のベルトの色に注目

Ссылка на комментарий
Поделиться на другие сайты

Мои познания микроконтроллеров основываются лишь на чтении постояльцев форумов, писателей статей про МК, и тому подобных. Сколько уж было перечитано перепалок адептов пик-авр-арм... (тихий ужас) и стольких же последователей ассемблера-СИвсехмастей- и совсем диких языков программирования...

Хорошо. Тогда обращу внимание на ассемблер. Для пиков по нему вроде по-больше информации чем по СИ, да и штатные средства микрочипа+документация люто "За" использование асма. С пиков вроде как слазить не собираюсь, я ж для души хочу, для радиогубительства, мигалки-пищалки-черные ящики спутников...

Немного посидел за переводом эрраты на пык12а675/629, лишнее микрочиповское стер( телефоны поддержки и прочую лабудень). Некоторые английские слова я не понял, и переводчик не понял как правильно перевести, а совсем бред я не стал вставлять. Не до конца понял про ошибку с Power-on Reset(сброс при включении питания), но вроде как есть некий диапазон низкого напряжения питания, который находится уже ниже даташитного диапазона, но еще не равен Vss, и плавает от температуры. И если МК не обесточивать полноценно, а "отключать так, чтобы питание падало до этого околонулевого значения" то при восстановлении питания до рекомендуемого- сброса не будет. Из рекомендаций- на входе Vdd снимать напряжение до уровня Vss и не делать мозги

Errata PIC12f675 PIC12f629+перевод.pdf

Ссылка на комментарий
Поделиться на другие сайты

Проблема со сбросом при низком, но ненулевом остаточном питании в последней ревизии чипа (В0) отсутствует. Поскольку этот МК очень древний, то ревизия А9 к Вам не попадет практически гарантированно. Тем более, что программаторы при коннекте выводят ревизию в окно Output.

Эррата на флаг EEPROM говорит нам о том, что к указанной в даташите процедуре записи в EEPROM нужно добавить ожидание сброса бита WR в регистре EECON1.

Еще есть эррата на первый таймер - это отдельный документ.

戦う前に相手のベルトの色に注目

Ссылка на комментарий
Поделиться на другие сайты

Благодарю за пояснения. Так более понятно, но пока не пощупаю на деле, до конца не разберусь.

Перевел Эррату про Таймер 1. Технический английский конечно со своими тонкостями... В университете изучали технический английский, но там даже близко такого не было, да и подзабылось уже, да и не заморачивался:rolleyes:

Errata Timer1 Module+перевод.pdf

Изменено пользователем Mayder
Ссылка на комментарий
Поделиться на другие сайты

  • 6 месяцев спустя...
  • 3 месяца спустя...

Доброго времени суток.

Подскажите, просто бесит разбивать выражения, чем отличается запись:

*slovo1=(*(data+temp)>>4+0x30);

от 

*slovo1=*(data+temp)>>4;  
*slovo1+=0x30;

С моей точки зрения обе записи эквивалентны, однако желаемый результат дает второе. Может я что то не понимаю.

Использую MPLABX v5.3, XC8 v1.33, PIC18F67K22.

Ссылка на комментарий
Поделиться на другие сайты

  • 2 месяца спустя...

Добрый день,

прошу помощи начинающему, поставил MPLAB X v5.54, после выбора нового проекта на шаге где нужно выбрать компилятор есть две строки, XC8 и HITECH PIC , но невозможно выбрать из них. Что я не так сделал?

pic.png

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...