Например TDA7294

Форум РадиоКот • Просмотр темы - MPLAB X IDE
Форум РадиоКот
Здесь можно немножко помяукать :)





Текущее время: Вт апр 23, 2024 12:49:20

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 327 ]     ... , , , 6, , , ...  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Чт дек 16, 2021 21:08:38 
Первый раз сказал Мяу!

Зарегистрирован: Пн ноя 11, 2013 03:50:13
Сообщений: 34
Рейтинг сообщения: 0
Так я ничего и не резервирую.
Я инициализиркю указатель на адрес регистра.
В старом лабе он сразу виден в окне регистров под именем которое я ему дал.
В новом лабе так не происходит.
Так как за это отвечает препроцессор, клпать надо в заголовочных файлах.
Непосредственно из кода define и equ результата не даёт.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Чт дек 16, 2021 21:55:48 
Друг Кота
Аватар пользователя

Карма: 138
Рейтинг сообщений: 2712
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 21834
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Так я ничего и не резервирую.
Я инициализиркю указатель на адрес регистра.

Вы ничего не инициализируете. Вы просто присваиваете имя константе. Поэтому ассемблер и среда не считают эти имена ни памятью, ни переменными.
И не надо фантазировать. Нужно просто открыть мануал на ассемблер и прочесть в нем как резервируется память.
Резервируется она ТОЛЬКО В ПЕРЕМЕЩАЕМОМ РЕЖИМЕ директивой ассемблера udata.
Синтаксис выглядит так:
Код:
com_var   udata 0x20
currPeltier         res 2
setTemp         res 2
tempRad         res 2
tempPeltier      res 2
tempBox         res 2
startTimer         res 1

      udata_shr
flags         res 1
;----------
data_ready   equ   0
two_sec_req   equ   1
first_time      equ   2
alarm_req      equ   3
;----------
muxADC         res 1
muxDataADC      res 1


Этот пример из реального проекта.
com_var udata 0x20 содержит имя секции неинициализированных данных com_var (выбирается произвольно) и начальный адрес 0х20.
udata_shr является директивой выделения общего для всех банков сегмента памяти.
директива res резервирует количество байт указанных после нее. res 1 - один байт.
tempBox res 2 резервирует 2 байта. Обращение к ним в коде будет как tempBox и tempBox+1


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Чт дек 16, 2021 23:45:03 
Первый раз сказал Мяу!

Зарегистрирован: Пн ноя 11, 2013 03:50:13
Сообщений: 34
Рейтинг сообщения: 0
И я не нашёл в ассемблере операнда или дерективы res
Так же нет такой дерективы udata
Мы вобще про какой ассемблер ведём речь?
Я про pic-as
Я создаю прямой указатель на регистр данных
COUNT EQU 0x10h
Далее использую этот COUNT как указатель в коде в место адреса, стандартный приём, во всех даташитах он как пример используется.
Всё прекрасно работает и в старом мплабе и новом.
В новом я естественно делаю этот указатель в нужном псекте.
PSECT udata,reloc = 10h,abs,ovrld
COUNT EQU 0x10h
Всё прекрасно работает, но метка на адрес не отображается в окне файловых регистров.
Вот и всё, просто неудобно.

Добавлено after 33 minutes 24 seconds:
Спасибо ответившим котам.
В старом и новом мплабе ассемблеры немного разные.
Там много отличий как раз по выделению памяти.
Скорее всего я не правильно работаю с памятью.
Пойду перечитввать весь мануал подробно.


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Пт дек 17, 2021 09:02:16 
Друг Кота
Аватар пользователя

Карма: 138
Рейтинг сообщений: 2712
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 21834
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Я про pic-as
Я создаю прямой указатель на регистр данных
COUNT EQU 0x10h
Далее использую этот COUNT как указатель в коде в место адреса, стандартный приём, во всех даташитах он как пример используется.
Всё прекрасно работает и в старом мплабе и новом.

Тююю..., милейший!
Да вы оригинал. Причем тут старый/новый MPLAB?
Какие вы называете старым или новым?
Под "старым" MPLAB называют СРЕДУ РАЗРАБОТКИ (MPLAB IDE) версии 8.92 и ниже. А под "новым" - версию X (MPLABX IDE).
Вы же пытаетесь говорить об АССЕМБЛЕРЕ. Ассемблер не имеет отношения к среде разработки.
У Микрочипа для 8-битных МК семейства PIC есть ДВА ассемблера: mpasm (mpasmx) и pic-as. Последней версией СРЕДЫ содержащей в своем пакете установки mpasmx была MPLABX IDE ver. 5.35. Версии 5.45 и последняя 5.50 уже не имеют старого ассемблера mpasm (mpasmx) - Микрочип перестал его поддерживать. Вместо него надлежит использовать pic-as, который является ЧАСТЬЮ С-компилятора XC8 и входит в его пакет установки.
Синтаксис этих ассемблеров радикально отличается.
В pic-as переменные резервируются в секции udata, но синтаксис выделения памяти выглядит так:
Код:
name_var:       DS 1

DS - директива ассемблера выделяющая байты ОЗУ (Reserves storage). В мануале обозначена в таблице директив.
Однако непонятно зачем вам этот геморрой? С какой целью вы перешли на версии среды не поддерживающие mpasmx? У вас применяются какие то суперновые чипы?
Но даже если вы это сделали осмысленно, нужно отдавать себе отчет в том, что в сложившейся ситуации нет никакого смысла объявлять переменные в асм-файле. Проще это сделать в Си, а код можно писать на АСМе. У вас будет смешанный проект.


Вернуться наверх
 
Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторов

Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Пт дек 17, 2021 14:10:24 
Первый раз сказал Мяу!

Зарегистрирован: Пн ноя 11, 2013 03:50:13
Сообщений: 34
Рейтинг сообщения: 0
Цитата:
В pic-as переменные резервируются в секции udata, но синтаксис выделения памяти выглядит так:
Код:
name_var:       DS 1

DS - директива ассемблера выделяющая байты ОЗУ (Reserves storage). В мануале обозначена в таблице директив.
Однако непонятно зачем вам этот геморрой? С какой целью вы перешли на версии среды не поддерживающие mpasmx? У вас применяются какие то суперновые чипы?
Но даже если вы это сделали осмысленно, нужно отдавать себе отчет в том, что в сложившейся ситуации нет никакого смысла объявлять переменные в асм-файле. Проще это сделать в Си, а код можно писать на АСМе. У вас будет смешанный проект.


Перешёл потому что старый на линуксе не работает.

Пробоовал и DB и DS и DABS
Не получается.

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


Последний раз редактировалось andrey13 Пт дек 17, 2021 14:26:41, всего редактировалось 2 раз(а).

Вернуться наверх
 
Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Пт дек 17, 2021 14:16:27 
Встал на лапы
Аватар пользователя

Карма: 3
Рейтинг сообщений: 17
Зарегистрирован: Чт ноя 26, 2015 23:22:35
Сообщений: 124
Откуда: не с Уфы
Рейтинг сообщения: 0
PSECT udata,reloc = 10h,abs,ovrld

Я так понимаю, эта специфичная строчка как раз из этого самого нового pic-as. Что она означает и где-нибудь вообще есть полноценный документ по этому асму (вроде известного mpasm.pdf) ?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Пт дек 17, 2021 14:19:10 
Первый раз сказал Мяу!

Зарегистрирован: Пн ноя 11, 2013 03:50:13
Сообщений: 34
Рейтинг сообщения: 0
PSECT udata,reloc = 10h,abs,ovrld

Я так понимаю, эта специфичная строчка как раз из этого самого нового pic-as. Что она означает и где-нибудь вообще есть полноценный документ по этому асму (вроде известного mpasm.pdf) ?


Вот


Вложения:
MPLAB XC8 PIC Assembler User's Guide 50002974A.pdf [681.11 KiB]
Скачиваний: 885
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Пт дек 17, 2021 14:24:02 
Друг Кота
Аватар пользователя

Карма: 138
Рейтинг сообщений: 2712
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 21834
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Перешёл потому что старый на линуксе не работает.

Не выдумывайте. Версия 5.35 работает с Линуксом.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Пт дек 17, 2021 14:30:16 
Модератор
Аватар пользователя

Карма: 90
Рейтинг сообщений: 1289
Зарегистрирован: Чт мар 18, 2010 23:09:57
Сообщений: 4510
Откуда: Планета Земля
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Что-то я не пойму. Заглянул сейчас в папку с установленным MPLAB X, а там есть папочка MPASM Suite. Всё есть, всё устанавливается....


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Пт дек 17, 2021 14:33:59 
Друг Кота
Аватар пользователя

Карма: 138
Рейтинг сообщений: 2712
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 21834
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Версия у вас какая?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Пт дек 17, 2021 14:45:37 
Первый раз сказал Мяу!

Зарегистрирован: Пн ноя 11, 2013 03:50:13
Сообщений: 34
Рейтинг сообщения: 0
Перешёл потому что старый на линуксе не работает.

Не выдумывайте. Версия 5.35 работает с Линуксом.


Не знал, надо попробовать.
Тем не менее, теперь придётся жить с новым ассемблером, и всё равно переходить на новую среду.
Тем более новый ассемблер хорош, мне нравится их фишка с псектами.

У меня один и тот же код в обоих средах.
И вот такое мальенькое неудобство в новой среде.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Пт дек 17, 2021 15:36:51 
Встал на лапы
Аватар пользователя

Карма: 3
Рейтинг сообщений: 17
Зарегистрирован: Чт ноя 26, 2015 23:22:35
Сообщений: 124
Откуда: не с Уфы
Рейтинг сообщения: 0
....
Тем не менее, теперь придётся жить с новым ассемблером, и всё равно переходить на новую среду ......

Придётся? Это ещё кто так сказал? Должны быть какие-то веские причины.

Если, например, говорить конкретней - вот, скажем, сижу я на 8.92 и пишу под 18f46k22...
Вопрос: есть хоть один весомый аргумент, чтобы переехать на pic-as? Как именно он упростит мне задачу, сократит время.....?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Пт дек 17, 2021 15:41:04 
Друг Кота
Аватар пользователя

Карма: 138
Рейтинг сообщений: 2712
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 21834
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Не, я отказался в новых 8-битных чипах от чистого асма. Либо Си, либо смешанный код.
А старые чипы, где написано на mpasmx, я поддерживаю на версии 5.35.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Пт дек 17, 2021 16:25:34 
Первый раз сказал Мяу!

Зарегистрирован: Пн ноя 11, 2013 03:50:13
Сообщений: 34
Рейтинг сообщения: 0
Дело в том что вы уже крутые коты и давно сидите на микроконтррллерах, у вас уже всё устоялось, вы познали дзен.
Я только второй месяц как начал их изучать, а если ты новичёк то зачем разрываться на несколько сред.
Если ты с нуля, то лучше взять самую свежую среду, она поддерживает все контроллеры от самых старых до самых новых.
И ассемблер тоже без разницы какой изучать, если нулевой уровень, логично изучить тот который в самой свежей среде, он же скорее всего и будет основным на долгое время.

У меня было так, мне отдали ноубук где стоит какая то предыдущая версия лаба, где mpasm ассемблер.
Я что то там пытался делать.
Ноутбук попросили вернуть.
Я пытался на домашнем компе под вайном в линуксе запустить такую же как на ноутбуке, у меня что то не получилось (я думал что мплаб только под винду).
Я зашёл на сайт микрочипа и скачал последний лаб на линукс.
Установил и теперь на нём.

В принципе всё устаривает, нет меток в эмуляторе, ну и ладнно, не смертельно, буду смотреть регистры данных по их адресам, делов то.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Пт дек 17, 2021 21:12:35 
Модератор
Аватар пользователя

Карма: 90
Рейтинг сообщений: 1289
Зарегистрирован: Чт мар 18, 2010 23:09:57
Сообщений: 4510
Откуда: Планета Земля
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Версия у вас какая?
5.45


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Пт дек 17, 2021 22:43:13 
Встал на лапы
Аватар пользователя

Карма: 3
Рейтинг сообщений: 17
Зарегистрирован: Чт ноя 26, 2015 23:22:35
Сообщений: 124
Откуда: не с Уфы
Рейтинг сообщения: 0
... либо смешанный код. ...
asm вставки?
А допустим, если наоборот, - в основе асм, но некоторые функции делать на си, компилировать и уже полученный фрагмент вставлять. Такое вообще практикуется, или это плохая идея?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Сб дек 18, 2021 06:33:27 
Друг Кота
Аватар пользователя

Карма: 138
Рейтинг сообщений: 2712
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 21834
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
asm вставки?

Нет, не вставки. Речь идет о совместной компиляции .c/.h и .s/.inc файлов в любом их соотношении.
Версия у вас какая?
5.45

Мне кажется вы что то путаете. Вот папка установленного 5.45:
Изображение Изображение Изображение
А вот папка более ранних версий. Они даже в другую папку Винды устанавливаются:
Изображение Изображение Изображение


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Сб дек 18, 2021 08:20:08 
Модератор
Аватар пользователя

Карма: 90
Рейтинг сообщений: 1289
Зарегистрирован: Чт мар 18, 2010 23:09:57
Сообщений: 4510
Откуда: Планета Земля
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Вот, у мну на работе :
СпойлерИзображение
Вложение:
2021-12-18_08-12-15.png [88.46 KiB]
Скачиваний: 74


Изображение
Вложение:
2021-12-18_08-14-02.png [67.09 KiB]
Скачиваний: 89

Но тут у меня 5.35, давно не обновлялся.
Всё в одной папке - "C:\Program Files (x86)\Microchip". Трудно здесь что-то напутать.
Дома тоже самое. Вроде бы :roll: :)))


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Сб дек 18, 2021 09:34:56 
Друг Кота
Аватар пользователя

Карма: 138
Рейтинг сообщений: 2712
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 21834
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Так о том и речь, что 5.35 содержит MPASM, а 5.45 уже НЕ содержит.
И, начиная с версии 5.45, все инструменты Микрочипа попадают в папку Program Files, а не Program Files (x86).

В принципе всё устаривает, нет меток в эмуляторе, ну и ладнно, не смертельно, буду смотреть регистры данных по их адресам, делов то.

Есть такое обоснованное мнение, что вы не определили свои переменные как ГЛОБАЛЬНЫЕ.
Добавьте сверху директиву global var1, var2, var3 , заменив имена переменных на свои и жизнь у вас наладится... :tea: :)))
Изображение


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Сб дек 18, 2021 12:46:11 
Встал на лапы
Аватар пользователя

Карма: 3
Рейтинг сообщений: 17
Зарегистрирован: Чт ноя 26, 2015 23:22:35
Сообщений: 124
Откуда: не с Уфы
Рейтинг сообщения: 0
Что-то я не пойму. Заглянул сейчас в папку с установленным MPLAB X, а там есть папочка MPASM Suite. Всё есть, всё устанавливается....

Вы вот этой своей формулировкой ввели в заблуждение. Я тогда решил, что у вас в папке mplabx папка mpasm suite. А ныне фотки взглянул, а оказывается всё как обычно....... я бы вам сразу тогда написал, что папку mpasm suite создал 8-й mplab, к иксу она не имеет отношения (у него там своя есть mpasmx)


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 327 ]     ... , , , 6, , , ...  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 12


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y