Миландр

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

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




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

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

А как считать прошивку с ВЕ92? Перевести его в режим загрузчика и по UART считать данные?
Или это можно сделать через JTAG, в Keil?

А вы не могли бы просто скинуть мне прошивку, если я и так могу её считать?


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

Зарегистрирован: 2015-дек-14 09:21
Сообщения: 18
И еще вопрос. В программе для работы с 1301нм025 в файл записываются данные об углах и скорости. Как перевести полученные числа в градусы?


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

Зарегистрирован: 2011-дек-27 08:33
Сообщения: 107
Откуда: АО "ПКК Миландр"
Saveliy писал(а):
Спасибо.

А как считать прошивку с ВЕ92? Перевести его в режим загрузчика и по UART считать данные?
Или это можно сделать через JTAG, в Keil?

А вы не могли бы просто скинуть мне прошивку, если я и так могу её считать?

Бинарник в приложении. Прошить можно так: http://www.keil.com/support/man/docs/uv ... wnload.htm


Вложения:
1310NM025.zip [84.3 КБ]
Скачиваний: 72
Вернуться к началу
 Профиль  
 
СообщениеДобавлено: 2017-апр-05 13:21 
Не в сети

Зарегистрирован: 2015-фев-24 19:17
Сообщения: 43
Откуда: АО "ПКК Миландр"
Saveliy писал(а):
И еще вопрос. В программе для работы с 1301нм025 в файл записываются данные об углах и скорости. Как перевести полученные числа в градусы?


В файл записываются значения регистров считанных из микросхемы (C?Coord, C?Vel). Поэтому перевод зависит от настроек.

Например при настройке разрядности 16 бит, для значения угла перевод такой: C?Coord*360/65536


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

Зарегистрирован: 2014-авг-18 16:19
Сообщения: 4
Откуда: ЗАО "ПКК Миландр"
Добрый день! В выходной файл данные складываются следующим образом:
1) Если выбран Канал 1, то четные строки файла содержат значения С1Vel, а нечетные - С1Coord (нумерация строк с нуля);
2) Если выбран Канал 2, то аналогично п.1, но для второго канала;
3) Если выбрано Каналы 1, 2, то в строке 4*i содержится значение С2Vel, в стороке 4*i + 1 - C2Coord, в строке 4*i + 2 - C1Vel, а в стороке 4*i + 3 - С1Coord, i изменяется от нуля до количества читаемых слов, указанного в окне Слов поля Действия. Перевод значения регистра в градусы либо частоту описан в спецификации.


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

Зарегистрирован: 2009-июл-21 14:13
Сообщения: 1039
Откуда: Тула
Отрадно видеть столь дружный ответ.

_________________
сочувствующий…


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

Зарегистрирован: 2015-дек-14 09:21
Сообщения: 18
Большое спасибо за ответы и прошивку :D


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

Зарегистрирован: 2015-дек-14 09:21
Сообщения: 18
А как прочитать прошивку из контроллера? Можно ли это сделать средствами Keil?


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

Зарегистрирован: 2009-июл-21 14:13
Сообщения: 1039
Откуда: Тула
Saveliy писал(а):
А как прочитать прошивку из контроллера? Можно ли это сделать средствами Keil?

Можно. Как - не помню. Суть была примерно в том, что кейлу давалась команда считать память с адреса 0х08000000 размером 0х20000 в файлик. Гуглите по сайту арм/кейл. На форуме тоже было.

_________________
сочувствующий…


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

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

Я задаю следующие параметры:
Открыть
sSSP.SSP_SCR =0;
sSSP.SSP_CPSDVSR = 2;
sSSP.SSP_Mode = SSP_ModeMaster; //Задаем для модуля SSP режим Master
sSSP.SSP_WordLength = SSP_WordLength16b; //16 битный передаваемый или принимаемый кадр
sSSP.SSP_SPH = SSP_SPH_1Edge; //SPH=0 (прием данных из линии по переднему фронту)
sSSP.SSP_SPO = SSP_SPO_Low; //SPO=0 (передача данных в линию по заднему фронту)
sSSP.SSP_FRF = SSP_FRF_SPI_Motorola; //Работа модуля SSP в режиме SPI
sSSP.SSP_HardwareFlowControl = SSP_HardwareFlowControl_SSE; //Разрешение работы приемопередатчика

SSP_Init(MDR_SSP1, &sSSP);
SSP_Cmd(MDR_SSP1, ENABLE);
SSP_BRGInit(MDR_SSP1, SSP_HCLKdiv16 );
Закрыть


Передаю следующее:
Открыть
SSP_SendData(MDR_SSP1, 0x0);
while (SSP_GetFlagStatus(MDR_SSP1, SSP_FLAG_TFE ) == RESET);
SSP_SendData(MDR_SSP1, 34826);
Закрыть


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

Зарегистрирован: 2011-дек-27 08:33
Сообщения: 107
Откуда: АО "ПКК Миландр"
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;
}
}
Закрыть


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

Зарегистрирован: 2015-дек-14 09:21
Сообщения: 18
Спасибо.
Применил ваши настройки и функции чтения\записи. Проблема та же, передача идет, а ответа нет.

Подскажите пожалуйста, нужны ли еще какие-то программные настройки или дополнительные сигналы, подаваемые на 1310нм025 с ве92?
Можете скинуть сам проект для кейла?


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

Зарегистрирован: 2014-июн-25 09:29
Сообщения: 46
Saveliy писал(а):
А как прочитать прошивку из контроллера? Можно ли это сделать средствами Keil?

viewtopic.php?f=22&t=3613#p19807


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

Зарегистрирован: 2015-фев-24 19:17
Сообщения: 43
Откуда: АО "ПКК Миландр"
Saveliy писал(а):
Спасибо.
Применил ваши настройки и функции чтения\записи. Проблема та же, передача идет, а ответа нет.

Подскажите пожалуйста, нужны ли еще какие-то программные настройки или дополнительные сигналы, подаваемые на 1310нм025 с ве92?

По сигналам могу сказать, что необходимо отпустить nReset микросхемы, т.е. подать PB7='1'.


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

Зарегистрирован: 2015-дек-14 09:21
Сообщения: 18
Добрый день. У меня следующий вопрос.
Я хочу получить максимально возможную точность измерения угла, при сигнале 6 кГц и полосе пропускания следящего контура 1 кГц.
Какую частоту преобразователя я должен выбрать?


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

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


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

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


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

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