Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Протокол передачи данных NEC



Впервые этот протокол разработала компания NEC, для использования в своих ИК-пультах. Данный протокол основан на кодировании нулей и единиц длиной паузы.

Начало каждого бита определяется импульсом длиной 560 мкс (одновременно этот импульс сигнализирует о конце предыдущего бита). Длина следующей за импульсом паузы определяет логическое значение бита.

Для определения конца последнего бита, после него также отправляется импульс длиной 560 мкс.

Рис.  3.10 Протокол NEC

 

Команды передаются пакетами. Каждый пакет начинается со стартовой последовательности - импульса длиной 9 мс и паузы длиной 4, 5 мс. Пакет имеет размер 4 байта (32 бита), содержащие адрес устройства и команду. Каждый байт пакета передаётся младшим битом вперёд. Существуют две версии протокола NEC: стандартная и расширенная. В стандартной версии адрес и команда имеют длину 8 бит. Пакет при этом состоит из адреса устройства, инвертированного адреса, команды, инвертированной команды, и имеет следующий вид:

Рис. 3.11  Пакет протокола NEC

 

В стандартной версии протокола пакет всегда имеет одинаковую длительность, поскольку и адрес и команда передаются как в прямом, так и в инверсном виде.

В расширенной версии используется 16-ти битный адрес и 8-ми битная команда. Пакет при этом состоит из младшего байта адреса, старшего байта адреса, команды, инвертированной команды, и имеет следующий вид:

Рис. 3.12 Пакет расширенной версии протокола NEC

 

В расширенной версии протокола длительность пакета различна и зависит от кода адреса.

При удержании кнопки посылка повторно не передаётся. Вместо этого каждые 110 мс передаётся специальный код повтора:

  Рис. 3.13 Код повтора

 

Для передачи высокого уровня сигнала пульт посылает пачку импульсов на частоте несущей (обычно со скважностью 3 или 4), длительность пачки соответствует времени, в течении которого должен передаваться высокий уровень. При передаче низкого уровня сигнала пульт ничего не передаёт. В качестве несущей обычно используется частота 38 кГц.

При приёме сигнала от пульта необходимо учитывать, что фотоприёмники зачастую имеют выходы подтянутые к питанию и при отсутствии сигнала на входе (когда пульт ничего не передаёт) у них на выходе висит высокий уровень, а при наличии импульсов на частоте несущей (когда пульт передаёт высокий уровень) у них на выходе устанавливается низкий уровень. В этом случае принятый сигнал получается инвертированным.

 

Разработка структурной схемы

Микропроцессорная система состоит из дистанционного ИК-пульта, ИК-приемника, микроконтроллера и usb-uart преобразователя. Сигнал с пульта ДУ передается на ИК-приемник, откуда поступает на микроконтроллер. Затем микроконтроллер обрабатывает сигнал и передает на верхний уровень (ПК) через преобразователь usb-uart. Структурная схема системы представлена на рисунке 3.14.

 

                 
Пульт ДУ
     
       


Рис. 3.14   Структурная схема системы

Микропроцессорная система состоит из следующих блоков:

- пульт дистанционного управления (ПДУ);

- инфракрасного приемника (ИК-приемник);

-микроконтроллера (МК);

- преобразователя usb-uart (USB-UART);

Разработка принципиальной схемы

Принципиальная схема системы представлена на рисунке 3.15.

Центральным блоком системы является микроконтроллер DD2 ATmega 328P. К выводам XTAL1 и XTAL2 микроконтроллера DD2 подключается кварцевый резонатор Q1 на 12 МГц. Для более стабильного запуска выводы кварцевого резонатора соединены с общим проводом через конденсаторы С6 и С7 емкостью 22 пФ. Питание на схему подается через USB. Линия 2 порта PD используется для получения информации с ИК-приемника, 0 и 1 линии используются для передачи (и получения) информации на usb-uart преобразователь FT232R.

    Рис. 3.15 Принципиальная схема

Разработка алгоритма работы

Программа хранится в ПЗУ МК. Алгоритм программы представлен на рисунке.

В начале основной программы осуществляется инициализация компонентов: переменных, портов ввода/вывода микроконтроллера. Далее происходит запуск основного тела программы. При получении данных с ИК - приемника МК сравнивает полученное значение с заданными по умолчанию значениями кнопок на пульте для завершения, запуска показа слайдов, а также для переключения следующего или предыдущего слайда. В зависимости от нажатой кнопки передается на верхний уровень значение 0, 1, 2 или 3 соответственно. Остановка производится по отключению питания.

 

 

 

 


нет

 

                                  да

 

  нет

 

 


                                 да             

 

Рис.  3.16 Блок-схема алгоритма работы основной подпрограммы

 

А лгоритм работы программы для ПК с ОС Windows 7

Программа хранится в ПЗУ ПК. Алгоритм программы представлен на рисунке 3.17. В начале основной программы осуществляется инициализация компонентов: COM порта ПК. Далее происходит запуск основного тела программы. При получении данных с COM порта сравнивает полученное значение с заданными по умолчанию значениями для выполнения действий: завершения, запуска показа слайдов, а также для переключения следующего или предыдущего слайда. В зависимости от результата сравнения выполнятся запрос к APIMS PowerPoint.


                                                                                               нет


                                                                          да


                                   нет


                                                                          да

Рис. 3.17

Листинг программы для МК

#include < IRremote.h>

 

int RECV_PIN = 7;

intold_result;

intnew_result;

 

IRrecvirrecv(RECV_PIN);

decode_results results;

 

void setup()

{

Serial.begin(9600);

irrecv.enableIRIn();  

}

 

void loop() {

if (irrecv.decode(& results)) {       

new_result = results.value;

if(new_result! = old_result){

//завершаемпоказслайдов

if(results.value == 16769055){

Serial.println('0');

}     

//запускаем показ слайдов

if(results.value == 16754775){

Serial.println('1');

}

//следующийслайд

if(results.value == 16712445){

Serial.println('2');

}

//предыдущийслайд

if(results.value == 16720605){

Serial.println('3');

}

 

}

old_result = new_result;

irrecv.resume();

}

}

=

Листинг  программы  для  ПК

using System;

usingSystem.Collections.Generic;

usingSystem.Linq;

usingSystem.Text;

usingSystem.IO.Ports;

usingMicrosoft.Office.Core;

usingMicrosoft.Office.Interop.PowerPoint;

 

namespace ConsoleApplication1

{

class Program

{

 

static void Main(string[] args)

   {

Microsoft.Office.Interop.PowerPoint.ApplicationoPPT = new Microsoft.Office.Interop.PowerPoint.Application();

oPPT.Visible = Microsoft.Office.Core.MsoTriState.msoTrue;

Microsoft.Office.Interop.PowerPoint.Presentation present = oPPT.ActivePresentation;

 

SerialPort port = new SerialPort(" COM29", 9600);

port.Open();

stringreadLine;

int data;

while(true)

       {

readLine = port.ReadLine();

Console.WriteLine(readLine);

data = Convert.ToInt32(readLine);

           //data = port.ReadLine();

           //Console.WriteLine(data);

//запускаемпоказслайдов

if(data == 1)

           {

present.SlideShowSettings.Run();

}

 

           //завершаем показ слайдов

elseif(data == 0)

           {

present.SlideShowWindow.View.Exit();

           }

 

           //следующий слайд

else if(data == 2)

           {

present.SlideShowWindow.View.Next();

           }

 

           //предыдущийслайд

else if (data == 3)

           {

present.SlideShowWindow.View.Previous();

           }

 

       }

port.Close();

}

}

}

 

Вопросы для самопроверки

  1. Главное преимущество микропроцессорной системы

1) высокое быстродействие,

2) малое энергопотребление,

3) низкая стоимость,

4) высокая технологичность,

5) высокая надежность.


Поделиться:



Последнее изменение этой страницы: 2020-02-17; Просмотров: 118; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.048 с.)
Главная | Случайная страница | Обратная связь