Введение
Серия AT89 – это семейство 8-битных микроконтроллеров (μC), совместимых с Intel 8051, производимых компанией Atmel. Основанные на ядре Intel 8051, микроконтроллеры серии AT89 остаются весьма популярными в качестве универсальных микроконтроллеров благодаря стандартному набору инструкций, низкой стоимости и доступности в корпусах DIL (DIP). Это позволяет повторно использовать значительный объем существующего кода без изменений в новых приложениях. Хотя они менее производительны, чем новые микроконтроллеры AVR RISC серии AT90, разработка новых продуктов в серии AT89 продолжается благодаря вышеуказанным преимуществам. В последнее время серия AT89 была расширена специализированными микроконтроллерами с ядром 8051, в частности, в областях контроллеров USB, I²C (двухпроводного интерфейса), SPI и CAN-шины, декодеров MP3 и аппаратной ШИМ. Atmel также разработала LP (с низким энергопотреблением) серию этих чипов с "одноцикловым ядром", что значительно повышает скорость их работы.
The Atmel AT89 series is an Intel 8051 compatible family of 8 bit microcontrollers (μCs) manufactured by the Atmel Corporation. Based on the Intel 8051 core, the AT89 series remains very popular as general purpose microcontrollers, due to their industry standard instruction set, their low unit cost, and the availability of these chips in DIL (DIP) packages. This allows a great amount of legacy code to be reused without modification in new applications. While less powerful than the newer AT90 series of AVR RISC microcontrollers, new product development has continued with the AT89 series for the aforementioned advantages. More recently, the AT89 series has been augmented with 8051 cored special function microcontrollers, specifically in the areas of USB, I²C (two wire interface), SPI and CAN bus controllers, MP3 decoders and hardware PWM. Atmel has also created an LP (low power) series of these chips with a "Single Cycle Core", making the execution speed of these chips considerably faster.
Портовые структуры и эксплуатация
Все четыре порта в микроконтроллерах AT89C51 и AT89C52 двунаправленные. Каждый порт состоит из защелки (специальные функциональные регистры P0–P3), выходного драйвера и входного буфера. Выходные драйверы портов 0 и 2, а также входные буферы порта 0 используются при обращении к внешней памяти. В этом случае порт 0 выдает младший байт адреса внешней памяти, который мультиплексируется с байтом данных, записываемым или считываемым. Порт 2 выдает старший байт адреса внешней памяти, когда адрес имеет ширину 16 бит. В противном случае выводы порта 2 продолжают выдавать содержимое регистра P2 SFR. Все выводы порта 3 и два вывода порта 1 (в AT89C52) являются многофункциональными. Альтернативные функции могут быть активированы только при установке соответствующего бита в защелке порта SFR в 1. В противном случае вывод порта остается в состоянии 0.