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

 
 
 
Reply to this topicStart new topic
> одновременное использование I/O портов на AT89C5131, можно ли использовать P1_1 - P1_7, если P1_0 настроен на выход таймера
StasK
сообщение Apr 22 2008, 04:35
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 25
Регистрация: 31-03-08
Пользователь №: 36 348



Если P1_0 настроен на выход таймера, то можно ли использовать P1_1 - P1_7 на запись/чтение? Не будет ли проблем с P1_0 при выполнении команды, например:
P1=0xff;
Может ли одновременно работать P1_0 на выход таймера, а P1_5, P1_6, P1_7 на SPI?
Спасибо.
Go to the top of the page
 
+Quote Post
kolobok0
сообщение Apr 24 2008, 12:11
Сообщение #2


практикующий тех. волшебник
*****

Группа: Участник
Сообщений: 1 190
Регистрация: 9-09-05
Пользователь №: 8 417



Цитата(StasK @ Apr 22 2008, 08:35) *
Если P1_0 настроен на выход таймера, то можно ли использовать P1_1 - P1_7 на запись/чтение? Не будет ли проблем с P1_0 при выполнении команды, например:
P1=0xff;...


Что первое приходит на ум(запись) - это блокировать прерывания, читать порт, сохранение первого бита, писать, разблокировать...

чтение - тут вообще без гимора - просто читать из порта усе smile.gif игнорируя первый бит в дальнейшей логике.

с уважением
(круглый)
Go to the top of the page
 
+Quote Post
chds
сообщение Apr 24 2008, 12:43
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 173
Регистрация: 5-11-07
Из: Чернигов, Украина
Пользователь №: 32 078



Цитата(StasK @ Apr 22 2008, 07:35) *
Если P1_0 настроен на выход таймера, то можно ли использовать P1_1 - P1_7 на запись/чтение? Не будет ли проблем с P1_0 при выполнении команды, например:
P1=0xff;
Может ли одновременно работать P1_0 на выход таймера, а P1_5, P1_6, P1_7 на SPI?
Спасибо.


На сколько я помню, то на выход подается значение от альтернативной функции и PIO контроллера через ИЛИ, значит не очень хорошо может получиться.
В своей практике использовали подход такой, который не позволял обращаться к пинам используемым для альтернативной функции напрямую.
Go to the top of the page
 
+Quote Post
62256
сообщение Apr 25 2008, 07:26
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 36
Регистрация: 1-05-06
Из: Одесса
Пользователь №: 16 644



Цитата(StasK @ Apr 22 2008, 07:35) *
Если P1_0 настроен на выход таймера, то можно ли использовать P1_1 - P1_7 на запись/чтение? Не будет ли проблем с P1_0 при выполнении команды, например:
P1=0xff;
Может ли одновременно работать P1_0 на выход таймера, а P1_5, P1_6, P1_7 на SPI?
Спасибо.


Запись 0xFF ничего не сделает плохого. Запись нолика придавит альтернативную функцию - будет постоянный ноль. То есть: или писать в порт байт с единицей на этом разряде, или работать с портом побитово.
Конкретно для SPI, имхо, и надо побитно работать - установка бита быстрее установки байта, а конкретно данные - так вообще значительно быстрее сдвинуть аккумулятор в перенос и перенос скопировать в ногу, чем двигать аккумулятор, маскировать, и потом писать в порт.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 1st July 2025 - 13:22
Рейтинг@Mail.ru


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