Например TDA7294

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





Текущее время: Чт мар 28, 2024 11:19:41

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


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



Начать новую тему Ответить на тему  [ Сообщений: 327 ]     ... , , , 11, , , ...  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Пн май 02, 2022 17:50:00 
Родился

Зарегистрирован: Пн май 02, 2022 04:12:13
Сообщений: 3
Рейтинг сообщения: 0
Ради интереса установил MPASM X IDE v5.35 и при компиляции получил сообщение, что:
MPASM is not supported on 64 bit Operating Systems. Please consider migrating your project "QWERTY" configuration "default" to XC8 Assembler or continue to use a previously released IDE.
Видно в этом вся "закавыка" и была. Ну да ладно, для меня пока и MPLAB X IDE v2.35 с избытком хватит. За совет спасибо, обязательно изучим рекомендованный ресурс.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Пн май 02, 2022 19:12:42 
Друг Кота
Аватар пользователя

Карма: 130
Рейтинг сообщений: 2707
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 21621
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Ради интереса установил MPASM X IDE v5.35 и при компиляции получил сообщение, что:
MPASM is not supported on 64 bit Operating Systems.

Вам это сообщение как то помешало работать? У вас не собрался работающий проект? Или вам не о чем поговорить?
Милейший, у меня примерно полсотни 8-битных коммерческих проектов сейчас собраны именно на 5.35 и только 16-разрядные на 5.45 и то лишь потому, что некоторые из них сделаны на новейших чипах поддерживаемых в полной мере, начиная с 5.45 и старше. Всё на АСМе.
Один из них, который есть на домашнем компе:
Изображение


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Пт май 13, 2022 15:39:36 
Грызет канифоль

Карма: -10
Рейтинг сообщений: 17
Зарегистрирован: Пт дек 30, 2016 18:05:50
Сообщений: 286
Откуда: Украина.
Рейтинг сообщения: 1
Написал альтернативный кряк(оптимизация Pro) для компиляторов XC8(PIC/AVR)/XC16/XC32.
Ничего патчить не нужно, работает даже в Linux\Win11
Ссыль.


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

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

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Чт июл 28, 2022 21:42:47 
Вымогатель припоя
Аватар пользователя

Карма: 5
Рейтинг сообщений: 10
Зарегистрирован: Ср дек 08, 2010 19:03:17
Сообщений: 513
Рейтинг сообщения: 0
пару слов, как и что делает кряк?
в частности вот это
Код:
...
sudo update-binfmts --install xclm-hack /opt/microchip/xc8/v2.36/bin/xclm-hack --magic `(hexdump -e '16/1 "%02x"' -n 64 /opt/microchip/xc8/v2.36/bin/xclm | sed -e 's/../\\\x&/g')`
sudo service binfmt-support start

_________________
Енот - это кот, только инкогнито!
p.s. держитесь обоими руками, а то прорвет...


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

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

Подробнее>>
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Чт июл 28, 2022 22:36:17 
Грызет канифоль

Карма: -10
Рейтинг сообщений: 17
Зарегистрирован: Пт дек 30, 2016 18:05:50
Сообщений: 286
Откуда: Украина.
Рейтинг сообщения: 1
sunjob, binfmts работает как демон(служба в фоне), оно отслеживает любой указанный формат при исполнении его, если в заголовке ELF(исполняемого линукс) файла найдет HEX код, который указан в формате ("x7f\x45\....") -- оно будет запускать/заменять любой сервис, подменяя этот файл на тот, который указали(или например исполнять этот файл через какой-нибудь отладчик, к примеру).

У меня binfmts работал для запуска 32битных исполняемых файлов в 64бит системе(можете найти в интернете инструкцию) - практически также работает как этот кряк.


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

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

Подробнее>>
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Пт июл 29, 2022 01:15:34 
Вымогатель припоя
Аватар пользователя

Карма: 5
Рейтинг сообщений: 10
Зарегистрирован: Ср дек 08, 2010 19:03:17
Сообщений: 513
Рейтинг сообщения: 0
спасибо!

_________________
Енот - это кот, только инкогнито!
p.s. держитесь обоими руками, а то прорвет...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Пн авг 01, 2022 19:17:57 
Опытный кот
Аватар пользователя

Карма: 7
Рейтинг сообщений: 82
Зарегистрирован: Сб июн 01, 2013 22:24:21
Сообщений: 751
Откуда: ПФО
Рейтинг сообщения: 0
Здраствуйте уважаемые коты, при изучении MPLAB X IDE вроде начало получатся, уже накидал несколько функций кода, вроде всё работало пока не начал объединять всё воедино. А именно написал функцию Delay_ms(), всё ок, запустил прерывания от таймера тоже всё ОК. Когда сложил всё вместе и тут всё поплыло, если работает Delay_ms() то программа вылетает в рестарт или работает не корректно, при использовании цикла for(i=0;i<800000;i++) (long i) тоже начинает работать некорректно(почему то цикл ускоряется раз в 10 :? ). Стоит выключить прерывание от таймера и всё начинает работать как надо 0_о :facepalm:
Ссылка на проект: https://drive.google.com/file/d/12bHBic ... sp=sharing
Если надо могу выложить в виде текста на странице, там просто несколько файлов, объединённых в один проект.

Добавлено after 31 minute 44 seconds:
Цикл пауза реализован был так:
Код:
void main()
  Init();
  while(1)
  {
     for(i=0;i<800000;i++){}
     LED1INV();

  }



Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Пн авг 01, 2022 22:07:03 
Грызет канифоль

Карма: -10
Рейтинг сообщений: 17
Зарегистрирован: Пт дек 30, 2016 18:05:50
Сообщений: 286
Откуда: Украина.
Рейтинг сообщения: 0
alex_, что-то вы намудрили с таймером.
Там проще некуда, желательно делать как все делают, прерывание в скажем 1мс записывать в long переменную millis.
Например как устроен таймер у меня в main(я не разделял всё, т.к. там несколько строчек)
Код:
....
....
#define _XTAL_FREQ 8000000          // Required for Timer1(millis,delay) and Timer2(PWM) (specify clock 8MHz)
#include <xc.h>

volatile unsigned long millis = 0;

void __interrupt() isr(void) {
    if (TMR1IF) {
        TMR1IF = 0;             //Clear interrupt Timer1 flag
        unsigned short tpr = _XTAL_FREQ/1000;
        tpr = 0xFFFF - tpr;
        TMR1H = tpr >> 8;       //Set Initial Value of Timer1
        TMR1L = tpr & 0xFF;     //*
        millis++;
    }
}

unsigned long _millis(void) {
    return millis;
}

void _delay_ms(unsigned long value) {
    unsigned long curMillis = millis;
    while((millis - curMillis) < value);
    millis = curMillis;
}

void setup_timer1(void) {
    OSCCON = 0b01110010;    //8MHZ internal clock.

    // Set up TIMER1 to tick at 1ms intervals.
    // The oscillator of Timer1 ticks at FOSC(without prescaler).
    // That is 8MHz or 1/8000000 seconds per tick.
    // or 0.000000125s, or 0.000125ms, so 1 ms is 8000 ticks.
    TMR1CS1 = 0;           //System Clock (FOSC) for Timer1
    TMR1CS0 = 1;           //*
    unsigned short tpr = _XTAL_FREQ/1000;
    tpr = 0xFFFF - tpr;
    TMR1H = tpr >> 8;      //Set Initial Value of Timer1
    TMR1L = tpr & 0xFF;    //*
    TMR1IF = 0;            //Clear interrupt Timer1 flag
    TMR1IE = 1;            //Enable Timer1 Overflow Interrupt
    TMR1ON = 1;            //Turn on TMR1

    // Enable the interrupt system
    PEIE = 1;          // Enable Peripheral Interrupt
    GIE = 1;           // Enable Global Interrupt
}

void main(void)
{
    setup_timer1();

    while(1) {

    }
....
....


Помимо полноценной функции _delay_ms тут есть еще _millis которой можно сравнивать время(например она нужна для работы с кнопками(дребезг и задержка нажатия))
У меня частота прямая 8Mhz, Если у Вас прескаляр, то нужно делить еще это значение.

Учился по этой ссылке
http://zattouka.net/GarageHouse/micon/M ... RtoLED.htm
(Google переводчик Вам в помощь)


Последний раз редактировалось Deoptim Пн авг 01, 2022 22:18:14, всего редактировалось 1 раз.

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

Карма: 7
Рейтинг сообщений: 82
Зарегистрирован: Сб июн 01, 2013 22:24:21
Сообщений: 751
Откуда: ПФО
Рейтинг сообщения: 0
alex_, что-то вы намудрили с таймером

Не исключено, но судя по примеру вроде делал все тоже самое, и самое интересное что ведь работает, пока ещё чего нибудь не добавишь :dont_know:
С другой стороны, чего это надо добавить в таймер чтобы while заглючило :shock:
В примере просто 2 таймера первый пока выкл, пока со вторым не разобрался, + прерывание по входу но пока тоже выкл, хотя оно когда было вкл вроде не мешало


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Вт авг 02, 2022 14:04:36 
Опытный кот
Аватар пользователя

Карма: 7
Рейтинг сообщений: 82
Зарегистрирован: Сб июн 01, 2013 22:24:21
Сообщений: 751
Откуда: ПФО
Рейтинг сообщения: 0
Прерывание завелось, после того как поменял одно слово в обработчике прерывания

было void __ISR (_TIMER_2_VECTOR, IPL4SRS ) T2Interrupt(void)
стало void __ISR (_TIMER_2_VECTOR, IPL4AUTO) T2Interrupt(void)

Пока ещё не разобрался по чему, но в режиме SRS контроллер входит в прерывание, далее пару микросекунд и вылетаем на перезагрузку :?
Deoptim, тут дело уже в векторном прерывании, на 8 битный контроллерах всё было тоже ок, а тут не туда вектор запулишь и усё.
Сокращение вышеописанного цикла в while(1) тоже было связано с бесконечным рестартом, не успевал досчитать до конца.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Чт авг 25, 2022 19:40:41 
Опытный кот
Аватар пользователя

Карма: 7
Рейтинг сообщений: 82
Зарегистрирован: Сб июн 01, 2013 22:24:21
Сообщений: 751
Откуда: ПФО
Рейтинг сообщения: 0
Что то совсем сюда никто не заходит :(
Копая IDE наткнулся на очередные грабли: была написана функция Delay(ms, us, cyc). Посчитав и прогнав через симулятор выставил коэффициенты чтобы +- попадало, рассчитано было исходя из тактовой частоты 80МГц -> nop 12.5 ns. Но при заливке я сильно удивился когда увидел что nop затрачивает 100ns в 8 раз больше :shock:
И самое интересное что таймеры были посчитаны исходя из 80МГц и там всё совпало, как будто где то какой то предделитель пропустил :facepalm:
Пример кода:

Значение регистра OSCCON=0х 01 45 33 22, на выходе получаем частоту 50КГц 10мкс на фронт и 10мкс на спад, по 100ns на NOP :facepalm:
COSC = 011 => Primary Oscillator with PLL module (XTPLL, HSPLL or ECPLL) 8МГц
FPLLIDIV = 001 = Divide by 2 8/2=4МГц
PLL Multiplier = 20x Multiplier 4*20=80Мгц
PLL Output Divider = PLL Divide by 1 =80МГц
Ну и вроде это всё, что связано с настройкой системной частоты, или я что то пропустил :?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Чт авг 25, 2022 21:08:31 
Друг Кота
Аватар пользователя

Карма: 130
Рейтинг сообщений: 2707
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 21621
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Что то совсем сюда никто не заходит.....или я что то пропустил :?
Пропустили конечно.
Можно только догадываться, что речь идет о PIC32. :wink: Кстати, там есть немного разные ядра MIPS32. Поэтому следовало бы указать о каком чипе речь.
Не вникал в даташит, но в регистре управляющем редукцией ядра часто дефолт совсем не единичный делитель...
Плюс к этому, чтобы понять почему у вас задержка не реализуется согласно расчету, следует посмотреть листинг дизасма. Особенно в части реализации ЦИКЛА.
Ну и не надо столько нопов городить. Достаточно нескольких (2...3) с разным количеством по нулю и единице в порту.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Чт авг 25, 2022 21:31:28 
Опытный кот
Аватар пользователя

Карма: 7
Рейтинг сообщений: 82
Зарегистрирован: Сб июн 01, 2013 22:24:21
Сообщений: 751
Откуда: ПФО
Рейтинг сообщения: 0
PIC32MX460f512L, нопов наставил чтобы проблему было видно наверняка(если прошить контроллер), в жизни столько нопов само собой не поставлю :)
Дизасм пришлю завтра. но самое интересное в компиляторе микроси(недоардуина) нопы выполняются положенные им 12,5 нс, начал копать дизасм(микроси) но пока не силён в асме и не выявил корень проблемы.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Чт авг 25, 2022 21:38:04 
Друг Кота
Аватар пользователя

Карма: 130
Рейтинг сообщений: 2707
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 21621
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
пока не силён в асме

Там все просто. Есть инструкции не выполняющие ветвления - эти почти все одноцикловые. А вот с ветвлениями все сложно из-за перезагрузки конвейера. Там может быть много циклов... Поэтому я и говорю про дизасм ЦИКЛА. Или нужно сравнивать ветви с разным количеством нопов. Вывод в порт тоже не быстрый.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Чт авг 25, 2022 22:16:43 
Опытный кот
Аватар пользователя

Карма: 7
Рейтинг сообщений: 82
Зарегистрирован: Сб июн 01, 2013 22:24:21
Сообщений: 751
Откуда: ПФО
Рейтинг сообщения: 0
КРАМ писал(а):
Там все просто.

Как бы да, но пока не особо разбираюсь. Предварительно (не утверждаю в последней инстанции) но в цикле ветвления не увидел(дизасм), хотя могу и ошибаться. Нопов специально накидал много чтобы периферия оказывала как можно меньше влияния на расчёты в том числе и переход while(1). Весь материал на работе сейчас не могу его предоставить (


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Пт авг 26, 2022 14:07:58 
Опытный кот
Аватар пользователя

Карма: 7
Рейтинг сообщений: 82
Зарегистрирован: Сб июн 01, 2013 22:24:21
Сообщений: 751
Откуда: ПФО
Рейтинг сообщения: 0
MPLAB


MikroC


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Пн авг 29, 2022 10:09:11 
Опытный кот
Аватар пользователя

Карма: 7
Рейтинг сообщений: 82
Зарегистрирован: Сб июн 01, 2013 22:24:21
Сообщений: 751
Откуда: ПФО
Рейтинг сообщения: 0
Решил приложить осциллограммы для правдоподобности

MPLAB
Изображение

MikroC
Изображение

Из дизассемблера видно что код один и тот же, в микроси только перед стартом идёт некая конфигурация, которая и позволяет работать чипу на положенных ему 80МГц. Конфигурационная строка чипа в обоих случаях одинаковая: :102FF000FFFFFFFFD979F8FF7BC96DFFFFFFFF7F60 и была расписана выше.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Пн авг 29, 2022 22:31:09 
Опытный кот
Аватар пользователя

Карма: 7
Рейтинг сообщений: 82
Зарегистрирован: Сб июн 01, 2013 22:24:21
Сообщений: 751
Откуда: ПФО
Рейтинг сообщения: 0
Похоже 32 пиками мало кто балуется, судя по куче ответов (
Гугл конечно в помощь, но несколько дней стучания головой об стену это, что то с чем то.
КРАМ, был в какой то степени прав, тут уже далеко не простое АЛУ, где послал команду и он тебе посчитал за n'ое количество тактов. Тут есть кеш, сопроцессор и задерржка чтения шлеш памяти, если это не настроишь то и получишь то же что и у меня.
Раньше это решалось строкой: SYSTEMConfig(SYS_FREQ, SYS_CFG_WAIT_STATES | SYS_CFG_PCACHE);
Сейчас фиг, надо доб библиотетеку хармони ставить, а ручками пока ещё не разобрался как и что нужно настроить :(


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Чт сен 01, 2022 17:32:11 
Опытный кот
Аватар пользователя

Карма: 7
Рейтинг сообщений: 82
Зарегистрирован: Сб июн 01, 2013 22:24:21
Сообщений: 751
Откуда: ПФО
Рейтинг сообщения: 0
По пикам похоже сказать некому, или не там запостил.
Ладно вопрос по теме:
Есть глобальные переменные которые находятся в файле Global.h
Всё объявлено через #ifndef, чтобы было подключено только 1 раз, чтобы файлы имели доступ к объявленным переменным. Почти в каждом .c файле идёт подключение к файлу Global.h, в компиляторе XC32v2.5 всё работало отлично, но после обновления компилятора до версии 4.1 вываливает кучу ошибок на тему многократного определения переменных как будто #ifndef не работает. :dont_know:
И ещё выпилили функцию itoa() :(


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB X IDE
СообщениеДобавлено: Чт сен 01, 2022 20:47:14 
Грызет канифоль

Карма: -10
Рейтинг сообщений: 17
Зарегистрирован: Пт дек 30, 2016 18:05:50
Сообщений: 286
Откуда: Украина.
Рейтинг сообщения: 0
alex_, <xc.h> подключали? Он также должен быть на уровне вашего Global.h(а не в нём) и первым в очереди xc.h, потом Global.h


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

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


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

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


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

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


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