Самоучитель по программированию ПИК на ассемблере. Носов.

Поклонники продукции Microchip Technology Inc тусуются тут.
Аватара пользователя
PenguinChik
Нашел транзистор. Понюхал.
Сообщения: 151
Зарегистрирован: Ср дек 01, 2021 15:09:09

Самоучитель по программированию ПИК на ассемблере. Носов.

Сообщение PenguinChik »

Кто-нибудь пользовался этим самоучителем? А то я повторяю программный код на ассемблере, и у меня при компиляции выскакивает
куча ошибок. Я уже много раз код перепроверил - расхождений с самоучителем вроде нет. Прям не знаю, что делать. Если кто использовал этот самоучитель, скажите, там рабочие коды?
И могут ли быть ошибки, если у меня другая версия MPLAB стоит?
Реклама
Martian
Друг Кота
Сообщения: 12867
Зарегистрирован: Сб дек 18, 2021 19:25:32
Контактная информация:

Re: Самоучитель по программированию ПИК на ассемблере. Носов

Сообщение Martian »

во всех книжках бывают ошибки. От бездумного повторения толку нет, а вот если сами найдете и исправите ошибки - толк будет.
Реклама
Аватара пользователя
Родэрик
Нашел транзистор. Понюхал.
Сообщения: 162
Зарегистрирован: Чт ноя 26, 2015 23:22:35
Откуда: не с Уфы
Контактная информация:

Re: Самоучитель по программированию ПИК на ассемблере. Носов

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

Тебе нужен mpasm, а сейчас у тебя pic-as
vitos
Первый раз сказал Мяу!
Сообщения: 36
Зарегистрирован: Вс янв 08, 2012 18:23:36

Re: Самоучитель по программированию ПИК на ассемблере. Носов

Сообщение vitos »

лучший самоучитель это даташит+протеус ,
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
Asmodey
Друг Кота
Сообщения: 6268
Зарегистрирован: Сб янв 28, 2006 22:47:24

Re: Самоучитель по программированию ПИК на ассемблере. Носов

Сообщение Asmodey »

Да уж, когда не знаешь что такое регистр и как ногой дернуть, несомненно, 500-страничный даташит на инглише лучший "помощник" :)))
Пока протеус заставишь работать как надо, забудешь зачем его устанавливал...
Астролябия-сама меряет, было бы что мерять!!!
Реклама
vitos
Первый раз сказал Мяу!
Сообщения: 36
Зарегистрирован: Вс янв 08, 2012 18:23:36

Re: Самоучитель по программированию ПИК на ассемблере. Носов

Сообщение vitos »

есть даташиты на русском , а дальше по аналогии ,
я старый чел (60 лет) изучил месяца за два и дальше по нарастающей ,команд то всего 35
молодым то и вовсе должно как орешки щелкать

Добавлено after 3 minutes 6 seconds:
Re: Самоучитель по программированию ПИК на ассемблере. Носов.
никаких мплабов не проходил ,только даташит+протеус+блокнот винды
Реклама
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15570
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Самоучитель по программированию ПИК на ассемблере. Носов

Сообщение BOB51 »

[uquote="PenguinChik",url="/forum/viewtopic.php?p=4312374#p4312374"]Кто-нибудь пользовался этим самоучителем? А то я повторяю программный код на ассемблере, и у меня при компиляции выскакивает
куча ошибок. Я уже много раз код перепроверил - расхождений с самоучителем вроде нет. Прям не знаю, что делать. Если кто использовал этот самоучитель, скажите, там рабочие коды?
И могут ли быть ошибки, если у меня другая версия MPLAB стоит?[/uquote]
В большинстве случаев имелся в виду старо-добрый mplab 8.92...
Как насчет mplab X не скажжу - IDE навороченная и на "устаревших ПК" весьма избыточная и медлительная.
Самоучителей большое множжество - не имея под руками конкретной книги подсказать что-либо практически невозможно.
Тем более, что используя IDE нужно еще корректно настройку проекта сделать.
Как вариант - можно глянуть ссылки на учебно-справочные материалы, что порассыпал где-то в старых темах:
( https://radiokot.ru/forum/viewtopic.php?f=62&t=94201
https://radiokot.ru/forum/viewtopic.php?f=62&t=156720 )
там где-то и несколько проектов для ПИКов под ассемблером для mplab 8.92 и "шпоры" по системе команд и схемки программаторов "для простолюбителей" были
8)
vitos писал(а):...

Добавлено after 3 minutes 6 seconds:
Re: Самоучитель по программированию ПИК на ассемблере. Носов.
никаких мплабов не проходил ,только даташит+протеус+блокнот винды
Запуск компилятора с командной строки *.bat файлом?
Это еще там, где бесплатной IDE нету можно делать (у меня так для c51asm для mcs51 сделано из практического жлобства - данный компилятор свободно-бесплатный). Для ПИКов и АВРок вполне удачно "стандартно-устаревшие" IDE удобны - там и симуляторы встроенные весьма приличные имеются.
Доугое дело - пойдут обновленные серии МК - там ужж придется и компиляторы обновлять (или файлы описаний ресурсов в старых модифицировать/дописывать).
:beer:
Аватара пользователя
PenguinChik
Нашел транзистор. Понюхал.
Сообщения: 151
Зарегистрирован: Ср дек 01, 2021 15:09:09

Re: Самоучитель по программированию ПИК на ассемблере. Носов

Сообщение PenguinChik »

А какая разница между PIC-AS и MPASM ? Я уже понял, что там немного различный синтаксис...Просто смысл было придумывать PIC-AS, если есть MPASM? Что, PIC-AS чем-то лучше ?
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15570
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Самоучитель по программированию ПИК на ассемблере. Носов

Сообщение BOB51 »

Mpasm это компилятор от разработчика данных микроконтроллеров.
Помимо него есть еще много компиляторов от "сторонних авторов" - что использовать каждый определяет самостоятельно.
Однако... Компилятор от разработчика МК(тем более, ежли оный идет в составе среды разработки) более удобно использовать.
Второй определяющий выбор фактор - распространенность избранного компилятора - чем более распространен, тем легче "найти общий язык" с друзьями-радиолюбителями.
Осваивать несколько компиляторов одного и того же языка программирования (тем более ассемблера) это из разряда садомазохизма для избранных.
Так сложилось, что на "начальном этапе" развития было весьма много желающих писать компиляторы. Со временем этот вопрос потихоньку "утрясли" в пользу стандартно применяемого набора компиляторов и IDE.
:beer:
veso74
Поставщик валерьянки для Кота
Сообщения: 1907
Зарегистрирован: Сб май 05, 2012 20:24:52
Откуда: KN34PC, Болгария
Контактная информация:

Re: Самоучитель по программированию ПИК на ассемблере. Носов

Сообщение veso74 »

Если собираетесь начать писать код (судя по названию темы), почему бы не начать с языка высокого уровня? С, с MPLAB или напр. CCS являются перспективными. Лучше всего то, что способ выражения в алгоритмическом письме в конечном итоге вероятно в будушем принесет пользу другим микроконтроллерам (напр. STM8, STM32) - команды напр. только иметь другое имя.

На уровне контроллеров еще 10-15 лет назад, при проекты низкой сложности, средней сложности и даже часть высокой сложности помещаютсяь в память без использования чистого ассемблера. Будете писать код для логики в выбранном устройстве и взаимодействие между периферией, а не то, как управлять конкретным МК на уровне регистров и портов. В первом варианте напр. переход от одной МК к другой часто занимает секунды/минуты - напр. беру старый проект, переименовываю контроллер, устанавливаю новые выходы, некоторые функции пишу по-другому, некоторые - удаляю и компилирую. Готово - новый проект на новом чипе с использованием большей части старого кода.
Аватара пользователя
PenguinChik
Нашел транзистор. Понюхал.
Сообщения: 151
Зарегистрирован: Ср дек 01, 2021 15:09:09

Re: Самоучитель по программированию ПИК на ассемблере. Носов

Сообщение PenguinChik »

[uquote="BOB51",url="/forum/viewtopic.php?p=4312548#p4312548"]Mpasm это компилятор от разработчика данных микроконтроллеров.
:beer:[/uquote]

А что PIC-AS, разве это не от разработчика? У меня в MPLAB был PIC-AS...MPLAB - это же от разработчика.
Аватара пользователя
КРАМ
Друг Кота
Сообщения: 25259
Зарегистрирован: Чт янв 10, 2008 22:01:02
Откуда: Московская область, Фрязино

Re: Самоучитель по программированию ПИК на ассемблере. Носов

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

Какая разница от кого он?
Важно, что mpasm и pic-as разные по синтаксису проекта ассемблеры.
Pic-as по сути часть Си-проекта и может быть легко скомбинирован с Си-файлами исходника.
И в МПЛАБе нет pic-as. Он есть только в составе компилятора. Без установки ХС8 работать с ним невозможно.
Аватара пользователя
PenguinChik
Нашел транзистор. Понюхал.
Сообщения: 151
Зарегистрирован: Ср дек 01, 2021 15:09:09

Re: Самоучитель по программированию ПИК на ассемблере. Носов

Сообщение PenguinChik »

Ну да...разные. Кто-то в видеоуроке ставит метку, и обозначает ее словом METKA, чтобы с помощью команды "goto" к ней вернуться. И все у него нормально компилируется. Я ставлю METKA, и у меня ругается, типо компилятор не понимает, что это за команда такая.
Последний раз редактировалось PenguinChik Пн окт 31, 2022 16:20:14, всего редактировалось 1 раз.
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15570
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Самоучитель по программированию ПИК на ассемблере. Носов

Сообщение BOB51 »

Компилятор ассемблера для работы в составе ЯВУ(Си) и компилятор для самостоятельного использования весьма разные...
И не только для ПИКов.
8)
Помимо того у ПИКов еще и разница даже в mpasm для проектов с фиксированными и перемещаемыми программами...
:(
Аватара пользователя
MLX90640
Опытный кот
Сообщения: 848
Зарегистрирован: Ср авг 03, 2022 05:22:56

Re: Самоучитель по программированию ПИК на ассемблере. Носов

Сообщение MLX90640 »

А слово МЕТКА - русскими буквами? Ну тогда чож удивляетесь то.
В MPASM и PIC-AS мнемоники и синтаксис команд должны быть одинаковыми, поскольку в даташите на микроконтроллер оное уже прописано.
Последний раз редактировалось MLX90640 Пн окт 31, 2022 16:34:26, всего редактировалось 1 раз.
Аватара пользователя
КРАМ
Друг Кота
Сообщения: 25259
Зарегистрирован: Чт янв 10, 2008 22:01:02
Откуда: Московская область, Фрязино

Re: Самоучитель по программированию ПИК на ассемблере. Носов

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

[uquote="PenguinChik",url="/forum/viewtopic.php?p=4312613#p4312613"]у меня ругается[/uquote]
Еще раз предлагаю не заниматься пустопорожним мазохизмом и выбрать один из двух вариантов:
1. Поставить версию MPLABX 5.35 и спокойно писать на MPASM с примерами из книжки
2. Изучить документацию на PIC-AS и править код согласно документации.
ЗЫ. Метки в PIC-AS ДОЛЖНЫ иметь на конце двоеточние. В MPASMX двоеточие необязательно.
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15570
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: Самоучитель по программированию ПИК на ассемблере. Носов

Сообщение BOB51 »

Что-то у топикстартера НЕ ТО (туманит)...

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

дуб
 nop
goto дуб
mpasm такое вполне пропускает без замечаний...
:dont_know:
Аватара пользователя
PenguinChik
Нашел транзистор. Понюхал.
Сообщения: 151
Зарегистрирован: Ср дек 01, 2021 15:09:09

Re: Самоучитель по программированию ПИК на ассемблере. Носов

Сообщение PenguinChik »

Ну вот, установил МПЛАБ 4.05, и все равно повылазили ошибки. Может там нужно еще что-нибудь дополнительно подключать к проету?
Вложения
Воп2.jpg
(230 КБ) 159 скачиваний
Аватара пользователя
MLX90640
Опытный кот
Сообщения: 848
Зарегистрирован: Ср авг 03, 2022 05:22:56

Re: Самоучитель по программированию ПИК на ассемблере. Носов

Сообщение MLX90640 »

Для обозначения 16-ричной формы числа пишите префикс 0x , то есть 0x06. И там все адреса регистров - однобайтные, поэтому нет смысла записывать как двухбайтное число, плодя лишние нули.
Во-вторых, принято, чтобы инструкции шли во втором столбце табуляции, то есть, от начала строки нажмите один раз клавишу Tab на клавиатуре и дальше пишите инструкцию movlw .
Судя по всему, этот самоучитель от Носова похож на аналогичное творение Корабельникова, который в свое время "прославился" множеством ошибок.
Аватара пользователя
КРАМ
Друг Кота
Сообщения: 25259
Зарегистрирован: Чт янв 10, 2008 22:01:02
Откуда: Московская область, Фрязино

Re: Самоучитель по программированию ПИК на ассемблере. Носов

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

[uquote="MLX90640",url="/forum/viewtopic.php?p=4312884#p4312884"]этот самоучитель от Носова похож на аналогичное творение Корабельникова[/uquote]
К гадалке не ходи... :tea:
Определение регистров периферии в коде вместо включения хедера контроллера в проект, магическое число в конфиге - кагбэ намекаэ...

[uquote="PenguinChik",url="/forum/viewtopic.php?p=4312879#p4312879"]Может там нужно еще что-нибудь дополнительно подключать к проекту?[/uquote]
К проекту нужно подключить хедер - файл <название МК>.inc.
Кроме того, в третий раз предлагаю читать документацию на ассемблер. В данном случае на mpasmx. Ну и на среду.
Кроме того, не нужно скачивать среду разработки из непонятных источников. Судя по версии, вы ее нашли на помойках интернета. Качать нужно с сайта производителя: https://www.microchip.com/en-us/tools-r ... 20Archives
Ответить

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