
В тему названию сайта, наши часики тоже будут космические!
Можно было бы написать две статьи, но у меня получилась одна, но состоящая из двух частей.
Часть1.
Пример использования популярного в народе символьного LCD-дисплея WH0802. Это восьмисимвольный двухстрочный жидкокристаллический дисплей со светодидной подсветкой.
Для его подключения был спаяна вот такая платка:

Ее схема:

Кроме того, сам дисплейчик был слегка доработан. На плате есть посадочные места, но не впаяны резисторы, с помощью которых можно подать питание на светодиоды подсветки. Мы поставили два резистора на 33 ома.

Дисплей имеет не сложный паралельный интерфейс, подробно описанный в документации (
LCD дисплей WH0802 (447.6 Кбайт)). Для сокращения количества подключаемых пинов мы использовали 4х-битный режим, хотя из-за этого несколько усложнился проект для платы Марсоход (
Проект космические часы (83.25 Кбайт)).
Хочу отметить несколько важных моментов при работе с дисплеем. Сразу после включения питания нужно немного подождать - в дисплее есть свой контроллер, и на его инициализацию уходит какое-то время (мы ждем 1 седунду). Далее в него нужно занести управляющую последовательность, включить 4-х битный режим, отображение второй строки и т.д. ( мы, кроме того, пишем слово "Marsohod" в верхней строке ). После этого можно выводить нужную нам информацию, не забывая корректировать указатель на дисплейную память.
Теперь, когда мы можем пользоваться дисплейчиком и хотим сделать из него часы, встает резонный вопрос, а где, собственно, брать время?
Часть2.
GPS-приемник.
Приобрел по случаю GPS модуль CONDOR67650-10. К счастью, к самому модулю, в магазине, где я его покупал, мне предложили взять и антенну, за что им огромное спасибо.

К сожалению, документация на него не очень подробная (
GPS приемник CONDOR (982.79 Кбайт)), но что куда подключать в принципе понятно.
Для экспериментов была спаяна платка:

Обратная сторона:

Модуль имеет последовательный интерфейс, и первое, что мы сделали - это подключили его к компьютеру (правда понадобился еще преобразователь уровней RS232). Сразу после включения модуль один раз в секунду передает примерно такие сообщения:
$GPRMC,115403.908,V,,,,,0.00,0.00,261110,13.6,W,N*06
$GPGGA,115404.908,,,,,0,0,,,M,,M,,*4C
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPGSV,1,1,00*79
$GPRMC,115404.908,V,,,,,0.00,0.00,261110,13.6,W,N*01
$GPGGA,115405.908,,,,,0,0,,,M,, $GPGGA,115417.908,,,,,0,0,,,M,,M,,*4E
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPGSV,1,1,00*79
$GPRMC,115417.908,V,,,,,0.00,0.00,261110,13.6,W,N*03
$GPGGA,115418.908,,,,,0,0,,,M,,M,,*41
$GPGSA,A,1,,,,,,,,,,,,,,,*1E
$GPGSV,1,1,00*79
$GPRMC,115418.908,V,,,,,0.00,0.00,261110,13.6,W,N*0C
Что они конкретно означают, можно почитать где-нибудь в википедии, а нас интересуют только первые цифры после названия сообщения - это время UTC в символьном виде ( московское UTC+3, в проекте мы это учли ).
Причем время есть с разных сообщениях, для нас достаточно какого нибудь одного, например, "$GPRMC".
Нам остается подключить приемник к плате Марсоход и из каждого сообщения "$GPRMC" выводить время на дисплей.
Сразу после включения GPS-приемник выдает какое-то свое время (2:59:47),
а правильное начинает выдавать только через некоторое время, когда настроится на спутник. Причем, в зависимости от условий приема, это время может быть достаточно большим.











Комментарии
вместо какого-нибудь двоеточия,напри мер,спасибо.
"$GPRMC,115417.908,А" вроде как станет вот так так сразу можно и время начинать выводить на экран