Поклонники продукции Microchip Technology Inc тусуются тут.
Чт сен 08, 2016 20:55:44
Попробовал перейти на MPLAB X 3.35, появился ряд вопросов.
1.
Собрал проект для PIC18F4431 на asm, ассемблерный компилятор, симуляция работает, но не могу задать параметры конфигурации, к примеру, частоту тактового генератора.
Установил плагин MPLAB Code Configurator V3, который, как я понял задает эти параметры. Пробую запустить этот плагин, вылетает ошибка, что данный чип не поддерживается.
Скачал библиотеку с микрочипа, переподцепил, то же самое...
Влез в саму библиотеку, начал смотреть, действительно этого чипа нет в списке.
Правильно ли я понял, что для ASM в MPLAB X, получается проблема с выбором частоты и др. параметров.
2.
Так и не смог сконектить PicKit2 с этим MPLAB X 3.35....
Само собой, в проекте задаю PicKit2, но MPLAB X, не видит Кит при попытке включить отладку, выдает ошибку по конекту!
Подскажите, пожалуйста, кто знает, где копать????
Пт сен 09, 2016 06:12:12
А зачем в асме частота генератора нужна? Надоело только в конфиге указывать источник тактов, но вас же не это интересует?
Со 2-м пиккитом у меня, помнится, тоже какие-то ошибки с подключением были, но уже не помню точно. В нем прошивка под МПлаб или для отдельной программы? Проверьте это.
Пт сен 09, 2016 06:47:11
Что значит в асм частота генератора? Частота по проекту для павильной симуляции, не могу же я симулировать на том, что мне по дефолту MPLABX пставит, мои тайминги нужны!
По второму повросу, вроде разобрался, в том смысле, что не поддерживает этот MPLABX 3.35 PicKit2, о чем сигналят желтые индикаторы в проекте (не зеленые).
Уточненю, MPLABX 3.35 видит ID PicKit2 и только.
MPLAB IPE тоже не хочет видеть PicKit2.
По конфигуратору, похоже, из-зи отсутствия поддержки PIC18F4431 проблемы!
Буду разбираться дальше.
Пт сен 09, 2016 08:56:50
Просто ассемблеру частота нужна, только если библиотеки используются, которым это важно. Как я понимаю.
А для симулятора это File - Project properties - Simulator
Там и указывайте частоту. Причем там не Fosc, а instruction frequency. Обычно это в 4 раза меньше.
Код конфигуратор - это совсем другое. Это если хочется по-быстрому сконфигурировать порты и периферию без копания в ДШ.
Сб сен 10, 2016 04:03:55
Zhuk72, спасибо за подсказку, с этим уже разобрался!
Итак, в итоге, микрочиповцы, вроде обещали скоро поддержку PicKit2, пока, увы ее нет.
Для использования PicKit3, также, как и для MPLAB (не X) нужно сначала предварительно перейти в режим работы с MPLAB из под ее родной оболочки (PicKit3 Programmer).
Библиотека для плагина по конфигурации сейчас в процессе расширения, думаю это вопрос времени.
Сб сен 10, 2016 08:15:18
Очередная засада с MPLFBX.
Не хочет уходить в прерывания по Power Control PWM при симуляции.
В MPLAB 8.x этот же исходник уходит в прерывания без проблем.
Перелопатил все настройки регистров вдоль и поперек, не прерывается, хоть тресни.
Подскажите, коллеги, мой ли это косяк или MPLABX???
;Тест прерываний по ШИМ.
list R=DEC, p=18f4431, W=2
include <p18f4431.inc>
__config _CONFIG1H, _OSC_HS_1H & _FCMEN_OFF_1H & _IESO_OFF_1H
__config _CONFIG2L, _PWRTEN_OFF_2L & _BOREN_OFF_2L
__config _CONFIG2H, _WDTEN_OFF_2H & _WINEN_OFF_2H
__config _CONFIG3L, _T1OSCMX_OFF_3L & _HPOL_HIGH_3L & _LPOL_HIGH_3L & _PWMPIN_OFF_3L
__config _CONFIG3H, _MCLRE_ON_3H & _PWM4MX_RB5_3H & _FLTAMX_RC1_3H
__config _CONFIG4L, _STVREN_OFF_4L & _LVP_OFF_4L & _DEBUG_OFF_4L
__config _CONFIG5L, _CP0_OFF_5L & _CP1_OFF_5L & _CP2_OFF_5L & _CP3_OFF_5L
__config _CONFIG5H, _CPB_OFF_5H & _CPD_OFF_5H
__config _CONFIG6L, _WRT0_OFF_6L & _WRT1_OFF_6L & _WRT2_OFF_6L & _WRT3_OFF_6L
__config _CONFIG6H, _WRTB_OFF_6H & _WRTC_OFF_6H & _WRTD_OFF_6H
__config _CONFIG7L, _EBTR0_OFF_7L & _EBTR1_OFF_7L & _EBTR2_OFF_7L & _EBTR3_OFF_7L
__config _CONFIG7H, _EBTRB_OFF_7H
udata_acs
temp1 res 1
bl1:CODE 0x00
goto start
bl2:CODE 0x08
goto int_high
bl3:CODE 0x18
goto int_low
;-----Инициализация прерываний-----
start
clrf INTCON
clrf INTCON3
clrf PIE1
clrf PIE2
clrf PIE3
clrf PIR1
clrf PIR2
clrf PIR3
clrf IPR1
clrf IPR2
clrf FLTCONFIG
clrf TRISB
;-----Инициализация портов-----
clrf ADCON0
clrf ANSEL0
clrf ANSEL1
;-----Инициализация ШИМ-----
movlw 0X80
movwf QEICON ;модуль квадратурн. энк. отключ., реж. velocity отключ.
movlw b'00110011'
movwf PWMCON0 ;ШИМ выходы PWM0,PWM1,PWM2,PWM3, independet режим.
movlw 0X00
movwf PWMCON1
movlw b'00000000' ;Режимы счета ШИМ
movwf PTCON0;Таймер ШИМ в реж. свободной генерации.
;К предделителя=1 (Fosc/4),К постдделителя=1,
;Регистр 0 упр. ШИМ
bsf INTCON,GIE
bsf INTCON,PEIE
;----------
clrf PTMRL
clrf PTMRH
movlw b'111111';период ШИМ ;установка периода ШИМ
movwf PTPERL
clrf PTPERH
movlw b'00011111'
movwf PDC0L ;Длительность импульса
;----------
bsf PIE3,PTIE ;разрешить прерывания по таймеру ШИМ
bsf PTCON1,7 ;Включен таймер ШИМ, счет вверх.
nop
;-----Основной цикл-----
main
nop
goto main
;----------
;Обработка прерываний по ШИМ
int_high:
bcf PIR3,PTIF
retfie
int_low:
bcf PIR3,PTIF
retfie
end
Вс сен 11, 2016 07:19:15
Если не секрет, в чем сакральная сущность непременной сборки проекта с довольно старым контроллером именно на "Х"?
Почему не сделать это на "восьмерке"?
Учебная задача?
Вс сен 11, 2016 10:13:11
Какие секреты... Всегда работал в MPLAB 8.xx плюс Proteus. Установил MPLABX (а почему нет, прогресс никто не отменял же) и начал в ней работать. По ходу начали вылазить проблемы, которых раньше не было. Создал проект под PIC18F4431 (текущая разработка) и сразу увидел, что не работают прерывания по Power Control PWM модулю. Понял, что с этим чипом, по крайней мере, эта среда работать не может. Вот, собственно и все. Если заявлена поддержка конкретного чипа, то все должно работать как положено вне зависимости от степени его "старости"!
Кто-нибудь другой уже будет знать, потеряет в разы меньше времени. Ну это нормальный процесс. Понимаю, что среда совсем новая и сырая, думаю доработают со временем.
Ежели я сам что-то не так сделал, буду благодарен за подсказку.
Если это косяк Микрочипа, то нужно сообщить, чтоб исправили, но я пока не уверен на все 100%.
Както так...
Вс сен 11, 2016 10:27:49
Обновления программ как правило добавляет ошибок.
Пн сен 12, 2016 12:05:42
Может я где то пропустил, но читая АААА МИКРОЧИП КОСЯЧИТ!!!
в итоге всегда всплывают кривые руки.Где то, что то упущено.
Пн сен 12, 2016 17:17:00
const1105, справедливости ради, нужно сначала показывать где и что упущено, а уж потом про кривые руки.
А иначе пустые разговоры ни о чем это как минимум!
Я потратил немало времени, прежде чем решился изложить проблему.
Ну...., и где это что-то.....????
Показывать будем....или это так, смелое предположение и бросание камней, так на всяк случай.....????
Пн сен 12, 2016 17:37:02
Aleksey_S писал(а):...Я потратил немало времени, прежде чем решился изложить проблему...
Но, документацию читали поверхностно.
Для начала, укажите однозначно приоритет PTI (регистры IPR3 и RCON).
Вт сен 13, 2016 08:23:04
Но, документацию читали поверхностно.
Для начала, укажите однозначно приоритет PTI (регистры IPR3 и RCON).
Причем здесь выбор приоритета???
Пусть себе прерывается для начала по какому угодно приоритету.
Само прерывание не происходит, вот в чем проблема!
В моем коде оба вектора присутствуют.
Читаю все внимательно и с пристрастием....
Вт сен 13, 2016 10:06:02
Уточнение...
После того, как отработал таймер ШИМ, поднимается флаг PIR3,PTIF, но нет перехода рабочей точки программы по верктору прерывания!
Т.е. MPLABX констатирует факт прерывания, но дальше не производит соответстующих действий.
Вт сен 13, 2016 12:04:50
Aleksey_S, это не кидание камней, это из собственного опыта.
В том числе и про кривые руки, в том числе часто мои.))
P.S. Часовые пояса не позволяют вести диалоги...
Вт сен 13, 2016 14:14:18
Aleksey_S, Если вы читали документацию, то должны знать, что флаг PIR3,PTIF поднимется даже если PEIE и GIE будут в нуле.
Прочтите раздел 10.х INTERRUPTS прежде чем говорить
Aleksey_S писал(а):Причем здесь выбор приоритета???
Вт сен 13, 2016 16:04:59
Он разрешает и GIE, и PEIE, и даже локальное разрешение в PIE3.
Полагаю, что проблема не стоит выеденного яйца. Если нужен рабочий проект, а не игры в среды, то он спокойно собирается в "восьмерке", где симуляторная модель этого МК рабочая во всех отношениях. Но, вообще то, симулятор частенько кривоват относительно экзотических периферийных модулей. Потому проще делать проект на отладчике живого камня.
Вт сен 13, 2016 16:16:29
КРАМ писал(а):...вообще то, симулятор частенько кривоват относительно экзотических периферийных модулей. Потому проще делать проект на отладчике живого камня.
Это точно.
В MPLAB Sim я только математику проверяю.
----
P.S.
Что касается приоритетов прерываний - как то я сталкивался с тем, что если установлен высокий для некоторого прерывания и запрещён выбор приоритетов (POR) - переход ни на один из векторов не происходит.
Вт сен 13, 2016 18:51:09
Aleksey_S, Если вы читали документацию, то должны знать, что флаг PIR3,PTIF поднимется даже если PEIE и GIE будут в нуле.
Прочтите раздел 10.х INTERRUPTS прежде чем говорить
Ну я в курсе. И что дальше... Где противоречия? Мой код хоть одним глазом смотрели, прежде чем обвинять в некомпетенции???
КРАМ уже за меня дал ответ.
Проект делаю в 8-ке. Хотел до конца разобраться.
Еще раз все тщательно перепроверив, делаю вывод, что все же косяк от Microchip.
Вт сен 20, 2016 20:43:14
Привет форумчане. Погомогите кто чем может. на сайтике увидел кнопку
http://full-chip.net/shemy-na-mikrokont ... shema.htmlИдеальный для меня вариант но:
Скажите пожалуйста возможно ли написать программу для Pic12f629 которая будет выполнять ряд функций:
При пяти быстрых кратковременных нажатиях на кнопку микросхема будет включать один выключатель и так же его выключать?
A при нажатии и удержании кнопки будет включаться другой выключатель и выключаться при отпускании ее.
Последний раз редактировалось
Saperawi Вт сен 20, 2016 21:32:39, всего редактировалось 1 раз.
Powered by phpBB © phpBB Group.
phpBB Mobile / SEO by Artodia.