Настройте вывод PIC для входа и выхода - PullRequest
0 голосов
/ 07 октября 2010

Я работаю над проектом, который использует PIC24FJ64GA002 MCU.Я работаю над функцией последовательной связи с побитовой передачей, которая будет использовать один провод для отправки данных, а затем переключаться в режим приема для получения данных на одном и том же выводе.Для синхронизации будет использоваться отдельный вывод, который всегда будет контролироваться другой платой (всегда входом).Мне интересно, есть ли способ настроить вывод для работы с открытым коллектором, чтобы его можно было использовать как вход и выход или нужно ли менять конфигурацию выводов каждый раз, когда я перехожу от чтения к записи?

1 Ответ

0 голосов
/ 10 ноября 2010

Вам необходимо каждый раз менять направление вывода с помощью регистра TRIS.Если вывод настроен как выход, чтение регистра PORT, скорее всего, покажет вам, к какому уровню вы выводите вывод (при условии высокого сопротивления на выводе).Если вывод установлен на вход, вы не сможете управлять желаемым выходным значением.Кроме того, убедитесь, что вы читаете входящие данные, используя регистр PORT, но выводите данные, используя регистр LAT.Это гарантирует, что у вас не возникнет никаких проблем, если ваш код (я предполагаю, что вы программируете на C здесь) конвертируется в инструкции bset / bclr / btgl, которые являются Read-Modify-Write.Если вы пишете на ассемблере, применяется то же правило, но вы знаете, когда используете эти инструкции типа RMW.Если вы хотите больше рассуждений на этот счет, пожалуйста, спросите.

...