Глава 6. Arduino и набор функций Serial
91
ние может слушать одновременно — данные, которые прибывают для других пор-
тов, будут отвергнуты. Любые данные, которые уже получены, во время вызова
listen()
отбрасываются (если данный экземпляр уже не слушает).
Синтаксис функции
SoftwareSerial.listen()
:
SoftwareSerial.listen(port)
Параметра нет.
Возвращаемого значения нет.
6.2.3. Функция SoftwareSerial.isListening()
Функция
SoftwareSerial.isListening()
проверяет, выступает ли выбранный порт
в данный момент в качестве "слушателя" данных.
Синтаксис функции
SoftwareSerial.isListening()
:
SoftwareSerial.isListening()
Параметра нет.
Возвращаемое значение —
boolean
:
false
или
true
.
Примеры назначения порта слушателем и проверки его состояния представлены
в листинге 6.2.
Листинг 6.2
#include
// 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!");}
92
Часть III. Практическое применение Arduino
if (portTwo.isListening())
{Serial.println("Port Two is listening!");}
else
{Serial.println("Port Two is not listening!");}
}
6.2.4. Функция SoftwareSerial.overflow()
Функция
SoftwareSerial.overflow()
проверяет, произошло ли переполнение буфера
для данного экземпляра последовательного порта. Размер буфера 64 байта. Вызов
этой функции очищает флаг переполнения.
Синтаксис функции
SoftwareSerial.overflow()
:
SoftwareSerial.overflow()
Параметра нет.
Возвращаемое значение —
boolean
:
false
или
true
.
ГЛ А В А
7
Arduino
и знакосинтезирующие
жидкокристаллические индикаторы
Понятно, что использовать последовательный порт в качестве монитора вывода
данных не совсем удобно, а для автономных проектов и невозможно. Разумно для
этой цели, а также для вывода информации при отладке создаваемых проектов
применить жидкокристаллический индикатор. Жидкокристаллические индикаторы
(ЖКИ) различных фирм (POWERTIP, MICROTIPS, WINSTAR, Fordata, Anshan Yes,
Data Vision, Newtec Sunlike) уверенно завоевывают мировой рынок электроники
сегодняшнего дня и постепенно вытесняют старые добрые стрелочные приборы.
Современному разработчику аппаратуры для физических экспериментов и про-
мышленности необходимо знать основные принципы работы этих удобных и по-
лезных устройств. Все жидкокристаллические индикаторы, выпускаемые в различ-
ных странах и в России в том числе, с точки зрения программиста однотипны. Но
руководства, даваемые разработчиками, обычно написаны на английском языке,
скупы и трудны для понимания. Тем не менее следует учесть, что в устройствах,
выпускаемых в различных странах, наблюдается явная тенденция к стандартиза-
ции, и практически все выпускаемые ЖК-индикаторы ориентированы на примене-
ние контроллера HD44780.
Подберем недорогой, но в то же время надежный, символьный индикатор доста-
точно большого размера для вывода при отладке большого объема информации.
В проектах Arduino частенько используют недорогие индикаторы фирмы
WINSTAR Display Co., Ltd. — одного из крупнейших мировых разработчиков и
производителей высококачественных символьных и графических (в т. ч. цветных)
ЖК-индикаторов. Штаб-квартира компании находится на Тайване, а производст-
венные мощности, расположенные на площадях более 3000 кв. метров, обеспечи-
вают выпуск свыше миллиона различных индикаторов в год. Производство серти-
фицировано по системе ISO 9001.
Полагаю, индикатор WINSTAR 1604A-NGG-CT (рис. 7.1) — станет удачным выбо-
ром для намеченных нами задач. Количество выводимых символов 16×4 при цене
около 300 руб. — вполне приемлемый вариант.
94
Do'stlaringiz bilan baham: |