15. UART на логике (передатчик и приёмник)

15. UART на логике (передатчик и приёмник)

Сообщение VVZ » 03 мар 2013, 17:57

Краткий порядок темы:

1. Схема и сборка приёмника.
2. Подключение схемы приёмника к ПК.
3. Сравнение исходной схемы с вариантом на микроконтроллере.
4. Простая мобильная платформа с микроконтроллером.
5. Простая мобильная платформа с исходной схемой приёмника.
6. Передатчик для приёмника.

==============

1. Схема и сборка приёмника.

Схема приёмника на 8 бит, без контроля чётности. Номиналы элементов RC генератора приведены из расчёта скорости приёма 2400 и делителя на 32. Делитель состоит из двух частей - делителя на 2 (триггер от мс D2) и делителя на 16 (двоичный счётчик от мс D3) :

Изображение

R1 – 220 Ом, R2 – 200 Ом, R3-R10 – 300 Ом, C1 – 0.015 мкФ,
D1 – К155ЛА3(7400); D2 - К555ТМ2 (74LS74), D3 – К555ИЕ19 (74LS393), D4 – 74НС595.

Если D1 - К561ЛА7, то R1, R2 – 10 кОм, C1 – 100 пФ (для скорости 9600 !!!)

Вариант сборки на макетке :

Изображение

С левой стороны на макетке установлен блютуз - приёмник, который связан с сотовым телефоном. С сотового телефона отправляются команды (байты), которые отображаются на индикаторе VD1.

Задание :

1. Замените номиналы элементов R1, R2, C1 для скорости приема 9600 при использовании мс К155ЛА3.
2. Замените мс К155ЛА3 на мс К561ЛА7, при этом установите новые номиналы сопротивлений R1, R2 и конденсатора C1 для уверенного приёма на скорости 9600.
3. Измените (оптимизируйте) схему приёмника так, чтобы в исходной схеме высвободить один логический элемент 2И-НЕ, при этом сохраняя работоспособность схемы и не используя любых дополнительных элементов..
VVZ
 
Сообщений: 589
Зарегистрирован: 28 апр 2011, 09:44

Re: 15. UART на логике

Сообщение VVZ » 12 мар 2013, 00:12

2. Подключение схемы приёмника к ПК.

На изображении подключение к COM порту компьютера :

Изображение

Для односторонней передачи информации (управления) добавляется один транзисторный ключ :

Изображение

R1-10 кОм, R2 - 15 кОм, R3 - 1 кОм (при работе с мс 155 серии) и 10 кОм (при работе с микроконтроллерами).
VVZ
 
Сообщений: 589
Зарегистрирован: 28 апр 2011, 09:44

Re: 15. UART на логике

Сообщение VVZ » 12 мар 2013, 00:14

3. Сравнение исходной схемы с вариантом на микроконтроллере.

Для сравнения ! На изображении аналогичное решение односторонней передачи (управления), но с использованием микроконтроллера Attiny2313 (к выходам порта B подключён индикатор, разъём для подключения программатора на макетке не установлен) :

Изображение

И необходимая для микроконтроллера программа :

Код: выделить все
//мк ATtiny2313
//F_CPU = 8000000

#include <avr/io.h>           
#include <avr/interrupt.h>

// обработка прерывания при приёме байта
// то что принято, записывается в регистр PORTB, а значит, отображается на индикаторе

SIGNAL(SIG_USART0_RECV)

     PORTB=UDR;                 
}

// начало программы, выполняемые действия после подачи питания

int main(void)
{
    PORTB = 0b00000000; // записываются 0 = светодиоды индикатора не светятся
    DDRB  = 0b11111111; // выводы на выход = для индикации
      
    UCSRB = 0b10010000; //разрешение прерывания на приём, разрешение приема
    UBRRL = 207;        //скорость 2400 для F_CPU=8Мг
                       
    sei();
    while (1)   
    {};
}

текст программы без комментариев :

Код: выделить все
#include <avr/io.h>           
#include <avr/interrupt.h>

SIGNAL(SIG_USART0_RECV)

     PORTB=UDR;                 
}

int main(void)
{
    PORTB = 0b00000000;
    DDRB  = 0b11111111;
      
    UCSRB = 0b10010000;
    UBRRL = 207;       
                       
    sei();
    while (1)   
    {};
}

При другой скорости передачи необходимо изменить скорость приёма (значение регистра UBRRL).
VVZ
 
Сообщений: 589
Зарегистрирован: 28 апр 2011, 09:44

Re: 15. UART на логике

Сообщение VVZ » 01 май 2013, 15:20

4. Простая мобильная платформа с микроконтроллером.

На изображении один из самых простых примеров использования мк ATtiny2313 с этой простой программой для управления через свой UART. На макетке установлены модуль Bluetooth, мк ATtiny2313 и мс L293. Перед шасси лежит сотовый телефон.

Изображение

Команда управления (это же и состояние входов для L293) выбирается и передаётся с сотового телефона. Через Bluetooth телефона и модуль Bluetooth на макетке команду (байт) принимает UART микроконтроллера и в соответствии со строкой программы “PORTB=UDR” команда определяет состояние выходов порта B микроконтроллера. Для управления используются четыре младших разряда порта B, выходы которых подключены напрямую к входам управления мс L293 (драйвер двигателей).

2-х моторное шасси с макеткой предоставила компания "ЛАРТ".
Работу выполнил Александр Расюк (5 класс, гимназия N 1569 -“Созвездие”, г. Москва).
Программа для сотового телефона (под Андроид) написана ИЦ НИЯУ МИФИ.

Текущая версия программы для смартфона под Андроид (<--- ссылка для скачивания) :

Изображение

Изображение
VVZ
 
Сообщений: 589
Зарегистрирован: 28 апр 2011, 09:44

Re: 15. UART на логике

Сообщение VVZ » 01 май 2013, 16:20

5. Простая мобильная платформа с исходной схемой приёмника.

На изображении машинка, управляемая также с сотового телефона, но без использования микроконтроллера.

Изображение

На макетке установлены : модуль Bluetooth, модуль с исходной схемой (UART на логике), индикатор для контроля команды и мс L293.
VVZ
 
Сообщений: 589
Зарегистрирован: 28 апр 2011, 09:44

Re: 15. UART на логике

Сообщение VVZ » 31 июл 2015, 04:01

6. Передатчик для приёмника.

Как и приёмник, здесь электрическая схема также выполнена на логических микросхемах. Но в этой схеме по последовательному каналу можно передавать не восемь, а только семь бит информации; восьмой бит в ней постоянно имеет значение логической единицы. Не везде требуется передавать все восемь бит, например, в простой мобильной платформе из сообщения выше используется только 4-е младших бита.

Изображение

Микросхемы D1 – К155ЛН1; D2 – К555ИЕ19; D3 – К155КП7; сопротивления R1 – 330 Ом, R2 – 100 Ом, R3-R5 - 1 кОм; конденсатор C1 – 6.8 нФ (для скорости 9600). В схеме приёмника для скорости 9600 C1 - 4.7 нФ.

Изображение

Сборка схемы передатчика выполнена в левой части нижней макетки. На верхней макетке находится сборка схемы приёмника из этой темы. Связь между передатчиком и приёмником односторонняя по каналу блютуз на скорости 9600 и выполнена с использованием блютуз-модулей HC-05 и HC-06. Для дополнительного контроля линии передачи в правой части нижней макетки установлен микроконтроллер Attiny2313 с модулем, настроенным на постоянный приём байта на скорости 9600.

Задание :

1. Нарисуйте временные диаграммы, поясняющие работу электрической схемы передатчика (формирование сигнала TX).
2. Разработайте и выполните ИК-связь между передатчиком и приёмником.


Дополнительная информация :

- Использование блютуз-модулей HC-05/06.
- Модуль к ATtiny2313 для вывода байта (как на фото).
- Модуль к ATtiny2313 для вывода 4-х значного числа.
- Модуль к регистру 74HC595 для вывода байта (как вариант для сборки приёмника).
VVZ
 
Сообщений: 589
Зарегистрирован: 28 апр 2011, 09:44


Вернуться в Первые шаги - Дополнительный материал

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4