Миландр

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

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




Начать новую тему Ответить на тему  [ Сообщений: 51 ]  На страницу Пред.  1, 2, 3, 4 Все
Автор Сообщение
 Заголовок сообщения: Re: Проблема с модулем МКИО
СообщениеДобавлено: 2019-мар-05 12:48 
Не в сети

Зарегистрирован: 2019-фев-22 13:12
Сообщения: 40
Вопрос решился.

Проблема оказалась в исходниках базовой библиотеки, неправильно настроенный импорт нашего проекта был.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с модулем МКИО
СообщениеДобавлено: 2019-мар-06 14:36 
Не в сети

Зарегистрирован: 2019-фев-22 13:12
Сообщения: 40
Вопрос по особенностям работы с портами ввода/вывода.

Фрагмент кода из исходного файла примера:
Код:
    PORT_InitStructure.PORT_Pin = (PORT_Pin_25 | PORT_Pin_26 | PORT_Pin_27 | PORT_Pin_28 | PORT_Pin_29);
    PORT_InitStructure.PORT_SFUNC  = PORT_SFUNC_12;
    PORT_InitStructure.PORT_SANALOG  = PORT_SANALOG_DIGITAL;
    PORT_InitStructure.PORT_SPWR = PORT_SPWR_10;
    PORT_Init(PORTA, &PORT_InitStructure);
   
    PORT_InitStructure.PORT_Pin   = (PORT_Pin_22);
    PORT_InitStructure.PORT_SFUNC  = PORT_SFUNC_12;
    PORT_InitStructure.PORT_SANALOG  = PORT_SANALOG_DIGITAL;
    PORT_InitStructure.PORT_SPWR = PORT_SPWR_10;
    PORT_Init(PORTA, &PORT_InitStructure);

этот код работает обмен идёт.
Модификация его до вида:
Код:
    PORT_InitStructure.PORT_Pin = (PORT_Pin_22|PORT_Pin_25 | PORT_Pin_26 | PORT_Pin_27 | PORT_Pin_28 | PORT_Pin_29);
    PORT_InitStructure.PORT_SFUNC  = PORT_SFUNC_12;
    PORT_InitStructure.PORT_SANALOG  = PORT_SANALOG_DIGITAL;
    PORT_InitStructure.PORT_SPWR = PORT_SPWR_10;
    PORT_Init(PORTA, &PORT_InitStructure);

Приводит к тому что обмен идет с ошибкой.

Хотя по коду "PORT_Init" должен работать сразу со всеми линиями.
Есть какие то особенности?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с модулем МКИО
СообщениеДобавлено: 2019-мар-07 09:16 
Не в сети

Зарегистрирован: 2017-апр-26 14:51
Сообщения: 455
Откуда: ПКК "Миландр"
Проверил, с текущей версией пака оба варианта настраивают регистры порта одинаково.
Проблема не должна быть в PORT_Init().

_________________
Отдел технической поддержки support@milandr.ru


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с модулем МКИО
СообщениеДобавлено: 2019-мар-07 16:11 
Не в сети

Зарегистрирован: 2019-фев-22 13:12
Сообщения: 40
Vasiliy писал(а):
Проверил, с текущей версией пака оба варианта настраивают регистры порта одинаково.
Проблема не должна быть в PORT_Init().


Но что есть, то есть.
И ведь в примере было не просто так разделено. При том что никакого обоснования для такого разделения нет:
Порт тот же, номер функции одинаковый, а конкретно эта линия вынесена.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с модулем МКИО
СообщениеДобавлено: 2019-мар-07 17:16 
Не в сети

Зарегистрирован: 2017-апр-26 14:51
Сообщения: 455
Откуда: ПКК "Миландр"
EvgeniyNvs писал(а):
Но что есть, то есть.
И ведь в примере было не просто так разделено. При том что никакого обоснования для такого разделения нет:
Порт тот же, номер функции одинаковый, а конкретно эта линия вынесена.


Проверьте, одинаково ли настраивают регистры GPIO оба варианта кода. (Можно открыть адреса порта в окне Memory.) Если значения в регистрах получаются разные - обновите библиотеку - https://ic.milandr.ru/soft/

Если регистры настраиваются одинаково, то это не может быть источником проблемы. Программист же мог ошибиться.

_________________
Отдел технической поддержки support@milandr.ru


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с модулем МКИО
СообщениеДобавлено: 2019-апр-02 11:19 
Не в сети

Зарегистрирован: 2019-фев-22 13:12
Сообщения: 40
Vasiliy писал(а):
EvgeniyNvs писал(а):
Но что есть, то есть.
И ведь в примере было не просто так разделено. При том что никакого обоснования для такого разделения нет:
Порт тот же, номер функции одинаковый, а конкретно эта линия вынесена.


Проверьте, одинаково ли настраивают регистры GPIO оба варианта кода. (Можно открыть адреса порта в окне Memory.) Если значения в регистрах получаются разные - обновите библиотеку - https://ic.milandr.ru/soft/

Если регистры настраиваются одинаково, то это не может быть источником проблемы. Программист же мог ошибиться.



Перетресли и причесали код и ошибка инициализации отдельной линии порта была устранена.


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

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


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

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


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

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