Мои проекты

Разработки и технологии на сайте МИГа Главная

Передача данных по интерфейсу RS-232

Не штатную передачу данных из прибора (микроконтроллера) в ЭВМ можно осуществить с помощью последовательного интерфейса RS-232, используя для этого всего два провода и напряжение 0 : +5 [B]
Соединение в ЭВМ - второй и седьмой контакт разъема последовательного порта.
Соединение в микроконтроллере - корпус и сигнальный порт на выход.
Расстояние передачи - не более 2 метров.
Более подробно о нумерации выводов последовательного интерфейса RS-232 в ЭВМ можно узнать на этой ссылке.

Скорость передачи данных по интерфейсу RS-232 выбирается в ЭВМ в настройках COM порта, и ограничена аппаратно.
К примеру, стандартные, скорости передачи данных по последовательному интерфейсу RS-232 110; 300; 1200; 2400; 4800; 9600; 19200; 38400; 57600; 115200 .[бит/сек.].

Мы выбираем 11 битный асинхронный протокол со скоростью 115200 бит в секунду.
1 - старт бит
8 - информационных бит (1байт)
2 - стоп бита.
Причем 8 информационных бит передаются по последовательному порту младшим битом вперед и в отрицательной логике, (низкий уровень сигнала соответствует логической 1, а высокий уровень сигнала соответствует логическому 0).

К примеру, "передадим" по последовательному порту RS-232 в ЭВМ сформированное в микроконтроллере число 10 . В двоичном коде, в микроконтроллере, оно представлено вот так:
0 0 0 0 1 0 1 0


На рисунке представлен сигнал, который передает число 10 из микроконтроллера в ЭВМ.

В первую очередь, чтобы сформировать сигнал для передачи из микроконтроллера в линию связи требуется вычислить время передачи 1 бита.

T = 1/115200 = 8.68*10^-6 [c] - время, в течении которого микроконтроллер должен выдавать 1 бит (длительность 1 бита).

Работа ЭВМ при принятии сигнала в буфер COM порта по интерфейсу RS - 232.
По приходу старт бита в ЭВМ включается счетчик, скорость счета которого так же 8,68*10^-6 секунд за одно переключение. ЭВМ синхронизируется по старт-биту и отсчитывает 9 тактов. Измерение уровня принимаемого сигнала происходит по счетчику и приходится на середину бита. Поэтому, небольшое несоответствие скоростей передачи данных из микроконтроллера в ЭВМ оказывается незначительным.

Игорь Мальцев.


Hosted by uCoz