Главная страница Комбинированное использование портов
Сохраняем состояния портов A и В во время сканирования клавиатуры. SavePorts RestorePorts UpdateDisplay
; Отображение lIpdateLsd ; Отображение Update2ndLsd ; Отображение Update3rdLsd ; Отображение UpdateMsd DisplayOut andlw movwf btfss btfsc goto btfsc goto btfsc goto первой OxOf TempC TempC,4 TempC STATUS,CARRY TempC.3 TempC,0 ; UpdateMsd TempC,1 UpdateSrdLsd TempC,2 Update2ndLsd цифры. movf LsdTime, w andlw OxOf goto DisplayOut второй цифры. swapf LsdTime,w andlw OxOf goto DisplayOut третьей цифры. movf MsdTime,w andlw OxOf goto DisplayOut четвертой цифры.
Считывание Lsd в регистр W. Маскирование старшего полубайта. Переход к индикации. Считывание Msd в регистр W. Индикация. Считывание семисегментного кода цифры. Управление светодиодами. : Таблица индикации. i-edTable addwf PCL retlw В-00111111- retlw В-00000110- retlw ВОЮНОЦ- Нодификация программного счетчика (PC). Индикация цифры 0. Индикация цифры 1. Индикация цифры 2.
ВНЕШНЯЯ ПЕРИФЕРИЯ Хотя микроконтроллеры постоянно совершенствуются и их технические возможности расширяются, они не всегда имеют аппаратные узлы, реализующие необходимую функцию. Причины разные: либо функция еще не реализована в данном семействе микроконтроллеров, либо микросхема конкретного типа, на который вы ориентируетесь, ею не обладает. Это особенно актуально для Р1С-микроконтроллеров 16С5Х, не обладающих развитыми аппаратными ресурсами для реализации интерфейсных функций. Существует два способа реализации необходимых функций. Пер вый путь - программный. Но это не всегда возможно либо в силу особенностей функции, либо ввиду чрезмерной нагрузки на ЦПУ. Второе решение состоит в том, чтобы использовать периферийную микросхему, выполняющую функции, которых нету микроконтроллера. Если микросхема рассчитана на работу со стандартным интерфейсом, в частности с шинами адресов и данных, его необходимо реализовать программно, через порты ввода/вывода. Суть программной реализации заключается в том, чтобы генерировать временные диаграммы сигналов интерфейса и алгоритмы обмена сигналами. Программная эмуляция интерфейса не вызовет затруднений, если интерфейс асинхронный, то есть обмен не тактируется и ско рость обмена невелика. Если же обмен по интерфейсу синхронны и время его выполнения жестко ограничено, можно столкн}ТЬ с трудностями из-за загруженности микроконтроллера. (начала рассмотрим основные особенности интерфейса парал-;,еЛЬНОГОтипа, Стандартная периферия Под стандартной периферией понимается большинство периферийных интерфейсных схем, предназначенных обычно для восьмибит-jjjjx микропроцессоров: РЮ - фирмы Intel, PIA - фирмы Motorola и т. д. За редкими исключениями эти микросхемы имеют следующие выводы (рис. 3.35, правая сторона): 4 восемь линий данных DO - D7; 4 линия считывания /записи R/W; # одна или несколько линий выбора (разрешения); f одна или несколько линий адресации внутренних регистров (в зависимости от сложности микросхемы). Рис. 3.35 Использование внешней стандартной периферии с PIC-микроконтроллером 16СХХ
На рис. 3.35 показана микросхема с линией выбора микросхемы и линией выбора регистра RS. Очевидно, что при использовании Нескольких микросхем необходимо организовывать несколько линий RS. Линии же CS могут быть объединены для экономии линий Параллельных портов. Как вы могли заметить, схемы на рис. 3.35 и 3.24 похожи. И это не Удивительно, поскольку использованный ЖКИ имеет контроллер со *Ндартным параллельным интерфейсом. Поэтому программа, представленная листингом 3.10, не вызовет ас затруднений: она функционирует точно так же, как программа Равления ЖКИ, и включает следующие этапы: ♦ обнуление линии R/W; ♦ установка соответствующего уровня линии RS в зависимости Of того, к какому регистру должен обратиться микроконтроллер. ♦ выдача данных на линии DO-D7; ♦ установка логической единицы на линию CS, чтобы разрешить прием сообщения; ♦ установка логического нуля на линию CS, чтобы защелкнуть дац. ные, принятые по линиям DO -D7. Единственное, что нужно принимать в расчет при создании схем с таким интерфейсом, это ограничения по скорости. Действитель но, при использовании обычного восьмибитного РГС-микроконтрод. лера, тактируемого частотой 4 МГц, невозможно обеспечить скорость передачи выше одного мегабайта в секунду. При тактовой частоте PIC-микроконтроллера в 20 МГц превысить этот предел довольно легко. И наоборот, в некоторых случаях для доступа к периферийной микросхеме может потребоваться временная задержка, чтобы замедлить обмен. Листинг 3.10 ; Управление периферией по стандартному параллельному интерфейсу. ; Программа предназначена для восьмибитного микроконтроллера ; и обеспечивает считывание и запись. . запись данных, содержащихся в переменной temp, в периферийную микросхему. RS = data = ra.2 ra.l ra.O rb Линия выбора регистра. 0 = запись, 1 = считывание. 1 = обмен разрешен, О = запрещен. Данные. ; Определение переменных величин, org 6 temp ds 1 ; Служебный регистр, org О ; Определение используемого PIC. device picl6c54,xt osc,wdt off,protect off reset start start mov mov mov mov ra,#0 rb,#0 !ra,#Oh !rb,#Oh Инициализация порта A. Инициализация порта В. Все линии порта А - выходы. Все линии порта В - выходы. ecrit clrb clrb mov setb nop clrb RS ; Выбор регистра. RW ; Если RW = О, производится операция записи, data,temp ; Выдача данных. CS ; Выбор микросхемы (исполнение операции). ; Задержка в одну операцию. CS ; Завершение записи. Считывание данных из периферийной микросхемы в переменной temp.
Взаимодействие с периферией по последовательному интерфейсу Часто для организации параллельного интерфейса у микроконтроллера не хватает линий портов. В таком случае лучше использовать последовательный интерфейс, который встречается, например, в микросхемах памяти, аналого-цифровых преобразователях и т.д. Некоторые из этих микросхем имеют специфичный интерфейс: используемый алгоритм обмена сигналами и их временные диаграммы свойственны только данной микросхеме. Конечно, во многих случаях микросхемы различных типов и различных фирм оказываются похожими, но их интерфейсы все же не стандартизованы. Другие микросхемы, напротив, используют последовательные стандартные шины, такие как, например, шина PC. Изначально эта И1ина была предложена фирмой Philips, а сейчас микросхемы, под-рживающие ее, выпускаются многими производителями. Она Применяется в устройствах, выполняющих самые разные функции: Контроллерах индикации, микросхемах энергонезависимой памя-Часов реального времени, телевизионных микросхемах и т.д. вным преимуществом данной шины является то, что для органи-Ции двухстороннего обмена в ней использ}тотся лишь две линии Ьязи. Таким образом, она занимает только две линии портов микро- *роллера (в некоторых случаях три).
|
© 2000 - 2024 ULTRASONEX-AMFODENT.RU.
Копирование материалов разрешено исключительно при условии цититирования. |