Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту


 
Опции темы
Непрочитано 09.05.2012, 00:07  
realid
Супер-модератор
 
Аватар для realid
 
Регистрация: 15.10.2007
Сообщений: 3,532
Сказал спасибо: 172
Сказали Спасибо 1,561 раз(а) в 811 сообщении(ях)
realid на пути к лучшему
По умолчанию Re: Осваиваем PIC24

Сообщение от Taras_33 Посмотреть сообщение
Собственно pin 23 (SS) всегда остается в низком уровне и не пойму почему, симулирую работу в протеусе и смотрю осцилографом - clock и SDO в норме, а вот выбрать девайс не получается. До этого пользавался програмным SPI на PIC18 посему дергал ss в "ручном" режиме. Вот чувствую что с конфигурацией чего то не то...
Спасибо
SS в Frame mode "передергивается" при записи в буфер в соответствии с выбранным активным уровнем и ширина импульса равно одному периоду частоты SCK.
Где-то слышал, что протеус некорректно симулирует PIC24.

Вы бы определились или ведущий или ведомый
Цитата:
SLAVE_ENABLE_ON &
CLK_POL_ACTIVE_HIGH &
MASTER_ENABLE_ON &
Реклама:

Последний раз редактировалось realid; 09.05.2012 в 00:10.
realid вне форума  
Сказали "Спасибо" realid
Taras_33 (09.05.2012)
Непрочитано 09.05.2012, 16:40  
Taras_33
Временная регистрация
 
Регистрация: 18.07.2005
Сообщений: 72
Сказал спасибо: 26
Сказали Спасибо 42 раз(а) в 18 сообщении(ях)
Taras_33 на пути к лучшему
По умолчанию Re: Осваиваем PIC24

SS в Frame mode "передергивается" при записи в буфер в соответствии с выбранным активным уровнем и ширина импульса равно одному периоду частоты SCK.
В смысле? Ширина импульса только равно одному такту SCK? Я обычно делаю так - опустил SS -› передал байт -› поднял SS
Вообщем видимо глюк какой то, вопрос только где? В моей голове или в протеусе. Я вложил проект MPLAB, может это только у меня Select Slave остается все время в low
Миниатюры:
Нажмите на изображение для увеличения
Название: SPI.png
Просмотров: 84
Размер:	148.7 Кб
ID:	34564  
Вложения:
Тип файла: zip SPI.zip (227.2 Кб, 47 просмотров)
Taras_33 вне форума  
Непрочитано 09.05.2012, 17:56  
realid
Супер-модератор
 
Аватар для realid
 
Регистрация: 15.10.2007
Сообщений: 3,532
Сказал спасибо: 172
Сказали Спасибо 1,561 раз(а) в 811 сообщении(ях)
realid на пути к лучшему
По умолчанию Re: Осваиваем PIC24

Сообщение от Taras_33 Посмотреть сообщение
В смысле? Ширина импульса только равно одному такту SCK? Я обычно делаю так - опустил SS -› передал байт -› поднял SS
Откройте раздел 23. SPI из Family Reference Manual. И посмотрите описание Frame mod, в разделе 23.3.4.3 SPI MASTER MODE AND FRAME MASTER MODE описано что делает SS в зависимости от настроек и есть наглядные диаграммы(Figure 23-10 и Figure 23-11).

Фактически на SS появляется, синхронизирующий начало кадра, импульс

Сообщение от Taras_33 Посмотреть сообщение
Вообщем видимо глюк какой то, вопрос только где? В моей голове или в протеусе. Я вложил проект MPLAB, может это только у меня Select Slave остается все время в low
Проверьте в реальном железе.
realid вне форума  
Непрочитано 18.05.2012, 15:53  
Popeye
Почётный гражданин KAZUS.RU
 
Аватар для Popeye
 
Регистрация: 05.08.2007
Адрес: Болгария Перник
Сообщений: 1,771
Сказал спасибо: 74
Сказали Спасибо 357 раз(а) в 245 сообщении(ях)
Popeye на пути к лучшему
По умолчанию Re: Осваиваем PIC24

Пришло и мое время окунутся в 16 битах. Материал более-менее ясен. Только с АЦП не могу разобратся. PIC24HJ32GP202. DMA не имеет. Написано результаты пишутся в буфер из 16 слов. Толко как понять какой канал в какое слово записан? 4 раза читал, не смог разобратся. Сегодна пятница, после обеда, не время для умственых упражнений, но все таки интересно
Для проекта АЦП не надобен.
__________________
Мыслю, следовательно существую
Popeye вне форума  
Непрочитано 18.05.2012, 17:36  
Yurkin2007
Заблокирован
 
Регистрация: 27.03.2007
Сообщений: 1,328
Сказал спасибо: 12
Сказали Спасибо 576 раз(а) в 460 сообщении(ях)
Yurkin2007 на пути к лучшему
По умолчанию Re: Осваиваем PIC24

Сообщение от Popeye Посмотреть сообщение
Толко как понять какой канал в какое слово записан?
Читайте здесь со страницы 51
Yurkin2007 вне форума  
Сказали "Спасибо" Yurkin2007
Popeye (18.05.2012)
Непрочитано 18.05.2012, 17:53  
Popeye
Почётный гражданин KAZUS.RU
 
Аватар для Popeye
 
Регистрация: 05.08.2007
Адрес: Болгария Перник
Сообщений: 1,771
Сказал спасибо: 74
Сказали Спасибо 357 раз(а) в 245 сообщении(ях)
Popeye на пути к лучшему
По умолчанию Re: Осваиваем PIC24

Может и начало доходить... Как понял установка бита ASAM в 1 начинается запись с ADC1BUF0, потом записывается ADC1BUF1 и т.д. Если ASAM обнулить при следующей установке в 1 запись снова начнется с ADC1BUF0. это заключение сделал из графика, никакого явного указания на сей алгоритм обнуления счетчика адреса ADC1BUFх нигде не видел.
Плохо смотрел
__________________
Мыслю, следовательно существую

Последний раз редактировалось Popeye; 18.05.2012 в 20:58.
Popeye вне форума  
Непрочитано 17.10.2012, 15:34  
neverlander
Прохожий
 
Регистрация: 15.04.2011
Сообщений: 4
Сказал спасибо: 3
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
neverlander на пути к лучшему
По умолчанию Re: Осваиваем PIC24

Коллеги, что-то не нашёл темы про dsPIC. Сюда можно с вопросами по этому семейству?
neverlander вне форума  
Непрочитано 31.10.2012, 11:15  
realid
Супер-модератор
 
Аватар для realid
 
Регистрация: 15.10.2007
Сообщений: 3,532
Сказал спасибо: 172
Сказали Спасибо 1,561 раз(а) в 811 сообщении(ях)
realid на пути к лучшему
По умолчанию Re: Осваиваем PIC24

Сообщение от neverlander Посмотреть сообщение
Сюда можно с вопросами по этому семейству?
Да. ________________
realid вне форума  
Непрочитано 22.01.2013, 10:06  
Eagle_A
Прохожий
 
Регистрация: 28.01.2010
Сообщений: 7
Сказал спасибо: 3
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
Eagle_A на пути к лучшему
По умолчанию Re: Осваиваем PIC24

Уважаемые гуру, прошу помощи! Пришлось таки из-за нехватки места под массивы перевести систему сбора данных с PIC18F4553 на PIC24FJ256GB206, и тут такое началось! Вот сокращенный текстик на CCS C:
#include ‹24FJ256GB206.h›

#FUSES ICSP3
#FUSES NOWDT
#FUSES NOJTAG //JTAG disabled
#FUSES NOCKSNOFSM //Clock Switching is enabled, fail Safe clock monitor is enabled
#FUSES NOIESO //Internal External Switch Over mode disabled
#FUSES PLL1 //No PLL PreScaler
#FUSES PR_PLL //Primary Oscillator with PLL
#FUSES XT //Crystal osc ‹= 4mhz for PCM/PCH , 3mhz to 10 mhz for PCD
//#FUSES FRC_PLL //Internal Fast RC oscillator with PLL
//#FUSES PLL96MHZ

#use delay(clock=32000000)

#define r1 PIN_G6 // вывод 4
#define r2 PIN_G7 // вывод 5

#define FFT_N 128 // число точек на периоде FFT
void voltmeter(void);
static unsigned int16 count = 0;
static unsigned char usb_en = 0;
union {
int8 XI[FFT_N * 2 + 2];
char usb_data[FFT_N * 2 + 2];
} cc;
static int16 YI[FFT_N];
typedef union
{
struct {
unsigned char lo;
unsigned char hi;
}st;
int16 all;
}tun;
tun uu;

#define V0 (int)(4096*2.45)/4.89 // значение, соотв. нулю на входе.

void voltmeter(void)
{
if (count ‹ FFT_N) {
if (input(r1)) output_low (r1);
else output_high (r1);
set_adc_channel(0); // читаем напряжение по входу A0

uu.all = Read_ADC() - V0;
cc.XI[count+count] = uu.st.hi;
cc.XI[count+count+1] =uu.st.lo;
count++;
if (input(r1)) output_low (r1);
else output_high (r1);
}
else {
count = 0;
}
}
void main()
{
setup_spi( FALSE );
setup_spi2( FALSE );
setup_adc_ports(sAN0 | sAN1);
setup_adc(ADC_CLOCK | ADC_TAD_MUL_16);

while (TRUE) {
if (input(r2)) output_low (r2);
else output_high (r2);
voltmeter();
if (input(r2)) output_low (r2);
else output_high (r2);

}
}

Работает от внешнего кварца 4 МГц, форма колебаний на его ножках близка к синусоиде, как-будто включено умножение на 24 и должно быть внутри деление на 3, т.е. тактовая частота д.б. 32 Мгц (так в документации). Но на практике частоту обращения к подпрограмме voltmeter в которой происходит одно АЦП и несколько присвоений никакими силами не удается сделать выше 11 кГц!?
Аналогичные результаты получаются и при тактировании от внутреннего генератора. При этом способе на ножках осциллятора наблюдаются колебания частотой 16 Мгц (хотя д.б. 4 Мгц), как-будто бы логичная попытка поделить их на 4 и тем самым запустить умножение на 24 приводит только к снижению частоты обращения к АЦП в те же 4 раза. Посмотрите на фотографию с осциллографа на которой видны колебания на ножках r1, до и после начала АЦП и r2 - до и после вызова процедуры voltmeter. Получается, что время, потраченное на выполнение всей этой процедуры меньше, чем на одно АЦП! Т.е. целое меньше его части! Налицо нарушение причинно-следственных связей! Не это ли свидетельство наступившего конца света?
Но даже если оставить это любопытное явление на совести конвейера с просмотром вперед (хотя информации об этом я нигде не видел), то понимание того, что делает процессор приблизительно 90 мкс, выполняя несколько коротких команд (само АЦП, если опять-же верить осциллограмме длится ок. 2,5 мкс, а весь цикл около 98 мкс), для меня жизненно важно. Сроки горят! Вся РАН просто пылает...
Либо я в чем-то не прав, либо причинно-следственные связи... Гуру, помогите! Заранее благодарен.
Eagle_A вне форума  
Непрочитано 22.01.2013, 10:13  
Eagle_A
Прохожий
 
Регистрация: 28.01.2010
Сообщений: 7
Сказал спасибо: 3
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
Eagle_A на пути к лучшему
По умолчанию Re: Осваиваем PIC24

Коллеги, по дороге куда-то делась осциллограмма, хотя в предварительном просмотре была. Прилагаю ее еще раз.
Миниатюры:
Нажмите на изображение для увеличения
Название: Screen.PNG
Просмотров: 64
Размер:	143.3 Кб
ID:	42590  
Eagle_A вне форума  
 

Закладки
Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Осваиваем USBee Kabron Микроконтроллеры, АЦП, память и т.д 2197 17.08.2024 13:23
Proteus PIC24 CNEN2??Gluk?? rubel Proteus, KiCAD и другие ECAD 1 09.06.2011 17:45
PIC24 CTMU rubel Микроконтроллеры, АЦП, память и т.д 11 20.05.2010 15:56
PIC24 terminal VGA + отладка с USBee AX PRO dosikus Микроконтроллеры, АЦП, память и т.д 7 23.04.2010 19:08
MPLAB C Compiler for PIC24 dsPIC avr123-nm-ru Микроконтроллеры, АЦП, память и т.д 4 25.11.2009 22:53


Часовой пояс GMT +4, время: 03:03.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot