В предыдущей статье в основном разобрались со средой и концепциями разработки микроконтроллера C51, остался только порт ввода-вывода (порт ввода-вывода, то есть, по сути, контакты на плате разработки). Знание того, что эти контакты являются производными от микроконтроллера, позволяет микроконтроллеру взаимодействовать с периферийными устройствами. Когда мы используем ПК, у нас также есть клавиатура, мышь и монитор, что делает работу с компьютером удобной. В этой статье мы разберем информацию о порте ввода-вывода.
0x01: Порт ввода-вывода (порт ввода-вывода)
Я использую микроконтроллер STC89C52, который также совместим с микроконтроллером STC89C51. Микроконтроллер STC89C52 имеет 5 групп входных и выходных портов, а именно P0, P1, P2 и P3. Каждая группа соответствует 8 контактам. Порт P4 уникален для серии RC и имеет 7 контактов.
В мануале есть описание пинов. В мануале они называются пинами, а на макетной плате я так понимаю. Поскольку они соответствуют, выводы схемы в конечном итоге подключаются к выводам микроконтроллера. Так что, вероятно, не имеет значения, как вы это называете (извините, если объяснение здесь неправильное).
Инструкции для этих 5 групп контактов есть в руководстве, которое находится на страницах 26 и 27 соответственно. Скриншоты следующие:
Функция выводов — связь между микроконтроллером и периферией, то есть обмен данными.
Для микроконтроллера вход порта ввода-вывода предназначен для получения данных (сигнала) от периферийного устройства, а выход — для отправки данных (сигнала) на периферийное устройство.
Порт ввода-вывода STC89C52 относительно прост в использовании. Его можно использовать напрямую без настройки!
0x02: простой пример
Вот простой пример, демонстрирующий получение данных с вывода P1.0 и передачу данных в порт ввода-вывода P1.0. Код выглядит следующим образом:
sbit IOPORT = P1 ^ 0;
int main()
{
int io_data;
// Пучок I/O ротизданный присваивается переменной переменная, которая является входной
// Или можно понять, что этому выводу присвоены переменные данные для его сохранения.
io_data = IOPORT;
// Пучокодинданные Дайте булавку,причина причинить I/O изменение напряжения порта
// в целом 1 Выходной высокий уровень, 0 Выходной низкий уровень
// В это время он выводится, чтобы повлиять на внешнюю цепь.
IOPORT = 1;
}
Приведенный выше пример представляет собой простой пример ввода и вывода P1.0.
Проще говоря, переменные находятся в памяти микроконтроллера. Присвоение данных ввода-вывода переменным является входом, поскольку данные ввода-вывода поступают от периферийных устройств. Присвоение значений определенному выводу является выходом, поскольку они передаются через контроллер. Вывод данных на периферийные устройства. Вход и выход предназначены для микроконтроллеров!
На этом этапе со многими базовыми понятиями и средами разработки микроконтроллеров разобрались! Позже будет несколько простых примеров, чтобы понять больше.