MPLAB X IDE

Поклонники продукции Microchip Technology Inc тусуются тут.
Аватара пользователя
alex_
Опытный кот
Сообщения: 781
Зарегистрирован: Сб июн 01, 2013 22:24:21
Откуда: ПФО

Re: MPLAB X IDE

Сообщение alex_ »

[uquote="Аlex",url="/forum/viewtopic.php?p=4119794#p4119794"]Тут у Вас классическая ошибка синтаксиса. Попробуйте сами найти :)[/uquote]
Спасибо друг, пол дня убил, в процессе понять почему на всех сайтах работает Led1=0; а у меня нет, думал в этой строчке ошибка(кто его знает чего там в мплабе напридумывали), и компилятор именно на эту строку указывает. Блин, замыленными глазами такую очевидную мелочь как ; легко пропустить. :facepalm:
Аватара пользователя
сергей999
Вымогатель припоя
Сообщения: 622
Зарегистрирован: Пт июн 05, 2015 14:20:56
Откуда: Попасная

Re: MPLAB X IDE

Сообщение сергей999 »

Осмелюсь попросить помощи у знающих программирование. Нужно проверить рабочий ли PIC16F876, думаю подойдет такое https://learnitstepbystep.blogspot.com/ ... oller.html только там нет НЕХ, может ли кто скомпилировать прошивку, там она есть в исходниках, надо только скомпилировать.
Надеюсь на помощь.
Аватара пользователя
Аlex
Модератор
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля
Контактная информация:

Re: MPLAB X IDE

Сообщение Аlex »

alex_ писал(а):Блин, замыленными глазами такую очевидную мелочь как ; легко пропустить.
Это очень распространённая ошибка. Бывает :)
Она уходит с опытом :)

Добавлено after 2 minutes 7 seconds:
сергей999 писал(а):может ли кто скомпилировать прошивку, там она есть в исходниках, надо только скомпилировать.
Попробуйте сами, это не сложно - https://yandex.ru/search/?lr=166645&cli ... %D0%B0+ASM
Аватара пользователя
alex_
Опытный кот
Сообщения: 781
Зарегистрирован: Сб июн 01, 2013 22:24:21
Откуда: ПФО

Re: MPLAB X IDE

Сообщение alex_ »

[uquote="Аlex",url="/forum/viewtopic.php?p=4120311#p4120311"]Она уходит с опытом :)[/uquote]
К сожалению это не опыт, это называется заездили :( когда надо выполнить задачу за отведённый лимит времени.
СпойлерТри дня и три ночи Ваня корпел над кодом, но ничего не выходило. В отчаянии он обратился к коллеге, который проводил код ревью для его коммита в прошлый раз.

— Прости, но если бы я знал, что не так в твоём коде, я бы твой пул реквест не заапрувил.

— Но ты же написал lgtm в комментарии!

— И теперь мне за это прилетело. Слушай, я уже сто раз пожалел, что помог тебе сюда устроиться. Тимлид просёк, что я сквозь пальцы смотрю на твой код, поэтому сейчас проблемы у нас обоих. В случае чего я найду новую работу, а ты — вряд ли. Так что сейчас у тебя отличный повод подтянуть знания.

— Ладно, разберусь как-нибудь.

Осталось всего два дня, чтобы исправить баг и добавить новую фичу, а у Вани не было почти никаких продвижений. После работы он, как обычно, зашёл в магазин, но вместо энергетиков решил взять пиво, потому что вспомнил о Пике Балмера.

Бессонные ночи и пиво сделали своё дело, поэтому Ваня заснул прямо за компьютером.

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

Ненавидя себя, он поплёлся на работу. Сев за рабочий стол и посмотрев в код, внезапно понял, в чём была ошибка (известно, что многие проблемы в разработке приложений решаются, когда программист спит). Исправив всё за пару минут, он пошёл к тимлиду.
источник https://skillbox.ru/media/code/ne_bag_a ... rammistov/

Добавлено after 14 minutes:
[uquote="сергей999",url="/forum/viewtopic.php?p=4120040#p4120040"]Осмелюсь попросить помощи у знающих программирование. Нужно проверить рабочий ли PIC16F876[/uquote]
Г вопрос, лови https://cloud.mail.ru/public/Jff8/mjR6ywTbP
Аватара пользователя
сергей999
Вымогатель припоя
Сообщения: 622
Зарегистрирован: Пт июн 05, 2015 14:20:56
Откуда: Попасная

Re: MPLAB X IDE

Сообщение сергей999 »

Благодарю, все заморгало, нашел битый порт. Жаль остальные не подключены, может еще какой битый.
Может поможет кто добавить оставшиеся порты в программу. Получился бы класный тест для 876-го.
Аватара пользователя
Аlex
Модератор
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля
Контактная информация:

Re: MPLAB X IDE

Сообщение Аlex »

сергей999 писал(а):нашел битый порт
Какой конкретно ?
Программа по вашей ссылке - для 876А. А они немного отличаются.
Аватара пользователя
сергей999
Вымогатель припоя
Сообщения: 622
Зарегистрирован: Пт июн 05, 2015 14:20:56
Откуда: Попасная

Re: MPLAB X IDE

Сообщение сергей999 »

Битый порт В0 , тоже 876А , вот теперь копаюсь где найти проверку на оставшиеся порта. Хреново не соображать в программировании.
Кстати о разнице, у китайцев есть PIC16F876-20ISO 1,5 доляра и PIC16F876A-I/SO за 5 в чем разница кроме цены?
Аватара пользователя
Аlex
Модератор
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля
Контактная информация:

Re: MPLAB X IDE

Сообщение Аlex »

сергей999 писал(а):в чем разница кроме цены?
На сколько мне известно, наличием компаратора.

PS: Эти чипы очень старые, дорогие и убогие в плане периферии. Зачем они Вам ?
Аватара пользователя
сергей999
Вымогатель припоя
Сообщения: 622
Зарегистрирован: Пт июн 05, 2015 14:20:56
Откуда: Попасная

Re: MPLAB X IDE

Сообщение сергей999 »

Хотел конструкцию сделать тоже не свежую, но рабочую, а тут с чипом засада.
Цена вообще сейчас на все чипы взлетела, хоть не делай ничего.
Аватара пользователя
solomonmon
Нашел транзистор. Понюхал.
Сообщения: 164
Зарегистрирован: Вт мар 21, 2017 21:40:20

Re: MPLAB X IDE

Сообщение solomonmon »

Уважаемые коты, начал понемногу изучать программирование PIC, дошёл до таймера, на примере pic16f84a, подскажите пожалуйста, не могу понять что не так с расчётом, вроде всё правильно по времени рассчитал и светодиод должен потухнуть через 4 секунды, но почему то тухнет через 2 секунды, посмотрите пож текст программы где шо не так. Заранее благодарен.
ТАЙМЕР.txt
(1.45 КБ) 165 скачиваний
Test1.rar
(6.81 КБ) 179 скачиваний
diplodok
Мудрый кот
Сообщения: 1762
Зарегистрирован: Чт авг 10, 2017 20:57:51

Re: MPLAB X IDE

Сообщение diplodok »

Посмотрел. .... Есть замечания:
Если хотите Вам помочь то постарайтесь изложить свой код в удобном виде.
1. Что скривает за собой __CONFIG 3FF2H? Есть принятое представление типа

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

__CONFIG  _CP_OFF &  _FOSC_HS & _MCLRE_OFF
2. Где коментарий?
3. На какой частоте работает МК?
4. Изложение. Есть на сайте тег code
Если вам надо вывести часть кода программы или еще что-нибудь, что должно быть отображено шрифтом фиксированной ширины (Courier), то заключите текст в теги . Пример:

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

echo "Это код программы";

5. Если сейчас начинаете то, пока, не лезьте в Interrupt. Вот Вам для начало Delay loops.

Извините, если что ....
Аватара пользователя
Аlex
Модератор
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля
Контактная информация:

Re: MPLAB X IDE

Сообщение Аlex »

solomonmon писал(а):по времени рассчитал
Где расчёты ? Предоставьте нам их.
В Вашу голову мы залезть не сможем. А по одному коду это сделать невозможно.
andrey13
Открыл глаза
Сообщения: 40
Зарегистрирован: Пн ноя 11, 2013 03:50:13

Re: MPLAB X IDE

Сообщение andrey13 »

Всем привет.
Подскажите кто знает

В старом мплабе когда присваиваешь адрес некой символоной метке, например:
МЕТКА EQU 0x11
то эта метка появлялась в окне файловых регистров, по аналогии с именами уже специальных регистров тип TMR0, PORTA и т.д.

В новом же, текущем мплабе присвоенные адресам метки не отображаются в окне файловых регистров.

Потыкал заголовочный файл, попробовал по аналогии сделать как там прописано для специальных регистров
#define METKA METKA
METKA EQU 0x10

Не помогает.
Кто ни будь знает как сделать что бы именованные регистры отображались в мплабе?



Добавлено after 33 minutes 40 seconds:
[uquote="solomonmon",url="/forum/viewtopic.php?p=4142053#p4142053"]Уважаемые коты, начал понемногу изучать программирование PIC, дошёл до таймера, на примере pic16f84a, подскажите пожалуйста, не могу понять что не так с расчётом, вроде всё правильно по времени рассчитал и светодиод должен потухнуть через 4 секунды, но почему то тухнет через 2 секунды, посмотрите пож текст программы где шо не так. Заранее благодарен.[/uquote]
Я тоже начинающий и тоже дошёл до таймера.
Но я мигаю им раз в секунду по прерыванию переполнения таймера.
Если тебе это поможет, то ниже прикладываю код.
pic16f84a работа от внешнего кварца на 32 килогерца.
дёргает порт RA4 раз в секунду
Порт с открытым коллектором (drain), светодиод с плюса через резистор 1Ком на ножку порта, и всё.
Спойлер

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

#include <xc.inc>

CONFIG FOSC = LP	; Oscillator Selection bits(RC oscillator)
CONFIG WDTE = OFF	; Watchdog Timer(WDT enabled)
CONFIG PWRTE = OFF	; Power - up Timer Enable bit(Power - up Timer is disabled)
CONFIG CP = OFF		; Code Protection bit(Code protection disabled)
   
#define RP0 0x5
#define RA4 0x4
#define T0IF 0x2   

psect udata,reloc = 10h
SSS_REG SET 0x10

psect code,class=CODE,space=0,delta=2,abs,ovrld
res_vec:    
    org 0x000
    call init
    goto $+1
    goto $-1
    nop
int_vec:
    org 0x004
    bcf INTCON,T0IF
    btfsc SSS_REG,0x0
    goto $+4
    bsf PORTA,RA4
    bsf SSS_REG,0x0
    retfie
    bcf PORTA,RA4
    bcf SSS_REG,0x0
    retfie
init:	    
    bcf STATUS,RP0
    clrf TMR0
    clrf PORTA ; CLEAR PORT A DATA
    clrf SSS_REG
    movlw 10100000B
    movwf INTCON ; SET INTERUPTS
    bsf STATUS,RP0 ;SELECT BANK 1
    clrf TRISA ;SET ALL PORTS OUTPUT MODE
    movlw 11010011B
    movwf OPTION_REG ; SET 
    bcf STATUS,RP0 ;SELECT BANK 0
    return
END
Последний раз редактировалось andrey13 Чт дек 16, 2021 17:10:03, всего редактировалось 4 раза.
Аватара пользователя
Родэрик
Нашел транзистор. Понюхал.
Сообщения: 162
Зарегистрирован: Чт ноя 26, 2015 23:22:35
Откуда: не с Уфы
Контактная информация:

Re: MPLAB X IDE

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

Тоже самое как-то спрашивал. Короче надо использовать директиву udata, а не cblock
andrey13
Открыл глаза
Сообщения: 40
Зарегистрирован: Пн ноя 11, 2013 03:50:13

Re: MPLAB X IDE

Сообщение andrey13 »

[uquote="Родэрик",url="/forum/viewtopic.php?p=4142699#p4142699"]Тоже самое как-то спрашивал. Короче надо использовать директиву udata, а не cblock[/uquote]

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

Re: MPLAB X IDE

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

[uquote="solomonmon",url="/forum/viewtopic.php?p=4142053#p4142053"].....вроде всё правильно по времени рассчитал и светодиод должен потухнуть через 4 секунды, но почему то тухнет через 2 секунды, посмотрите пож текст программы где шо не так.......[/uquote]
частоту будешь использовать 4 мгц? малость подправил....., от начала и до sleep 4 секунды у меня
Test1_2.rar
(12.76 КБ) 155 скачиваний
Добавлено after 4 minutes 7 seconds:
[uquote="andrey13",url="/forum/viewtopic.php?p=4142700#p4142700"]её и использую, не помогает.[/uquote]
а кнопочку "build for debugging" нажимал?
andrey13
Открыл глаза
Сообщения: 40
Зарегистрирован: Пн ноя 11, 2013 03:50:13

Re: MPLAB X IDE

Сообщение andrey13 »

[uquote="andrey13",url="/forum/viewtopic.php?p=4142700#p4142700"]её и использую, не помогает.[/uquote]
а кнопочку "build for debugging" нажимал?[/uquote]

Конечно, я же не совсем новичёк, я со старого мплаба перешёл на новый.

Можешь сделать скрин file registers на каком нибудь своём проекте, где будут видны пользовательские именованные регистры?

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

Re: MPLAB X IDE

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

По идее мы все перешли со старого. И если чип поддерживается, то я до сих пор там и делаю.
2021-12-16_201512.jpg
(98.25 КБ) 157 скачиваний
andrey13
Открыл глаза
Сообщения: 40
Зарегистрирован: Пн ноя 11, 2013 03:50:13

Re: MPLAB X IDE

Сообщение andrey13 »

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

Re: MPLAB X IDE

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

ну, EQU и SET к резервированию памяти не имеют никакого отношения
Ответить

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