Микроконтроллер ограничен объемом памяти и не может осуществлять дальнейшую обработку отправленных и полученных данных. Поэтому в приложениях, требующих дальнейшей обработки больших объемов данных, необходимо использовать мощные вычислительные возможности микрокомпьютеров. Таким образом, надёжная передача данных между микроконтроллером PIC и микрокомпьютером должна обеспечиваться с помощью схем связи. Микроконтроллер PIC16F876 не имеет встроенного последовательного порта, но в него интегрированы два различных типа модулей последовательной связи: универсальный модуль приёмопередатчика синхронного/асинхронного типа (USART) и ведущий синхронный последовательный порт (MSSP). Учитывая, что все последовательные порты ПК имеют девятиконтактную конструкцию RS-232, последовательный интерфейс ПК представляет собой интерфейс стандарта внешней шины, соответствующий спецификации EIA RS-232C. RS-232C использует отрицательную логику, то есть логическое “1”: от -5 В до -15 В; логическое “0”: от 5 В до 15 В. Уровень CMOS: логическое “1” — 4,99 В, логическое “0” — 0,01 В; логические “1” и “0” уровня TTL составляют 2,4 В и 0,4 В соответственно. Поэтому при использовании шины RS-232C для последовательной связи требуется внешняя схема для преобразования уровней. На стороне передачи используется драйвер для преобразования уровней TTL или CMOS в уровень RS-232C, а на стороне приёма — приёмник для преобразования уровня RS-232C в уровень TTL или CMOS [2].
Для преобразования уровней здесь выбран микросхема MAX232CPE компании MAXIM. MAX232CPE — это универсальная микросхема драйвера для приёма и передачи последовательных данных компании MAXIM. Она используется для реализации преобразования уровней в рамках протокола взаимного подтверждения, необходимого при обмене данными между микроконтроллером и ПК. Периферийная схема MAXIM232 очень проста. Требуется лишь подключить несколько внешних конденсаторов ёмкостью 0,1 мкФ. Сопротивления защиты между одноименными выводами сети имеют номинал 330 Ом. Поэтому мы в основном используем USART в режиме асинхронной передачи. Кроме того, последовательная связь должна быть реализована с использованием существующих коммуникационных модулей в сочетании с самостоятельно разработанным программным обеспечением для связи.

Основу асинхронного передатчика USAR составляют регистр сдвига передачи TSR и буфер передачи TXREG. TXREG напрямую подключен к внутренней шине данных и представляет собой регистр, доступный для чтения и записи на программном уровне. Пользовательская программа записывает отправляемые данные в TXREG, после чего аппаратное обеспечение автоматически управляет загрузкой данных из TIREG в TSR (если выбран 9-битный формат) и, совместно с битом TX9D из TXSTA, формирует 9-битные данные; затем автоматически добавляет стартовый бит 0 в начало и стоповый бит 1 в конец, формируя полную структуру кадра: наконец, под управлением сдвигового регистра TSR в такт тактовой частоты передачи данные отправляются побитно; тем самым завершается преобразование “параллельного сигнала в последовательный”.
TSR ожидает, пока не будет отправлен стоп-бит текущих передаваемых данных, прежде чем загрузить новые данные для передачи из TXREG. Как только TXREG передает данные в TSR, регистр TXREG освобождается, и одновременно бит флага прерывания передачи TXIF устанавливается в 1, посылая запрос на прерывание в ЦП. Хотя бит разрешения прерывания передачи TXIE контролирует, будет ли ЦП реагировать на прерывание, TXIF будет автоматически установлен в 1, пока регистр TXREG остаётся пустым. Кроме того, аппаратное обеспечение автоматически сбрасывает TXIF только после записи новых данных для передачи в регистр TXREG. 0. Таким образом, это также открывает для нас новые идеи и возможности по использованию программного обеспечения для определения рабочего состояния.
Основу асинхронного приемника USART составляют регистр сдвига приема RSR и регистр приема RCREG. Асинхронные последовательные данные, отправляемые собеседником, поступают на вывод RC7/RX/DT; под управлением тактового сигнала выборки, генерируемого генератором скорости передачи данных, схема детектирования и восстановления данных производит выборку формы входного сигнала. для восстановления исходного вида данных; затем под управлением тактового импульса сдвига, генерируемого генератором скорости передачи данных, восстановленные последовательные данные, а также стартовый и стоповый биты пошагово перемещаются в регистр RSR.
Пока происходит выборка стоп-бита, регистр сдвига приёма RSR загружает принятые 8-битные данные в регистр приёма RCREG (если RCREG пуст); а также загружает 9-й бит (если он есть) в бит RX9D; одновременно завершается преобразование “последовательный в параллельный”; устанавливается бит флага запроса прерывания приёма RCIF=1, чтобы уведомить ЦП о необходимости считывания данных из регистра приёма RCREG и 9-го бита RX9D. При разработке программного обеспечения данные 9-го бита анализируются (классифицируются) с учётом свойств данных (где 1 обозначает адресный код, а 0 — код данных) для выполнения соответствующей обработки.
Среди них RCREG представляет собой регистр с двойным буфером, имеющий двухуровневую структуру очереди типа «первым пришел — первым обслужен» (FIFO). Аналогичным образом, бит RX9D также имеет структуру второго уровня. Таким образом, это позволяет регистру сдвига принимать 2 последовательных кадра данных и загружать их в очередь для буферизации, после чего третий кадр данных может быть сдвинут в регистр RSR.
Ключевые слова: беспроводная передача данных


