Например TDA7294

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





Текущее время: Сб мар 30, 2024 11:58:12

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


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



Начать новую тему Ответить на тему  [ Сообщений: 495 ]     ... , , , 18, , , ...  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: MPLAB в вопросах и ответах
СообщениеДобавлено: Вт мар 14, 2017 16:00:15 
Друг Кота
Аватар пользователя

Карма: 46
Рейтинг сообщений: 1368
Зарегистрирован: Пт авг 28, 2009 21:34:30
Сообщений: 7212
Откуда: 845-й км.
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
не угадал.
Код:
Error[151]   C:\TEMP\TEST.X\TEST.ASM 1222 : Operand contains unresolvable labels or is too complex


Поигрался... конструкция типа
Код:
IF HIGH(1024) != 0
проходит, но стоит в аргумент поставить $ или имя метки - нет. Чего-то не понимаю.

Разобрался.
В пропертях сборки нужно было поставить галочку Build in Absolute mode

_________________
А люди посмотрят и скажут: "Собаки летят. Вот и осень."


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB в вопросах и ответах
СообщениеДобавлено: Ср июн 07, 2017 13:49:18 
Встал на лапы

Зарегистрирован: Вс окт 23, 2016 17:37:09
Сообщений: 149
Рейтинг сообщения: 0
здравствуйте! не запускается MPLAB. "Cannot open file @C:\PROGRA~1\MICROC~1\MPLABX\v3.20\MPLAB_~2\etc\MPLAB_~1.clusters" for reading. Не удается найти указанный файл."

MPLAB v.3.20, ОС WinXP SP3.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB в вопросах и ответах
СообщениеДобавлено: Ср июн 07, 2017 14:59:22 
Сверлит текстолит когтями
Аватар пользователя

Карма: 25
Рейтинг сообщений: 168
Зарегистрирован: Ср янв 29, 2014 08:41:31
Сообщений: 1231
Откуда: Баку
Рейтинг сообщения: 0
Может все-таки MPLAB Х?

_________________
Каждый имеет право на свое личное ошибочное мнение.

У меня было тяжелое детство - я до 14 лет смотрел черно-белый телевизор.


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

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

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: MPLAB в вопросах и ответах
СообщениеДобавлено: Вс июн 11, 2017 11:12:52 
Потрогал лапой паяльник

Карма: 1
Рейтинг сообщений: 13
Зарегистрирован: Чт авг 08, 2013 01:06:54
Сообщений: 359
Рейтинг сообщения: 0
Доброго времени суток. MPLAB 8.92. Как в симуляторе задать частоту сигнала для работы Таймера 1 в режиме тактирования от внешнего источника ?


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

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

Подробнее>>
Не в сети
 Заголовок сообщения: Re: MPLAB в вопросах и ответах
СообщениеДобавлено: Вс июн 11, 2017 11:27:34 
Друг Кота
Аватар пользователя

Карма: 130
Рейтинг сообщений: 2707
Зарегистрирован: Чт янв 10, 2008 22:01:02
Сообщений: 21631
Откуда: Московская область, Фрязино
Рейтинг сообщения: 0
Подать на вход тактирования сигнал из Стимулов. Только этот сигнал будет все равно привязан к тактирующей ядро частоте. Патамушта эта частота и является единственным базовым сигналом симулятора.


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

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

Подробнее>>
Не в сети
 Заголовок сообщения: Re: MPLAB в вопросах и ответах
СообщениеДобавлено: Вс июн 11, 2017 14:01:10 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 81
Рейтинг сообщений: 440
Зарегистрирован: Чт дек 27, 2012 20:46:09
Сообщений: 2024
Откуда: Болгария, г. Лом
Рейтинг сообщения: 0
Вложение:
SCL.doc [485 KiB]
Скачиваний: 290
Подать на симуляторе .scl файл

что-то такое
Код:
onfiguration for "pic16f628a" is
end configuration;


testbench for "pic16f628a" is
begin
    process is
    begin
        wait;
    end process;

    clk_1: process is
    begin
        loop
            T1OSCI <= '0';
            wait for 200 ns   ;
            T1OSCI <= '1';
          wait for 400 ns   ;
        end loop;
        T1OSCI <= '1';
    end process clk_1;

end testbench;


Етот код подасть на вход T1OSCI 0 за время 200 ns и 1 за время 400ns вне зависимости от такта МК

_________________
Лом - ето город в Болгарии, а не инструмент юстировки електроники.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB в вопросах и ответах
СообщениеДобавлено: Пн июн 12, 2017 11:33:19 
Потрогал лапой паяльник

Карма: 1
Рейтинг сообщений: 13
Зарегистрирован: Чт авг 08, 2013 01:06:54
Сообщений: 359
Рейтинг сообщения: 0
Спасибо, утянул как пример.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Не работает в железе.
СообщениеДобавлено: Вт сен 19, 2017 19:32:27 
Открыл глаза
Аватар пользователя

Карма: 3
Рейтинг сообщений: 15
Зарегистрирован: Сб фев 13, 2016 21:58:21
Сообщений: 41
Откуда: Волгоград
Рейтинг сообщения: 0
Доброго времени суток! Проблема примерно следующая:
Собрал терморегулятор для научных целей с некоторыми наворотами. В протеусе и при втутрисхемной отладке через PicKit3 устройство работает.
Если же запускать автономно, то отказывается работать основная функция терморегулятора- включать/отключать нагрузку, при том как все остальное работает исправно(опрос датчиков температуры, вывод информации на экран, таймеры, запись/восстановление параметров из EEPROM).
Бьюсь не один день, просматривал правильность выбора банков, страниц памяти(в конечном итоге все впихнул на одну страницу), по разному задавал адрес переменным. не знаю куда податься. Подскажите, может есть какие-то типовые ошибки, или кто-то сталкивался с подобным.
Код огромный, выкладывать его весь не смысла, а где проблема - не знаю.
Изображение


Вложения:
Комментарий к файлу: Проект целиком в MPLAB X3.61
Morozilka.X.zip [357.25 KiB]
Скачиваний: 326
Комментарий к файлу: Файл проекта в Proteus.
(изменить расширение на .pdsprj)

Морозилка.zip [19.97 KiB]
Скачиваний: 332
Комментарий к файлу: Исходник на ассемблере
Morozilka_6_optimizac_Pagesel_-_equ_+.asm [97.5 KiB]
Скачиваний: 705
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB в вопросах и ответах
СообщениеДобавлено: Вт сен 19, 2017 19:54:57 
Друг Кота
Аватар пользователя

Карма: 46
Рейтинг сообщений: 1368
Зарегистрирован: Пт авг 28, 2009 21:34:30
Сообщений: 7212
Откуда: 845-й км.
Рейтинг сообщения: 1
Медали: 1
Получил миской по аватаре (1)
Попробуйте вместо bsf/bcf PORTA... писать bsf/bcf LATA. Ну и аналогично все записи в порты делать через LAT регистры, а не PORT.

_________________
А люди посмотрят и скажут: "Собаки летят. Вот и осень."


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB в вопросах и ответах
СообщениеДобавлено: Вт сен 19, 2017 20:37:55 
Открыл глаза
Аватар пользователя

Карма: 3
Рейтинг сообщений: 15
Зарегистрирован: Сб фев 13, 2016 21:58:21
Сообщений: 41
Откуда: Волгоград
Рейтинг сообщения: 0
Цитата:
Попробуйте вместо bsf/bcf PORTA... писать bsf/bcf LATA. Ну и аналогично все записи в порты делать через LAT регистры, а не PORT.


ПОМОГЛО!!!! :)))

Применил эту правку только к PORTA.
Бросил проект 2 месяца назад из-за этой беды. Буду теперь знать. Но непонятно почему другие порты нормально работают и через регистры PORT?! В некоторых местах, там тоже по-битное обращение.
А самое неприятное в этой проблеме - что Proteus и внутрисхемная отладка MPLAB+PicKit3 работала правильно!!! :kill:

Огромное СПАСИБО!!! :beer:


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB в вопросах и ответах
СообщениеДобавлено: Вт сен 19, 2017 21:22:28 
Друг Кота
Аватар пользователя

Карма: 46
Рейтинг сообщений: 1368
Зарегистрирован: Пт авг 28, 2009 21:34:30
Сообщений: 7212
Откуда: 845-й км.
Рейтинг сообщения: 2
Медали: 1
Получил миской по аватаре (1)
Потому что при модификации PORTx считывается состояние пинов порта, производится модификация и запись. Поэтому, если на каком выходе есть чрезмерная нагрузка (или ёмкостная нагрузка в виде затвора полевика), вы сделали BSF PORTA, 0 - вроде впорядке - прочитали, изменили на 1 и записали. Но, если следом делаем BSF PORTA, 1 - мы снова читаем порт, и если на нулевом разряде по какой-то причине лог.1 не успел установиться (кто-то давит или ёмкость не успела зарядиться), то прочитается 0 и он же будет обратно записан. Об этом нужно было помнить у старых микроконтроллеров, у которых еще не было регистров LAT. А у новых - надо пользоваться им для вывода.

_________________
А люди посмотрят и скажут: "Собаки летят. Вот и осень."


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB в вопросах и ответах
СообщениеДобавлено: Пт окт 06, 2017 06:27:13 
Встал на лапы

Зарегистрирован: Чт фев 11, 2016 16:59:20
Сообщений: 105
Откуда: Иркутск
Рейтинг сообщения: 0
Добрый день! Прошу помочь разобраться в (не основных) ошибках MPLAB X компилятор XC8(v 1.43)(Программа вывода цифр, символов и заглавных букв русского алфавита на дисплей нокиа 5110/3110 с мк PIC16F676- пишу сам, берите если кому надо. 50% слов, 25% памяти.)
При компилировании выдает 3 ошибки -
lcd5110.c:74: warning: (361) function declared implicit int
lcd5110.c:78: warning: (349) non-prototyped function declaration for "vs"
lcd5110.c:81: warning: (373) implicit signed to unsigned conversion
Файл С во вложении, мк PIC16F676
Еще попутный вопрос - почему компилятор ругается критической ошибкой, если функции int lcd_write_8_bit(adr) присвоить значение не int, а unsigned char, хотя внутри функции все переменные unsigned char.

Добавлено after 19 minutes 16 seconds:
Так, с одной ошибкой я разобрался
lcd5110.c:78: warning: (349) non-prototyped function declaration for "vs"
- удалил глобальную переменную unsigned char simv и объявил ее локальной в функции: void vs(unsigned char simv).
Как я понял, компилятор говорит - что программе не нужна глобальная переменная. (Кстати загрузка памяти и программных слов сократилась - что радует.)

Добавлено after 7 minutes 28 seconds:
Еще почему-то если глобальную переменную adr удалить и перенести в функцию: int lcd_write_8_bit(unsigned char adr) то выходят критические ошибки компиляции:
lcd5110.c:84: error: (987) arguments redeclared
lcd5110.c:84: error: (1098) conflicting declarations for variable "lcd_write_8_bit" (lcd5110.c:83)
Хотя переменная используется только внутри функции lcd_write_8_bit


Вложения:
Комментарий к файлу: файл си для mplab x
lcd5110.c [4.93 KiB]
Скачиваний: 745
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB в вопросах и ответах
СообщениеДобавлено: Пт окт 06, 2017 07:07:36 
Друг Кота
Аватар пользователя

Карма: 46
Рейтинг сообщений: 1368
Зарегистрирован: Пт авг 28, 2009 21:34:30
Сообщений: 7212
Откуда: 845-й км.
Рейтинг сообщения: 1
Медали: 1
Получил миской по аватаре (1)
Правильно ругается. Я бы на месте компилятора вообще объявил бы забастовку и потребовал повышения зарплаты за вредность.

Первое, что бросилось в глаза, то что вы объявили переменную simv, не означает, что объявлен тип агрумента с таким же именем в заголовке функции. Да и вообще, объявление функции именно для того и делается, чтобы программа знала, что туда надо передавать.

_________________
А люди посмотрят и скажут: "Собаки летят. Вот и осень."


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB в вопросах и ответах
СообщениеДобавлено: Пт окт 06, 2017 08:09:23 
Встал на лапы

Зарегистрирован: Чт фев 11, 2016 16:59:20
Сообщений: 105
Откуда: Иркутск
Рейтинг сообщения: 0
Прошу немного доступнее.. я только учусь программированию на си. Т.е. надо декларировать функцию еще раз в начале и дать значение её аргументу вот так:
void vs (unsigned char); и так для всех функций?
Да, спасибо - теперь я понял смысл двойного объявления функций.
Ошибка осталась только одна:
lcd5110.c:82: warning: (373) implicit signed to unsigned conversion
Т.е. видимо говорит что тут неявное преобразование беззнакового char в знаковый int - наверное в вычислениях внутри функции появляется отрицательное значение (хотя по моим расчетам не должно).
И аргумент функции int lcd_write_8_bit(int); принимает только int - на unsigned char ругается. Но если все сделать int - то память +30% сразу. Видимо надо делать явное преобразование типов данных.
Да и еще разобрался с этим "Еще почему-то если глобальную переменную adr удалить и перенести в функцию: int lcd_write_8_bit(unsigned char adr) то выходят критические ошибки компиляции" -
Надо делать так - int lcd_write_8_bit(int adr) - тогда все ок и -2% памяти.


Вложения:
Комментарий к файлу: файл С v2.0
lcd5110.c [4.97 KiB]
Скачиваний: 694


Последний раз редактировалось profradio Пт окт 06, 2017 09:03:21, всего редактировалось 1 раз.
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB в вопросах и ответах
СообщениеДобавлено: Пт окт 06, 2017 09:00:28 
Друг Кота
Аватар пользователя

Карма: 46
Рейтинг сообщений: 1368
Зарегистрирован: Пт авг 28, 2009 21:34:30
Сообщений: 7212
Откуда: 845-й км.
Рейтинг сообщения: 1
Медали: 1
Получил миской по аватаре (1)
Код:
int lcd_write_8_bit(int);
lcd_write_8_bit(tab[simv+j]); // П
Вот здесь вы объявили что функции должна передаваться переменная типа знакового инт. А потом передаёте элемент массива состоящего из беззнаковых char. Определитесь. Тем более, что это потенциально опасное граблями место.

_________________
А люди посмотрят и скажут: "Собаки летят. Вот и осень."


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB в вопросах и ответах
СообщениеДобавлено: Пт окт 06, 2017 09:12:02 
Встал на лапы

Зарегистрирован: Чт фев 11, 2016 16:59:20
Сообщений: 105
Откуда: Иркутск
Рейтинг сообщения: 0
Отличное замечание! (память -1%, слова -5%)! Все теперь в unsigned char - компилирует, не нравится только вот это:
lcd5110.c:94: warning: (373) implicit signed to unsigned conversion (Где та собака (знак) зарыт)


Вложения:
Комментарий к файлу: файл Си v 3.0
lcd5110.c [5.02 KiB]
Скачиваний: 740
Комментарий к файлу: Файл протеус 8.5 lcd 5110+PIC16F676
lcd nokia2.zip [14.31 KiB]
Скачиваний: 275
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB в вопросах и ответах
СообщениеДобавлено: Пт окт 06, 2017 09:37:28 
Друг Кота
Аватар пользователя

Карма: 46
Рейтинг сообщений: 1368
Зарегистрирован: Пт авг 28, 2009 21:34:30
Сообщений: 7212
Откуда: 845-й км.
Рейтинг сообщения: 1
Медали: 1
Получил миской по аватаре (1)
Честно говоря, не знаю, почему эта конструкция вызывает предупреждение. Возможно, где-то происходит неявное преобразование типа. Но в документации не нашел информации об этом. Сам в своих программах борюсь с такими вещами, потому как если не понятно, то чревато граблями.

Попробуйте написать adr <<= 1; вместо
adr = (adr<<1);

p.s. Google говорит, что это есть в стандарте языка C и называется integral promoution.
Цитата:
Because the standard says so. The operands to binary operators undergo integral promotion, in which anything smaller than an int is promoted to int; the results of the operation have type int as well. And if the original value were, say, 0x12, the results would be 0x120, and assigning this to an unsigned char will cause a change in value. (The assigned value will be 0x20.) Whence the warning.

_________________
А люди посмотрят и скажут: "Собаки летят. Вот и осень."


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB в вопросах и ответах
СообщениеДобавлено: Пт окт 06, 2017 09:51:57 
Встал на лапы

Зарегистрирован: Чт фев 11, 2016 16:59:20
Сообщений: 105
Откуда: Иркутск
Рейтинг сообщения: 0
uldemir, в точку!
После adr <<= 1; MPLABу все понравилось. (страшно представить как кто-то написал программу компиляции и продумал все варинги в MPLAB)
Я думал это одно и то же. А тут - память -2% еще - из 19% в 17%.
Мне бы Вашу смекалку:)
Файл С приукрасил немного - последняя версия во вложении память 17% слова 46%.


Вложения:
Комментарий к файлу: finish
lcd5110.c [5.2 KiB]
Скачиваний: 570
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB в вопросах и ответах
СообщениеДобавлено: Пт окт 06, 2017 10:12:42 
Друг Кота
Аватар пользователя

Карма: 46
Рейтинг сообщений: 1368
Зарегистрирован: Пт авг 28, 2009 21:34:30
Сообщений: 7212
Откуда: 845-й км.
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
Если у вас не PRO версия - подпишитесь на 60 дней, и обалдеете насколько еще код усохнет. А потом посмотрите в дизассемблере, что он накодил в свободной версии и радости уже не будет никогда. У меня был один проект, который пытался впихнуть в pic16F723a, так вот он перестал влазить. Подписался на PRO - сразу половина памяти стала свободной! Жаль, что эти 60 дней уже давно прошли, а второй раз они их не дают.

Вот с этим сдвигом всё-равно непонятки. В документации на XC написано, что компилятор сам умеет определять операции ротации. И написано, что
Цитата:
c = (c << 1) | (c >> 7);
if c is unsigned and non-volatile, the compiler will detect that the intended
operation is a rotate left of 1 bit and will encode the output using the PIC MCU rotate
instructions.
Но почему-то выдаёт такое же предупреждение.

Хм. глава про integral promotion находится как раз на предыдущей странице. правда, там упоминается, что типа "типа если результат будет одинаков с преобразованием и без, то преобразование не производится". Ну как-то так, если своими словами. поэтому почему-то в певом случае ( a = (a <<1)) преобразование производится и есть предупреждение, а во втором (a <<= 1) не производится.

_________________
А люди посмотрят и скажут: "Собаки летят. Вот и осень."


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: MPLAB в вопросах и ответах
СообщениеДобавлено: Сб окт 07, 2017 12:58:02 
Потрогал лапой паяльник
Аватар пользователя

Карма: 20
Рейтинг сообщений: 121
Зарегистрирован: Вс янв 19, 2014 22:41:55
Сообщений: 353
Рейтинг сообщения: 0
Жаль, что эти 60 дней уже давно прошли, а второй раз они их не дают.
[...]
Вот с этим сдвигом всё-равно непонятки. В документации на XC написано, что компилятор сам умеет определять операции ротации. И написано, что
Цитата:
c = (c << 1) | (c >> 7);

Но почему-то выдаёт такое же предупреждение.

Может дело как раз во Free версии? Т.е. он, конечно, может оптимизировать ротациями, но не за бесплатно - а для нас-халявщиков компилируя выражение буквально операнд за операндом - вот и напарывается на преобразование. А какой тип у c в данном куске кода?
PS: А вообще XC8 - ещё тот супчик - http://www.microchip.su/showthread.php?t=17888. Возможно и этот случай - косяк компилятора.

_________________
Одновременным нажатием LIGHT и POWER, РП Sangean ATS-909X (ver 1.29) превращается в ATS-909XR! ;-)


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

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


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

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


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

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


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