21.09.2011, 18:35
|
#271
|
Супер-модератор
Регистрация: 15.10.2007
Сообщений: 3,530
Сказал спасибо: 172
Сказали Спасибо 1,560 раз(а) в 810 сообщении(ях)
|
Re: Осваиваем PIC24
|
|
|
Эти 2 пользователя(ей) сказали Спасибо realid за это сообщение:
|
|
|
21.09.2011, 21:11
|
#272
|
Заблокирован
Регистрация: 26.12.2009
Сообщений: 3,124
Сказал спасибо: 116
Сказали Спасибо 867 раз(а) в 614 сообщении(ях)
|
Re: Осваиваем PIC24
Взаимно!!!
|
|
|
|
20.11.2011, 08:08
|
#273
|
Частый гость
Регистрация: 28.12.2010
Адрес: Красноярск
Сообщений: 44
Сказал спасибо: 183
Сказали Спасибо 27 раз(а) в 14 сообщении(ях)
|
Re: Осваиваем PIC24
Добрый день !
продолжаю копаться с PIC24FJ64GA004 вот на что натолкнулся.
Начал разбираться с таймерами, набросал код на ассемблере, так, просто для того чтобы пройти отладчиком. Идея в том, чтобы программно анализировать состояние флага T1IF, не выводя при этом контроллер в прерывание ( с прерываниями пока не разбирался )
Код:
|
#include "p24fj64ga004.inc"
.equiv DIVISOR, 0x0005
.data
.text
.global __reset
__reset: ; здесь настраиваем порт С на вывод
mov #0x0000, W0
mov W0, TRISC
mov W0, PORTC
; настраиваем таймер Т1
mov #0x0030, W1
mov W1, T1CON ;
mov #DIVISOR, W1
mov W1, PR1
; запускаем таймер
bset T1CON, #0xF
; цикл переключения сигнала
loop: btsc IFS0, #0x3
bra count_ready
bra loop
count_ready:
bclr IFS0, #0x3
btg PORTC, #0x2
bra loop |
ну и получаю следующий результат - таймер T1 запускается, это вижу в отладчике MPLAB, при достижении значения DIVISOR+1 - в моем случае это - 6 сбрасывается, но флаг T1IF ( бит №3 в регистре IFS0 - если верить даташиту ) при этом не устанавливается, перехода на метку count_ready не происходит. Похоже - что-то упускаю, но в даташите и у Магды в книжке ничего не нашел... Кто сталкивался с проблемой - подскажите ну или ссылку дайте, где прочитать...
Последний раз редактировалось seeker-rzd; 20.11.2011 в 08:11.
Причина: упустил один серьезный момент
|
|
|
|
20.11.2011, 10:33
|
#274
|
Почётный гражданин KAZUS.RU
Регистрация: 05.05.2011
Адрес: Харьков
Сообщений: 5,049
Сказал спасибо: 592
Сказали Спасибо 3,968 раз(а) в 1,826 сообщении(ях)
|
Re: Осваиваем PIC24
Проверьте TGATE:
bit 6 TGATE: Timer1 Gated Time Accumulation Enable bit
When T1CS = 1:
This bit is ignored.
When T1CS = 0:
1 = Gated time accumulation enabled
0 = Gated time accumulation disabled
Попробуйте его изменить и посмотреть меняется ли флаг в таком случае. Так Вы определитесь где искать до или после.
Последний раз редактировалось alvadep; 20.11.2011 в 11:02.
|
|
|
|
20.11.2011, 11:45
|
#275
|
Супер-модератор
Регистрация: 15.10.2007
Сообщений: 3,530
Сказал спасибо: 172
Сказали Спасибо 1,560 раз(а) в 810 сообщении(ях)
|
Re: Осваиваем PIC24
Сообщение от seeker-rzd
|
но флаг T1IF ( бит №3 в регистре IFS0 - если верить даташиту ) при этом не устанавливается, перехода на метку count_ready не происходит. Похоже - что-то упускаю
|
Похоже вы лукавите. Все там устанавливается и переход происходит.
|
|
|
|
20.11.2011, 11:47
|
#276
|
Супер-модератор
Регистрация: 15.10.2007
Сообщений: 3,530
Сказал спасибо: 172
Сказали Спасибо 1,560 раз(а) в 810 сообщении(ях)
|
Re: Осваиваем PIC24
Сообщение от alvadep
|
Проверьте TGATE
|
Это здесь вообще ни при чем.
|
|
|
|
21.11.2011, 16:53
|
#277
|
Частый гость
Регистрация: 28.12.2010
Адрес: Красноярск
Сообщений: 44
Сказал спасибо: 183
Сказали Спасибо 27 раз(а) в 14 сообщении(ях)
|
Re: Осваиваем PIC24
Сообщение от realid
|
Похоже вы лукавите. Все там устанавливается и переход происходит.
|
Похоже, что так и есть. После работы запустил проект заново - все пошло, как в MPLAB,так и на макетной плате. Один момент - предпоследнюю команду заменил на btg LATC, #2. Спасибо за подсказку...
|
|
|
|
22.11.2011, 15:43
|
#278
|
Гражданин KAZUS.RU
Регистрация: 24.11.2006
Адрес: ДНР
Сообщений: 612
Сказал спасибо: 553
Сказали Спасибо 314 раз(а) в 142 сообщении(ях)
|
Re: Осваиваем PIC24
Вопросик. Нужно узнать DEV_ID для PIC24FJ128GB206. Программаторы при подключении к МК считывают его. В каком окошке можно просмотреть, никто не подскажет? В распоряжении KIT2/3 и ICD2.
Даташит не предлагать. То, что там написано - я знаю. Нужно удостовериться, что соответствует даташиту.
|
|
|
|
22.11.2011, 16:25
|
#279
|
Супер-модератор
Регистрация: 15.10.2007
Сообщений: 3,530
Сказал спасибо: 172
Сказали Спасибо 1,560 раз(а) в 810 сообщении(ях)
|
Re: Осваиваем PIC24
Сообщение от rubel
|
Нужно узнать DEV_ID для PIC24FJ128GB206. Программаторы при подключении к МК считывают его. В каком окошке можно просмотреть, никто не подскажет? В распоряжении KIT2/3 и ICD2.
|
Так они же определяют тип автоматом. В приложении пиккита напишет тип, в МПЛАБ если выбран один, а считан другой предупредит об этом. Или вы им не доверяете?
|
|
|
|
22.11.2011, 17:52
|
#280
|
Гражданин KAZUS.RU
Регистрация: 24.11.2006
Адрес: ДНР
Сообщений: 612
Сказал спасибо: 553
Сказали Спасибо 314 раз(а) в 142 сообщении(ях)
|
Re: Осваиваем PIC24
Сообщение от realid
|
Так они же определяют тип автоматом. В приложении пиккита напишет тип, в МПЛАБ если выбран один, а считан другой предупредит об этом. Или вы им не доверяете?
|
В общем-то доверяю. Но надо посмотреть. Самодельный программатор читает правильно ID на одно семейство PIC24, а вот на данное - неправильно. Скорее всего чуть поменялся алгоритм(зачем-то!!!). Хотел воочию убедиться, что фирменный читает то,что в даташите. Но никак не найду где глянуть. может и не удасться...
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 00:23.
|
|