(Borland C++Builder 6) [Статья 9] (TxRxV1)(Канал)(Протокол)(Связь)(Обмен)(C/C++)

| 21.02.2016

(Borland C++Builder 6) [Статья 9] (TxRxV1)(Канал)(Протокол)(Связь)(Обмен)(C/C++)

 

Описание :
Первое что нужно сказать что тут я наверно начну путать людей в терминах. Так как на самом деле дальше я буду описывать ПРОТОКОЛ ПЕРЕДАЧИ ДАННЫХ называя это всячески только не так как оно это заслуживает. Я назвал библиотеку DAH_KanalLib_V1.h, которая в себе содержит соглашения которые мы делаем для корректной передачи данных. Эти соглашения есть своеобразный язык со своими правилами, законами и особенностями, на котором общаются приемник(Rx) и передатчик(Tx). Мы взяли за основу устаревший сетевой протокол канального уровня (SLIP – Serial Line internet Protocol). Главная задача, решаемая выбранным нами протоколом (SLIP), это разделение потока данных в виде байт на пакеты. Для увеличения защищенности нашего канала связи вводим обязательным прибавку CRC8 с определенным полиномом в конце каждого пакета. Передавать данные мы будем в народную микросхему FTDI(RL232) , которая на выходе имеет интерфейс UART. Так же в этой библиотеке определены параметры передачи согласно протоколу UART.
Так что эта библиотека является конечной точкой сбора всех ранее созданных библиотек (в рамках проекта TxRxV1). Она позволяет строить приложения не задумываясь о корректной транспортировке данных, оперируя простыми функциями отправки и чтения пакетов с данными.

Статьи в помощь :
Подключение avr микроконтроллера к компьютеру(FT232RL)
AVR микроконтроллеры для начинающих (урок 12) UART/USART в avr
Подключение avr микроконтроллера к компьютеру
Уроки (C/C++) в Builder6

Это часть цикла взаимосвязанных статей TxRxV1:
1) (Borland C++Builder 6) [Статья 6] (TxRxV1)(SLIP)(ESC)(ESC)(Обмен)(Протокол)(C/C++)
2) (Borland C++Builder 6) [Статья 7] (TxRxV1)(FTDI)(ftd2xx)(FT_Write)(FT_Read)(Обмен)(C/C++)
3) (Borland C++Builder 6) [Статья 8] (TxRxV1)(CRC)(Контрольная сумма)(Обмен)(C/C++) 
4) (Borland C++Builder 6) [Статья 9] (TxRxV1)(Канал)(Протокол)(Связь)(Обмен)(C/C++) 
5) (Borland C++Builder 6) [Статья 10] (TxRxV1)(FILE)(Process)(Tread)(stdio)(C/C++)
6) (Borland C++Builder 6) [Статья 11] (TxRxV1)(Driver)(Поток)(Параллелизм)(stdio)(C/C++) 
7) (Borland C++Builder 6) [Статья 12] (TxRxV1)(Buf)(FIFO)(LIFO)(Pocket)(C/C++)
8) (Borland C++Builder 6) [Статья 13] (TxRxV1)(TestUse)(AVR)(uart)(Tx/Rx)(C/C++)
9) (Borland C++Builder 6) [Статья 14] (TxRxV1)(TestUse)(STM32)(uart)(Tx/Rx)(C/C++)

Ссылки на комплектующие:
Микроконтроллер: ATmega32 (ссылка)
Микроконтроллер: STM32
(ссылка)
Мини перемычка: (ссылка)
Микросхема преобразователь: FT232RL (ссылка)

Модуль из статьи:  (ссылка)
Кабель для подключения модуля: (ссылка)

Библиотека DAH_KanalLib_V1.H (ссылка на скачивание)

DAH_KanalLib_V1.h

DAH_KanalLib_V1.cpp

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *