Миландр

Ключевым подразделением нашей компании является Центр Проектирования интегральных микросхем
Текущее время: 2017-июл-21 03:40

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




Начать новую тему Ответить на тему  [ Сообщений: 120 ]  На страницу Пред.  1 ... 4, 5, 6, 7, 8
Автор Сообщение
СообщениеДобавлено: 2017-апр-27 09:40 
Не в сети

Зарегистрирован: 2015-дек-14 09:21
Сообщения: 18
Здравствуйте. У меня следующий вопрос.
Возникает ошибка в регистре CxStat - NLock=1. В описании сказано, бит устанавливается когда ошибка в следящем контуре больше, чем значение в регистре CxLock_th.
Как правильно выбрать значение для регистра CxLock_th?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2017-апр-27 11:25 
Не в сети

Зарегистрирован: 2015-фев-24 19:17
Сообщения: 33
Откуда: АО "ПКК Миландр"
Saveliy писал(а):
Добрый день. У меня следующий вопрос.
Я хочу получить максимально возможную точность измерения угла, при сигнале 6 кГц и полосе пропускания следящего контура 1 кГц.
Какую частоту преобразователя я должен выбрать?


Частоту преобразования рекомендуется выставлять ~1 МГц, при этом, для получения полосы пропускания примерное в 1кГц нужно задать LBW=8.

Источники погрешностей:
1) Нелинейность аналоговой части микросхемы - макс. погрешность на углах около нескольких градусов
2) Разброс номиналов внешних компонент (резисторов) - макс. погрешность на углах в районе 45 градусов
3) Погрешностями самого датчика

Погрешности микросхемы и резисторов не зависят от частот.
Про датчик трудно сказать, но 6кГц - это похоже частота возбуждения датчика,
она задана конструкцией датчика и лучше ее не менять, т.к. могут возникнуть искажения сигналов, ведущие к погрешностям.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2017-апр-27 11:33 
Не в сети

Зарегистрирован: 2015-фев-24 19:17
Сообщения: 33
Откуда: АО "ПКК Миландр"
Saveliy писал(а):
Здравствуйте. У меня следующий вопрос.
Возникает ошибка в регистре CxStat - NLock=1. В описании сказано, бит устанавливается когда ошибка в следящем контуре больше, чем значение в регистре CxLock_th.
Как правильно выбрать значение для регистра CxLock_th?


Пока что эмпирически (сейчас это значение зависит от частоты возбуждения датчика, что будет исправлено в следующих ревизиях).
Подобрать значение, которое при ваших настройках не будет вызывать выставление этой ошибки.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2017-апр-27 14:27 
Не в сети

Зарегистрирован: 2015-май-23 10:44
Сообщения: 2
Alex1 писал(а):
Saveliy писал(а):
Добрый день. У меня следующий вопрос.
Я хочу получить максимально возможную точность измерения угла, при сигнале 6 кГц и полосе пропускания следящего контура 1 кГц.
Какую частоту преобразователя я должен выбрать?


Частоту преобразования рекомендуется выставлять ~1 МГц, при этом, для получения полосы пропускания примерное в 1кГц нужно задать LBW=8.

Источники погрешностей:
1) Нелинейность аналоговой части микросхемы - макс. погрешность на углах около нескольких градусов
2) Разброс номиналов внешних компонент (резисторов) - макс. погрешность на углах в районе 45 градусов
3) Погрешностями самого датчика

Погрешности микросхемы и резисторов не зависят от частот.
Про датчик трудно сказать, но 6кГц - это похоже частота возбуждения датчика,
она задана конструкцией датчика и лучше ее не менять, т.к. могут возникнуть искажения сигналов, ведущие к погрешностям.


Правильно ли мы понимаем, при следующих параметрах:
Fosc=60 МГц;
ADC_cycle=0;
PLL_Q=0;
PLL_N=74;
Частота работы микросхемы (термин на стр. 16),она же частота цикла преобразования (термин на стр. 42) составит:
Fclk=0,5*Fosc*PLL_N/( (PLL_Q+1)*(33+ADC_cycle) ) = 67 МГц, что в 67 раз больше номинальной частоты.
Смогу ли я, к примеру, при частоте питающего напряжения 10 кГц, LBW=3, полосе пропускания контура 5617 ГЦ получить не 10 разрядов (как указано для номинальной частоты), а 16?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2017-апр-28 09:56 
Не в сети

Зарегистрирован: 2015-дек-14 09:21
Сообщения: 18
ruslan.h писал(а):
Saveliy писал(а):
Здравствуйте.
Я пишу программу для 1986ве92 платы 1310нм025. Настроил модуль SPI на передачу и смотрю линию осциллографом. Передача идет, а ответа от микросхемы нет.
Подскажите пожалуйста, как настроить SPI модуль ВЕ92 для работы с 1310нм025?
[/spoiler]


Инициализация SPI
Открыть
void Setup_SSP(void)
{
RST_CLK_PCLKcmd(RST_CLK_PCLK_PORTF, ENABLE);
RST_CLK_PCLKcmd(RST_CLK_PCLK_SSP1, ENABLE);

PORT_StructInit(&PORT_InitStructure);

PORT_InitStructure.PORT_Pin = (PORT_Pin_0 | PORT_Pin_1 | PORT_Pin_2);
PORT_InitStructure.PORT_OE = PORT_OE_OUT;
PORT_InitStructure.PORT_FUNC = PORT_FUNC_ALTER;
PORT_InitStructure.PORT_MODE = PORT_MODE_DIGITAL;
PORT_InitStructure.PORT_SPEED = PORT_SPEED_MAXFAST;
PORT_InitStructure.PORT_PULL_UP = PORT_PULL_UP_ON;
PORT_InitStructure.PORT_PULL_DOWN = PORT_PULL_DOWN_OFF;
PORT_Init(MDR_PORTF, &PORT_InitStructure);

PORT_InitStructure.PORT_Pin = (PORT_Pin_3);
PORT_InitStructure.PORT_OE = PORT_OE_IN;
PORT_InitStructure.PORT_FUNC = PORT_FUNC_ALTER;
PORT_Init(MDR_PORTF, &PORT_InitStructure);

SSP_BRGInit(MDR_SSP1,SSP_HCLKdiv1);

SSP_StructInit (&sSSP);

sSSP.SSP_SCR = 0x0;
sSSP.SSP_CPSDVSR = 6;
sSSP.SSP_Mode = SSP_ModeMaster;
sSSP.SSP_WordLength = SSP_WordLength16b;
sSSP.SSP_SPH = SSP_SPH_1Edge;
sSSP.SSP_SPO = SSP_SPO_Low;
sSSP.SSP_FRF = SSP_FRF_SPI_Motorola;
sSSP.SSP_HardwareFlowControl = SSP_HardwareFlowControl_SSE;
SSP_Init (MDR_SSP1,&sSSP);

SSP_Cmd(MDR_SSP1, ENABLE);
}
Закрыть

Чтение/Запись регистров
Открыть
void RDC_Raed_Reg(uint8_t addr, uint8_t *data)
{
uint8_t i, pbit = 0;
uint16_t temp = 0;

if ((MDR_SSP1->SR & SSP_SR_BSY) == 0)
{
for (i=0; i<8; i++)
temp = temp + ((addr >> i) & 0x01);
temp = temp + 2;
pbit = temp & 0x01;
temp = 0xC000 | ((addr << 5) &0x1FE0) | pbit;
MDR_SSP1->DR = temp;
MDR_SSP1->DR = 0xC000;
while (MDR_SSP1->SR & SSP_SR_BSY);
}
temp = MDR_SSP1->DR;
while (MDR_SSP1->SR & SSP_SR_RNE)
{
temp = MDR_SSP1->DR;
*data++ = (temp>>8) & 0xFF;
*data++ = temp & 0xFF;
}
}

void RDC_Write_Reg(uint8_t addr, uint8_t *data)
{
uint8_t i, pbit = 0;
uint16_t temp = 0;

if ((MDR_SSP1->SR & SSP_SR_BSY) == 0)
{
for (i=0; i<8; i++)
temp = temp + ((addr >> i) & 0x01);
temp = temp + 1;
pbit = temp & 0x01;
temp = 0x8000 | ((addr << 5) &0x1FE0) | pbit;
MDR_SSP1->DR = temp;
while (MDR_SSP1->SR & SSP_SR_BSY);
temp = *data++;
temp = (temp<<8) | *data;
MDR_SSP1->DR = temp;
while (MDR_SSP1->SR & SSP_SR_BSY);
}
while (MDR_SSP1->SR & SSP_SR_RNE)
{
temp = MDR_SSP1->DR;
}
}
Закрыть


Микросхему настроил, считываю вычисленную координату из регистра C1Coord по адресу 0х10, значения приходят правильные.
Пытаюсь настроить режим прямой передачи данных, но не выходит. Что может быть не так?

Прямая передача.
Открыть
void get_databuf(uint16_t count, uint16_t *data)
{
uint16_t temp = 0,i;
if ((MDR_SSP1->SR & SSP_SR_BSY) == 0)
{
MDR_SSP1->DR = 0x0;
while (MDR_SSP1->SR & SSP_SR_BSY);
}
temp = MDR_SSP1->DR;
for (i=0; i<count; i++)
{
if ((MDR_SSP1->SR & SSP_SR_BSY) == 0)
{
MDR_SSP1->DR = 0x0;
while (MDR_SSP1->SR & SSP_SR_BSY);
}
temp = MDR_SSP1->DR;
*data++= temp;
}
}
Закрыть


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2017-апр-28 11:07 
Не в сети

Зарегистрирован: 2015-фев-24 19:17
Сообщения: 33
Откуда: АО "ПКК Миландр"
Maximka писал(а):
Правильно ли мы понимаем, при следующих параметрах:
Fosc=60 МГц;
ADC_cycle=0;
PLL_Q=0;
PLL_N=74;
Частота работы микросхемы (термин на стр. 16),она же частота цикла преобразования (термин на стр. 42) составит:
Fclk=0,5*Fosc*PLL_N/( (PLL_Q+1)*(33+ADC_cycle) ) = 67 МГц, что в 67 раз больше номинальной частоты.


Документ "спецификация", действительно, мало понятно написан и нуждается в исправлении. Вообще, он временный, потом будет РЭ.
Таблицы параметров также не совсем полны, адекватные будут в ТУ.

1. Частота fclk должна быть не более 1.3 МГц. Номинальная частота fclk ~1 МГц. Это частота на которой задаются/измеряются все остальные параметры, поэтому я рекомендую использовать именно ее. На 1.3МГц характеристики микросхемы могут быть лучше, но незначительно

2. fclk это частота выборки АЦП, а также частота на которой идет расчет координаты

2. При использовании ФАПЧ, частота на входе ФАПЧ от 2 до 16МГц. (этого в данной спецификации вероятно нет, но внесено в ТУ).

3. При Fosc=60МГц нужно записать PLL_N=0, ADC_clk=27.

4. Можно поставить рекомендуемый кварц 10 МГц и ничего в PLL_config не настраивать

Maximka писал(а):
Смогу ли я, к примеру, при частоте питающего напряжения 10 кГц, LBW=3, полосе пропускания контура 5617 ГЦ получить не 10 разрядов (как указано для номинальной частоты), а 16?


Дело в том, что полоса пропускания любого цифрового фильтра пропорциональна тактовой частоте его расчета (в данном случае fclk). В таблице 3 даны значения полосы для тактовой частоты 1.024 МГц.
Разрядность преобразователя зависят именно от полосы пропускания, а не от fclk непосредственно.

-------

Еще немного про разрядность:

Я думаю, что при любой настройке LBW у вас не будет потерянных кодов, т.е. формально разрядность будет равна настроенной (вплоть до 18 бит).
Однако, практически количество младших разрядов, которые будут дергаться (шуметь) будет меняться.

Количество этих разрядов зависит от:
1. Шума на входе микросхемы (т.е. от вашей схемы, дифференциальное ли включение, есть ли фильтр, какое экранирование датчика и кабеля, как сделано питание, помеховая обстановка и т.д.)
2. Настройки полосы пропускания контура (LBW), т.е. полосы фильтра, который это шум и фильтрует
3. Модуляционных продуктов, но при частоте возбуждения датчика 10кГц они не должны вас беспокоить

В таблице 3 приведены некие практические значения для начала работы с микросхемой. В зависимости от вышесказанного, для получения стоящего кода, полосу преобразования может понадобиться сузить или может быть удастся расширить.
Например, при подключении к нашей отладочной плате датчика с экранированным кабелем можно увидеть стоящий код 16 бит с настройкой полосы 1кГц. В тоже время, при несиметричном (single ended) включении того же датчика приходится ставить полосу около 50 Гц.


Последний раз редактировалось Alex1 2017-май-02 10:21, всего редактировалось 3 раз(а).

Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2017-апр-28 11:24 
Не в сети

Зарегистрирован: 2015-фев-24 19:17
Сообщения: 33
Откуда: АО "ПКК Миландр"
Цитата:
Микросхему настроил, считываю вычисленную координату из регистра C1Coord по адресу 0х10, значения приходят правильные.
Пытаюсь настроить режим прямой передачи данных, но не выходит. Что может быть не так?

Если я правильно понял, в режиме прямой передачи значения приходят неправильные, вероятно нули (если при вращении датчика не нули, то, тогда это скорость, и нужно задать VC=0).
Я бы рекомендовал с помощью осциллографа проконтролировать выводы SDI и VC, то что они находятся в правильном положении (оба в 0).


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2017-май-02 14:55 
Не в сети

Зарегистрирован: 2015-дек-14 09:21
Сообщения: 18
Alex1 писал(а):
2. fclk это частота выборки АЦП, а также частота на которой идет расчет координаты


Правильно я понял, что Fclk - частота, с которой получаем новые значения координаты?

Alex1 писал(а):
Я думаю, что при любой настройке LBW у вас не будет потерянных кодов, т.е. формально разрядность будет равна настроенной (вплоть до 18 бит).
Однако, практически количество младших разрядов, которые будут дергаться (шуметь) будет меняться.


Могу ли я получить значение координаты с разрядностью 18 бит? Биты quadrant[1:0] в регистре CxStat содержат старшие биты результата, т.е. я должен считывать их отдельно?

И еще, при работе с демонстрационной программой происходит скачок угла на 180 гр, в чем может быть дело?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2017-май-02 18:49 
Не в сети

Зарегистрирован: 2015-фев-24 19:17
Сообщения: 33
Откуда: АО "ПКК Миландр"
Saveliy писал(а):
Правильно я понял, что Fclk - частота, с которой получаем новые значения координаты?

Да, правильно.
Saveliy писал(а):
Могу ли я получить значение координаты с разрядностью 18 бит? Биты quadrant[1:0] в регистре CxStat содержат старшие биты результата, т.е. я должен считывать их отдельно?

Все так. Дополнительно придется использовать сигнал sample, для блокировки кода при считывании.
Большого смысла в 18 битах нет, т.к. погрешности микросхемы все равно больше 16 бит (20 угловых секунд). Но если нужно именно разрешение, то почему бы нет.
Saveliy писал(а):
И еще, при работе с демонстрационной программой происходит скачок угла на 180 гр, в чем может быть дело?

Скорее всего нужно настроить фазу в регистре ExPhShft по сигналу EXI, алгоритм есть в методике.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2017-июн-30 01:32 
Не в сети

Зарегистрирован: 2015-сен-04 21:47
Сообщения: 6
Добрый вечер. Скажите пожалуйста осуществляете вы отправку сигнальных образцов данной микросхемы. Я отсылал Вам письмо в начале 2017 года от организации КФ АО "Концерн"Океанприбор" на получение сигнальных образцов. Но ответа мне на почту не приходило и о статусе нашего запроса на данные микросхемы нет данных. Прошу по возможности прояснить данный вопрос. Заранее спасибо.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2017-июл-03 11:14 
Не в сети

Зарегистрирован: 2009-май-25 10:03
Сообщения: 37
Откуда: АО "ПКК Миландр"
21troi писал(а):
Добрый вечер. Скажите пожалуйста осуществляете вы отправку сигнальных образцов данной микросхемы. Я отсылал Вам письмо в начале 2017 года от организации КФ АО "Концерн"Океанприбор" на получение сигнальных образцов. Но ответа мне на почту не приходило и о статусе нашего запроса на данные микросхемы нет данных. Прошу по возможности прояснить данный вопрос. Заранее спасибо.

Здравствуйте!
Запрос образцов от КФ мы получали. Микросхемы были забронированы под вашу организацию. Партия образцов под ваш заказ поступила с производства в конце июня, в ближайшее время мы свяжемся с контактным лицом из официального запроса и направим образцы.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2017-июл-03 14:33 
Не в сети

Зарегистрирован: 2015-сен-04 21:47
Сообщения: 6
Большое спасибо за ответ.
Будем рады с Вами сотрудничать Тройцюк Ю.В.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2017-июл-06 20:40 
Не в сети

Зарегистрирован: 2013-фев-16 23:56
Сообщения: 10
Откуда: Москва
Здравствуйте.
Можно ли выложить схемы отладочной платы в оригинальном (РСАD) формате, а не в PDF?
Хотелось бы воспользоваться уже созданными элементами и фрагментами схемы типового включения ИС АЦПВТ, а не рисовать всё заново.
Может кто проектировал и готов поделиться SCH+РСВ своей платы или библиотекой.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2017-июл-14 13:54 
Не в сети

Зарегистрирован: 2015-дек-14 09:21
Сообщения: 18
Здравствуйте.

Я настроил разрядность преобразователя на 18 бит, на SIN и COS входы подаю синусоидальные сигналы одинаковые по частоте и фазе. При изменении амплитуд сигналов получаю значения от 0 до 65535, что соответствует углам от 0 до 90. Значения 18 и 17 бита не изменяются.

Когда я меняю полярность сигнала, например, COS канала, то должен получать значения углов от 90 до 180, соответственно, должны меняться старшие биты, но этого не происходит.

Правильно ли я понимаю, что для перехода из одного квадранта в другой нужно менять полярность сигналов? Нужно ли для настройки разрядности 18 бит изменять какие-то регистры кроме С1ResCntrl[3:0]?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2017-июл-14 17:56 
Не в сети

Зарегистрирован: 2015-фев-24 19:17
Сообщения: 33
Откуда: АО "ПКК Миландр"
ЕМНИП там по умолчанию биты квадранта замаскированы. Нужно в регистре СхMask биты 13 и 14 поставить в 1.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 120 ]  На страницу Пред.  1 ... 4, 5, 6, 7, 8

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


Кто сейчас на конференции

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


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

Найти:
Перейти:  
cron
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB