Реклама на сайте | Помощь сайту   English version | Free likes 
KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Микроконтроллеры семейства MCS-51

Вопрос   Какие есть особенности использования I/O выводов в семействе mcs51?

Ответ  Ответ: Наверх [Вернуться в категорию "Микроконтроллеры семейства MCS-51"]

Семейство mcs51 имеет 'квазидвунаправленные' выводы портов. Т.е. вниз они тянут более-менее прилично, а вверх тянет несильный pull-up. Для конфигурирования ноги на ввод в соответствующий бит порта просто выводится единичка, наружный сигнал ее пересиливает. Hо на этом ровном месте разложены аккуратненькие грабельки.

Pull-up на самом деле состоит из трех частей (см. например doc0499.pdf с сайта Atmel). Самый слабый транзистор Q2 обеспечивает ток 8...10 мкА. Транзистор Q3 (ток до 0.5 мА) обеспечивает поддержание уровня '1', но при снижении напряжения на входе до уровня около 2 В (при питании 5В) он выключается. И, наконец, самый мощный транзистор Q1 (единицы мА) включается на 2 периода кварцевого генератора при переходе бита в регистре порта из '0' в '1', обеспечивая хорошее нарастание сигнала. Такая структура обеспечивает и возможность выдать достаточно приличную (по меркам работы на ТТЛ-микросхемы) '1' и в то же время не потреблять лишний ток при подаче на вход "0".

Hо:

a) если нога была притянута к земле внешним сигналом с открытым коллектором, то к питанию ее поначалу будет тянуть только ток 10 мкА, нарастание будет очень медленным. Из-за этого, например, может плохо работать обмен по I2C.

Притяните выводы к питанию резистором 3К...10К

b) если нога работает через резистор на базу NPN транзистора, да еще и тока захотелось в базу дать побольше :-), то иногда даже наводка может дотянуть вывод вниз до выключения транзистора Q3. После этого тока транзистора Q2 может не хватать для того, чтобы вывести напряжение на нагружающем резисторе в зону включения Q3, выход защелкивается в '0'

 

ставьте резистор с базы не на вывод порта, а на питание и пусть порт коротит базу на землю. Hедостаток - лишний потребляемый ток в состоянии 'транзистор закрыт'

если это возможно, ставьте PNP транзисторы и используйте ток '0'

ставьте составные транзисторы (или ULN2003 aka К1109КТ23), падения напряжения на двух переходах даже при малом токе достаточно для нормальной работы.

2) Кроме этого, транзисторы Q1 в порту P2 при выводе адреса и обычно выключенный pull-up в порту P0 при выводе адреса и данных в лог. '1' включены все время. Падение напряжения на этих транзисторах около 0.5 В при токе 4...5 мА т.е. могут создать вполне приличные 'КМОП-уровни' на нагрузке 1К. В то же время в 'обычном' состоянии резистор 4.7 К на землю создает достаточно устойчивый '0' на входах процессоров серии mcs51.

Следствия:

a) Если даже в вашей системе используются внешние ОЗУ/ПЗУ, но есть также и внутреннее ПЗУ, то вы можете использовать линии порта P2 как входы, подключив входные сигналы через последовательные резисторы 2К...3К и опрашивая их подпрограммой, находящейся во внутренней памяти кода

b) Если внешнего ПЗУ нет, то можно расширить порты микроконтроллера не занимая выводов для стробирования следующим образом. Порт P2 используется как входы (через резисторы), напрямую же к нему подключены входы регистра ИР23, на строб регистра подается сигнал /PSEN.

Последовательность команд

mov DPH,somedata

movc a,@a+DPTR

запишет в регистр значение somedata.

[Микроконтроллеры семейства MCS-51]

Новости
[06/02/2019] Конференция в МГТУ им. Баумана «Технологии разработки и отладки сложных технических систем» 2019
[09/05/2018] Грандиозная майская распродажа на Gearbest!
[16/05/2017] С 15 по 17 мая в магазине Gearbest проходит грандиозный флэшсейл
[10/05/2017] Так что же такое Спиннер?
[05/12/2016] Новый Год и Рождество с GearBest!
Читать все новости >>
Каталог схем
PDA - интерфейсы и схемы Автозвук Автомобиль Аудио Безопасность Бытовая электроника Видео Видеокамеры Высоковольтные Генераторы Игры, развлечения Измерения Интерфейсы Коммутация Компьютер Медицина Моделирование/ Роботы Музыка Передатчики Питание Получение и накопление данных Предусилители Радио Разное Ремонт Ретро Свет/Лазер/ Cветодиоды/IR Сети Солнечная энергия Сотовая связь ТВ-Мониторы Телефония Управление двигателями Фильтры Цифровые/ Микроконтроллеры Electronic circuits Datasheets Каталог схем Принципиальные схемы
Мicrocontrollers
Drivers for LED dispays Data Logger for iButton LCD-module with MCS-51 Thermometers Dallas Semiconductor Work with EEPROM 24LCxx MSP430 with Flash-memory ATmega169 and AVR-Baterfly CAN interface USB interface
Избранные схемы
Arduino Аудио В Вашу мастерскую Видео Для автомобиля Для дома и быта Для начинающих Зарядные устройства Измерительные приборы Источники питания Компьютер Медицина и здоровье Микроконтроллеры Музыкантам Опасные, но интересные конструкции Охранные устройства Программаторы Радио и связь Радиоуправление моделями Световые эффекты Связь по проводам и не только... Телевидение Телефония Узлы цифровой электроники Фототехника Шпионская техника
Пользователи
Создано аккаунтов:
Сегодня: 0
Вчера: 0
Всего: 146143

Статистика:

 © 2003—2024 «Электронный портал»Обр@тная связь