- •4.1.2 Организация памяти
 - •4.1.3. Параллельные порты ввода/вывода.
 - •4.1.4. Таймеры/счетчики
 - •4.1.5. Организация системы прерываний
 - •4.1.6. Последовательный порт
 - •4.1.7. Система команд
 - •4.8. Применение мк для управления шаговым двигателем
 - •4.2 Однокристальные микроконтроллеры семейства mcs-251
 - •4.2.1 Общая характеристика семейства mcs-251
 - •4.2.2 Структура микроконтроллера
 - •4.2.3 Организация памяти микроконтроллера
 - •4.2.4 Система команд
 
4. ОДНОКРИСТАЛЬНЫЕ МИКРОКОНТРОЛЛЕРЫ
ФИРМЫ INTEL
4.1 Микроконтроллеры семейства MCS-51
4.1.1 Общая характеристика семейства MCS-51
Семейство MCS-51 однокристальных 8-разрядных микроконтроллеров фирмы Intel является одним из наиболее развитых в данном классе устройств. Основные характеристики некоторых представителей семейства приведены в табл.4.1.
Табл. 4.1
Характеристики МК семейства MCS-51
МК  | 
		Память программ (байт)  | 
		Память данных (байт)  | 
		Таймеры / счетчики  | 
		Аналоговые входы  | 
		Тактовая частота 
  | 
	
8751BH 8752BH 87C51 87C52 87C54 87C51FA 87C51FB 87C51FC 87C51GB  | 
		4K 8K 4K 8K 16K 8K 16K 32K 8K  | 
		128 256 128 256 256 256 256 256 256  | 
		2 3 2 3 3 3 3 3 3  | 
		0 0 0 0 0 0 0 0 8  | 
		12 12 12,16,20,24 12,16,20,24 12,16,20,24 12,16,20,24 12,16,20,24 12,16,20,24 12,16  | 
	
Базовое ядро МК семейства MCS-51 включат следующие устройства:
центральное процессорное устройство (ЦПУ);
память данных и память программ;
4 параллельных порта ввода/вывода;
2 таймера/счетчика;
блок прерываний;
последовательный порт.
На рис. 4.1. представлена обобщенная структурная схема базового МК. Старшие модели контроллеров содержат три таймера, шесть параллельных портов, АЦП с 8 входными каналами, массив программируемых счетчиков.
4.1.2 Организация памяти
МК семейства MCS-51 выпускаются в следующих вариантах:
без встроенного ПЗУ программ (маркировка 80xxx);
со встроенным масочным ПЗУ (маркировка 83xxx);
со встроенным ПЗУ, программируемым пользователем (маркировка 87xxx).
Память программ и память данных физически и логически разделены, имеют различные механизмы адресации и работают под управлением различных сигналов.
Резидентная память программ (РПП) имеет емкость от 4K до 32K и предназначена для хранения команд, констант, управляющих слов инициализации, таблиц перекодировки входных и выходных данных и т.п. РПП имеет 16-разрядную шину адреса, который формируется в счетчике команд (PC) или в регистре-указателе (DPTR). Последний выполняет функции базового регистра при косвенных переходах в программе и используется в командах, оперирующих с таблицами. Память данных (ОЗУ) предназначена для хранения переменных в процессе выполнения программы и имеет емкость 128 или 256 байт. К адресному пространству резидентной памяти данных примыкают адреса регистров специального назначения. Как память программ, так и память данных могут быть расширены до 64K байт путем подключения внешних БИС.
Слово состояния программы (PSW) хранит признаки, вырабатываемые АЛУ при выполнении различных команд, а также биты управления выбором регистрового банка.
  
	ACC 
	B 
	PSW 
	SP 
	DPTR 
	PC 
	Память данных (1288,
	2568) 
	Память программ (4K8,
	32K8) 
	ЦПУ 
	 
	Параллельные порты ввода/вывода 
	P1 
	P2 
	P3 
	Схема приоритетных прерываний 
	IP 
	IE 
	P0 
	THO 
	TL0 
	TH1 
	TL1 
	TMOD 
	TCON 
	Блок таймеров/ счетчиков 
	Последовательный порт 
	SBUF 
	PCON 
	SCON
  
Рис. 4.1. Структура базового МК семейства MCS-51.
4.1.3. Параллельные порты ввода/вывода.
Параллельные порты P0-P3 предназначены для побайтного ввода или вывода информации. Каждый порт содержит управляемые регистр-защелку, входной буфер и выходной драйвер. Порт 0 является двунаправленным, а порты 1, 2 и 3 – квазидвунаправленными. Каждая линия портов может быть использована независимо для ввода или вывода информации. Чтобы некоторая линия порта использовалась для ввода, в D-триггер регистра-защелки порта должна быть записана 1, которая закрывает МОП-транзистор выходной цепи. По сигналу сброса в регистры-защелки всех портов записываются единицы, настраивающие их тем самым на режим ввода.
Порты P0 и P2 используются при обращении к внешней памяти. При этом через P0 в режиме временного мультиплексирования сначала выводится младший байт адреса, а затем выдается или принимается байт данных. Через порт P2 выводится старший байт адреса в тех случаях, когда разрядность адреса равна 16 бит. Таким образом при наличии внешней памяти порты P0 и P2 не могут использоваться для ввода/вывода данных от внешних устройств.
Выводы порта P3, как правило, используются для реализации альтернативных функций: выдачи сигналов чтения (RD) и записи (WR) при обращении к внешней памяти данных, приема входных сигналов таймеров/счетчиков (T0, T1) и сигналов внешних прерываний (INT0, INT1), а также приема и выдачи данных последовательного порта (RxD, TxD). Альтернативные функции могут быть задействованы путем записи 1 в соответствующие разряды регистра защелки порта P3.
Линия порта P0 может быть нагружена на два ТТЛ-входа, а выходные линии портов P1-P3 могут работать на одну ТТЛ-схему.
