Тестирование 2 (проводится на компьютерах)




Оценочные средства для текущего и итогового контроля знаний студента

Оценочные средства для текущего контроля

Контрольная работа

Контрольная работа содержит 3 задания для каждого студента.

Первое задание предусматривает знание теоретического материала учебника.

Второе задание предназначено для контроля самостоятельного изучения материала Учебного пособия «Проекты с использованием контроллера Arduino» - основ работы с RS-232 и Ethernet.

Третье задание предназначено для оценки умения самостоятельно реализовать связь с компьютером при помощи последовательных интерфейсов

 

Пример Задания 1 (контроль самостоятельного изучения материала)

1. Какие значения в бит/c (бод) можно использовать для обмена данными с компьютером?

2. Для чего предназначена функция Serial.begin()?

3. Для чего предназначены порты RX и TX?

4. Последовательный порт UART плат Arduino.

5. Решение проблемы несовместимости USB и COM порта в с платах Arduino.

6. Для чего предназначена функция Serial.end()?

7. Для чего предназначена функция Serial.available ()?

8. При использовании нескольких программных последовательных портов сколько портов может принимать данные одновременно?

9. Сколько можно иметь программных последовательных портов со скоростью до 115 200 битов?

10. Какие функции включает библиотека SoftwareSerial?

11. Назначение функции SoftwareSerial()?

12. Назначение функции SoftwareSerial.overflow?

13. Что представляет собой mac-адрес (Media Access Control) устройства?

14. Что представляет собой IP-адрес устройства?

15. Что представляет собой gateway — IP-адрес сетевого шлюза?

16. Что представляет собой subnet — маска подсети сети?

17. Назначение и возможности микросхемы микросхемы W5100.

18.Обоснуйте, как можно использовать Ethernet shield в связке с Arduino в ка-

честве веб-сервера, при обращении к которому будет выдаваться страница с данными датчика.

19. Приведите пример функции, которая отправляет данные всем клиентам, подключенным к серверу?

20. Назначение класса Client.

21. Приведите пример функции, которая определяет, подключен клиент или нет?

22. Поясните оператор client.println(data,BASE)?

23. Стеки TCP и UDP в IP-сети.

 

Пример Задания 2 (Вопросы по самостоятельному изучению учебника) Задания для самостоятельного решения.

1. Примеры использования функций Serial.available() и Serial.read().

2. Измените код примера так, чтобы изменилась скорость передачи в бит/c (бод).

1. Напишите команду, соответствующую комментарию// software serial: TX = digital pin 10, RX = digital pin 11.

2. Напишите код, запускающий два последовательных порта.

3. Напишите код, демонстрирующий назначение функции SoftwareSerial.overflow.

1. Осуществите связь с W5100 и картой SD посредством шины SPI (через

разъем ICSP header).

1. Электрическая схема устройства на основе цифрового датчика атмосферного давления BMP085, подключенного к Arduino.

2. Электрическая схема устройства на основе датчика влажности DH11, подключенного к Arduino.

3. Виджет для Android, чтобы при наличии соединения с Интернетом

видеть показания датчиков на телефоне, где бы мы ни находились.

 

Пример Задания 3

1. Показать, функция Serial.begin() инициирует последовательное соединение и задает скорость передачи данных в бит/c (бод).

2. Примеры использования функций Serial.available() и Serial.read()

3. Микросхемы для сигналов, в соответствии с требованиями RS-232 (например MAX233).

1. Передача данных через последовательный порт как текст ASCII вместе со следующим за ним символом переноса строки (символ ASCII 13

или '\r') и символом новой строки (ASCII 10 или '\n').

2. Функция Serial.peek().

3. Назначение библиотеки SoftwareSerial.

1. Микросхема W5100.

2. Аппаратный адрес адаптера (mac-адрес) устройства.

3. Пример использования функции server.available().

 

 

Тестирование 1 (проводится на компьютерах)

Пояснить листинг программы.

Листинг 1.

 

int in=0; // переменная для хранения полученного байта

void setup() {

Serial.begin(9600); // устанавливаем последовательное соединение

}

void loop()

{

if (Serial.available() > 0) // если есть доступные данные

{

// считываем байт

in = Serial.read();

// отсылаем то, что получили

Serial.println(in,DEC);

}

}

Листинг 2.

 

#include <SoftwareSerial.h>

// software serial: TX = digital pin 10, RX = digital pin 11

SoftwareSerial portOne(10, 11);

// software serial: TX = digital pin 8, RX = digital pin 9

SoftwareSerial portTwo(8, 9);

void setup()

{

Serial.begin(9600);

// Start both software serial ports

portOne.begin(9600);

portTwo.begin(9600);

}

void loop()

{

portOne.listen();

if (portOne.isListening())

{Serial.println("Port One is listening!");}

else

{Serial.println("Port One is not listening!");

if (portTwo.isListening())

{Serial.println("Port Two is listening!");}

else

{Serial.println("Port Two is not listening!");}

}

 

Листинг 3.

#include <Ethernet.h>

#include <SPI.h>

// mac-адрес Ethernet shield:

byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };

// IP-адрес, назначаемый Ethernet shield:

byte ip[] = { 192, 168, 0, 177 };

// адрес шлюза:

byte gateway[] = { 192, 168, 0, 1 };

// маска:

byte subnet[] = { 255, 255, 0, 0 };

// порт для сервера

EthernetServer server = EthernetServer(23);

void setup()

{

// инициализация Ethernet shield

Ethernet.begin(mac, ip, gateway, subnet);

// запуск сервера

server.begin();

}

void loop()

{

// получение ссылки на подключенного клиента

EthernetClient client = server.available();

// пока подключение активно

if (client == true) {

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

// и отправляем их обратно клиенту:

server.write(client.read());

}

}

Листинг 4.

 

// мас-адрес Ethernet shield

byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };

// ip-адрес

IPAddress ip(192, 168, 1, 177);

// порт

unsigned int localPort = 8888;

EthernetUDP Udp;

void setup() {

// запустить UDP-соединение

Ethernet.begin(mac,ip);

Udp.begin(localPort);

Serial.begin(9600);

}

void loop() {

// получить размер данных

int packetSize = Udp.parsePacket();

if(packetSize)

{

Serial.print("size=");

Serial.println(packetSize);

}

delay(10);

}

 

Тестирование 2 (проводится на компьютерах)

1. Микросхемы для сигналов, в соответствии с требованиями RS-232 (например MAX233).

2. Инициализация UART (разрешение приёма, передачи и прерывания в случае передачи символа данных, установка скорости обмена (например 9600 бод).

3. Обмен данными по шине CAN. Использование файла canbus.c с библиотечными функциями CAN.

4. Обмен данными по интерфейсу I2C на примере двух микроконтроллеров PIC (линиям SDA и SDL соответствуют выводы 3 и 4 порта С.

5. Пример реализации RS-232, имеющего гальваническую связь между микроконтроллером и ПК.

6. Пример гальванически развязанных RS-232.

7. Схема гальванически развязанного интерфейса RS-232, используемого для последовательного программирования микроконтроллера AT89S8252 и запуска загруженной в него программы. Микроконтроллер AT89С2051 сопряжен с ПК по гальванически развязанному интерфейсу RS-232, обмен по которому идёт со скоростью 115200 бод.

8. Программирование микроконтроллера AT89S8252 SPI при помощи микроконтроллера AT89С2051.

9. Инициализация RS-232 без использования таймеров.

10. Инициализация RS-232 с использованием таймеров.

11. Зависимость скорости обмена информацией по RS-232 микроконтроллера с ПК от типа системы сбора данных (автономная или компьютерная).

12. Классификация протоколов (алгоритмов) обмена информацией по интерфейсу RS-232.

13. Аппаратные средства протокола обмена.

14. Программное обеспечение протокола обмена.

15. Использование широтно-импульсной модуляции.

16. Вывести по интерфейсу RS-232 из ПК в микроконтроллер строку символов определённой длины, затем принять из микроконтроллера строку символов такой же длины. Вывести строки символов на экран монитора для визуального сравнения. Скорость обмена 115200 бод. (Пример RdAt2051.bas).

17. Принять из ПК по RS-232 строку определённой длины, сохранить, затем передать в ПК. Скорость обмена 115200 бод.

18. Программа на ассемблере (prgrsis.asm) процессора х86, осуществляющая высокоскоростной синхронный вывод строки байт ПК в микроконтроллер по интерфейсу RS-232 и использующаяся как подпрограмма в программе RdAt2051.bas.

19. Программа на языке С для микроконтроллера MSC1210Y5 inrs115ac.c, реализующая задание п.17.

20. Особенности проектирования систем сбора данных на базе микроконтроллеров, имеющих связь с ПК по интерфейсу RS-232. Выбор и подключение кварцевых резонаторов, настройка их частоты.

21. Свойства и параметры преобразователей уровней RS-232.

22. Управление состояниями и чтение состояний линий RS-232.

23. Контакты разъёмов RS-232 в компьютере.

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-04-14 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: