реклама на сайте
подробности

 
 
> Виртуальный порт stm32
Ruslan.B
сообщение Apr 28 2016, 07:50
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 60
Регистрация: 23-07-09
Пользователь №: 51 492



Возникла необходимость выводить информацию по параллельной шине. В связи с этим, как мне объявить порт на несколько линий и не трогать другие выводы, данные из массива в порт и всё? Напрямую в ODR вроде как плохо. А через BRR и прочие - нельзя же сделать это проще, установка так, сброс иначе...
Использую, сравнительно недавно libopencm3. На си пишу тоже недавно, старый ассемблерщик 8051/avr/pic. Подскажите пожалуйста какое-нибудь не извращенское решение, а то написать своё я могу и оно даже работать будет но хочется узнать как это делают люди.

Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 3)
jcxz
сообщение Apr 28 2016, 08:12
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713



Цитата(Ruslan.B @ Apr 28 2016, 13:50) *
Возникла необходимость выводить информацию по параллельной шине. В связи с этим, как мне объявить порт на несколько линий и не трогать другие выводы, данные из массива в порт и всё? Напрямую в ODR вроде как плохо. А через BRR и прочие - нельзя же сделать это проще, установка так, сброс иначе...

Для параллельной шины в STM32 вроде как имеется FSMC.
Go to the top of the page
 
+Quote Post
ViKo
сообщение Apr 28 2016, 08:53
Сообщение #3


Универсальный солдатик
******

Группа: Модераторы
Сообщений: 8 634
Регистрация: 1-11-05
Из: Минск
Пользователь №: 10 362



Цитата(Ruslan.B @ Apr 28 2016, 10:50) *
Напрямую в ODR вроде как плохо. А через BRR и прочие - нельзя же сделать это проще, установка так, сброс иначе...

И так можно, и так. Через BSRR можно одной командой и сбросить нужные биты, и установить. Написать макрос и забыть об этом неудобстве.
Или inline функцию. Что, в-общем-то, одно и то же.
Go to the top of the page
 
+Quote Post
AHTOXA
сообщение Apr 28 2016, 10:59
Сообщение #4


фанат дивана
******

Группа: Свой
Сообщений: 3 387
Регистрация: 9-08-07
Из: Уфа
Пользователь №: 29 684



На плюсах можно сделать красиво. Вот тут коллега neiver рассказывает, как. (Он выкладывал статью про это, но я что-то с ходу её не нашёл).
Если плюсы не вариант, то вот тут статья от того же автора, делающая то же при помощи препроцессорной магии.
А вообще, если задача разовая, то я поддерживаю коллегу ViKo - написать функцию записи и забыть. Сформировать масочку для BSRR, записать её в регистр, и всё.

----
Добавлено: нашёл статью: вот здесь.


--------------------
Если бы я знал, что такое электричество...
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 00:00
Рейтинг@Mail.ru


Страница сгенерированна за 0.01454 секунд с 7
ELECTRONIX ©2004-2016